Sha256: 1881b3ec6a6ce894e7377665d09e3d873b907d537e2bd306f57ada3d172a5ecd
Contents?: true
Size: 1.65 KB
Versions: 1
Compression:
Stored size: 1.65 KB
Contents
module HydraPbcore::Templates extend ActiveSupport::Concern included do class_eval do define_template :publisher do |xml, publisher, role| xml.pbcorePublisher { xml.publisher(publisher) xml.publisherRole(role, :source=>"PBCore publisherRole") } end define_template :contributor do |xml, author, role| xml.pbcoreContributor { xml.contributor(author) xml.contributorRole(role, :source=>"MARC relator terms") } end define_template :previous do |xml, file| xml.instantiationRelation { xml.instantiationRelationType(:annotation=>"One of a multi-part instantiation") { xml.text "Follows in Sequence" } xml.instantiationRelationIdentifier(file, :source=>"Rock and Roll Hall of Fame and Museum") } end define_template :next do |xml, file| xml.instantiationRelation { xml.instantiationRelationType(:annotation=>"One of a multi-part instantiation") { xml.text "Precedes in Sequence" } xml.instantiationRelationIdentifier(file, :source=>"Rock and Roll Hall of Fame and Museum") } end end end def insert_contributor(author=nil, role=nil) add_child_node(ng_xml.root, :contributor, author, role) end def insert_publisher(publisher=nil, role=nil) add_child_node(ng_xml.root, :publisher, publisher, role) end def insert_next(file) add_child_node(find_by_terms(:pbcoreInstantiation).first, :next, file) end def insert_previous(file) add_child_node(find_by_terms(:pbcoreInstantiation).first, :previous, file) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hydra-pbcore-1.0.0 | lib/hydra-pbcore/templates.rb |