Class: Bplmodels::OAIMetadata

Inherits:
ActiveFedora::OmDatastream
  • Object
show all
Includes:
OM::XML::Document
Defined in:
app/models/bplmodels/oai_metadata.rb

Constant Summary collapse

OAI_NS =
'http://www.bpl.org/repository/xml/ns/oai'
OAI_SCHEMA =
'http://www.bpl.org/repository/xml/xsd/oai.xsd'
OAI_PARAMS =
{
    "version"            => "0.0.1",
    "xmlns:xlink"        => "http://www.w3.org/1999/xlink",
    "xmlns:xsi"          => "http://www.w3.org/2001/XMLSchema-instance",
    "xmlns"              => OAI_NS,
    "xsi:schemaLocation" => "#{OAI_NS} #{OAI_SCHEMA}",
}

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.xml_templateObject



44
45
46
47
48
49
50
51
52
# File 'app/models/bplmodels/oai_metadata.rb', line 44

def self.xml_template
  Nokogiri::XML::Builder.new do |xml|
    xml.(OAI_PARAMS) {



    }
  end.doc
end

Instance Method Details

#insert_original_record(content) ⇒ Object



67
68
69
# File 'app/models/bplmodels/oai_metadata.rb', line 67

def insert_original_record(content)
    add_child_node(ng_xml.root, :original_record, content)
end

#prefix(path = nil) ⇒ Object

Required for Active Fedora 9



55
56
57
# File 'app/models/bplmodels/oai_metadata.rb', line 55

def prefix(path=nil)
  return ''
end

#remove_original_record(index) ⇒ Object



71
72
73
# File 'app/models/bplmodels/oai_metadata.rb', line 71

def remove_original_record(index)
  self.find_by_terms(:original_record).slice(index.to_i).remove
end