eadcodec 0.0.4 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. data/Rakefile +12 -5
  2. data/lib/eadcodec.rb +76 -1
  3. data/lib/elements/accessrestrict.rb +12 -0
  4. data/lib/elements/accruals.rb +11 -0
  5. data/lib/elements/acqinfo.rb +12 -0
  6. data/lib/elements/altformavail.rb +12 -0
  7. data/lib/elements/appraisal.rb +11 -0
  8. data/lib/elements/archdesc.rb +32 -0
  9. data/lib/elements/arrangement.rb +11 -0
  10. data/lib/elements/bibliography.rb +12 -0
  11. data/lib/elements/bioghist.rb +11 -0
  12. data/lib/elements/c.rb +65 -0
  13. data/lib/elements/chronitem.rb +12 -0
  14. data/lib/elements/chronlist.rb +12 -0
  15. data/lib/elements/container.rb +13 -0
  16. data/lib/elements/controlaccess.rb +10 -0
  17. data/lib/elements/creation.rb +4 -0
  18. data/lib/elements/custodhist.rb +11 -0
  19. data/lib/elements/date.rb +14 -0
  20. data/lib/elements/defitem.rb +10 -0
  21. data/lib/elements/description.rb +10 -0
  22. data/lib/elements/dimensions.rb +13 -0
  23. data/lib/elements/dsc.rb +21 -0
  24. data/lib/elements/ead.rb +39 -0
  25. data/lib/elements/eadheader.rb +28 -0
  26. data/lib/elements/event.rb +9 -0
  27. data/lib/elements/extent.rb +13 -0
  28. data/lib/elements/filedesc.rb +13 -0
  29. data/lib/elements/fileplan.rb +10 -0
  30. data/lib/elements/geogname.rb +16 -0
  31. data/lib/elements/head.rb +11 -0
  32. data/lib/elements/id.rb +12 -0
  33. data/lib/elements/item.rb +9 -0
  34. data/lib/elements/label.rb +9 -0
  35. data/lib/elements/langmaterial.rb +12 -0
  36. data/lib/elements/language.rb +20 -0
  37. data/lib/elements/list.rb +13 -0
  38. data/lib/elements/materialspec.rb +13 -0
  39. data/lib/elements/name.rb +15 -0
  40. data/lib/elements/note.rb +15 -0
  41. data/lib/elements/odd.rb +13 -0
  42. data/lib/elements/originalsloc.rb +12 -0
  43. data/lib/elements/origination.rb +12 -0
  44. data/lib/elements/otherfindaid.rb +11 -0
  45. data/lib/elements/p.rb +10 -0
  46. data/lib/elements/physdesc.rb +14 -0
  47. data/lib/elements/physfacet.rb +16 -0
  48. data/lib/elements/physloc.rb +14 -0
  49. data/lib/elements/phystech.rb +11 -0
  50. data/lib/elements/processinfo.rb +11 -0
  51. data/lib/elements/profiledesc.rb +10 -0
  52. data/lib/elements/relatedmaterial.rb +12 -0
  53. data/lib/elements/repository.rb +12 -0
  54. data/lib/elements/scopecontent.rb +12 -0
  55. data/lib/elements/subtitle.rb +4 -0
  56. data/lib/elements/titlestmt.rb +12 -0
  57. data/lib/elements/unitdate.rb +7 -0
  58. data/lib/elements/unitid.rb +16 -0
  59. data/lib/elements/unittitle.rb +13 -0
  60. data/lib/elements/userestrict.rb +12 -0
  61. data/test/{TestEADDescription.rb → description_test.rb} +27 -26
  62. data/test/{TestEADDocument.rb → document_test.rb} +2 -2
  63. data/test/level_test.rb +75 -0
  64. data/test/note_test.rb +36 -0
  65. data/test/partial_export_test.rb +63 -0
  66. data/test/phystech_test.rb +45 -0
  67. data/test/scopecontent_test.rb +41 -0
  68. data/test/{TestEADSubordinates.rb → subordinates_test.rb} +7 -8
  69. data/test/{TestEADSubtitle.rb → subtitle_test.rb} +5 -6
  70. data/test/test_helper.rb +45 -0
  71. data/test/xmlsoparser_test.rb +119 -0
  72. metadata +72 -50
  73. data/lib/EAD.rb +0 -229
  74. data/lib/EADAcqInfo.rb +0 -13
  75. data/lib/EADAltFormAvail.rb +0 -13
  76. data/lib/EADAppraisal.rb +0 -12
  77. data/lib/EADArrangement.rb +0 -12
  78. data/lib/EADBiogHist.rb +0 -10
  79. data/lib/EADChronList.rb +0 -27
  80. data/lib/EADContainer.rb +0 -15
  81. data/lib/EADControlAccess.rb +0 -12
  82. data/lib/EADCustodHist.rb +0 -12
  83. data/lib/EADDate.rb +0 -24
  84. data/lib/EADDescription.rb +0 -22
  85. data/lib/EADDimensions.rb +0 -15
  86. data/lib/EADDocument.rb +0 -106
  87. data/lib/EADEvent.rb +0 -11
  88. data/lib/EADExtent.rb +0 -15
  89. data/lib/EADFilePlan.rb +0 -12
  90. data/lib/EADGeogName.rb +0 -15
  91. data/lib/EADHeader.rb +0 -70
  92. data/lib/EADLabel.rb +0 -11
  93. data/lib/EADLang.rb +0 -42
  94. data/lib/EADLevel.rb +0 -73
  95. data/lib/EADList.rb +0 -36
  96. data/lib/EADMaterialSpec.rb +0 -14
  97. data/lib/EADName.rb +0 -17
  98. data/lib/EADNote.rb +0 -24
  99. data/lib/EADOtherFindAid.rb +0 -12
  100. data/lib/EADPhysFacet.rb +0 -17
  101. data/lib/EADPhysTech.rb +0 -16
  102. data/lib/EADProcessInfo.rb +0 -13
  103. data/lib/EADProfileDesc.rb +0 -17
  104. data/lib/EADRelatedMaterial.rb +0 -21
  105. data/lib/EADRepository.rb +0 -13
  106. data/lib/EADScopeContent.rb +0 -21
  107. data/lib/EADSubordinates.rb +0 -29
  108. data/lib/EADSubtitle.rb +0 -8
  109. data/test/TestEAD.rb +0 -50
  110. data/test/TestEADLevel.rb +0 -76
  111. data/test/TestEADNote.rb +0 -36
  112. data/test/TestEADPhysTech.rb +0 -44
  113. data/test/TestEADScopeContent.rb +0 -43
  114. data/test/TestPartialExport.rb +0 -61
  115. data/test/TestXMLStreamObjectParser.rb +0 -126
@@ -0,0 +1,41 @@
1
+ require File.dirname(__FILE__) + '/test_helper'
2
+
3
+ class TestEADScopeContent < Test::Unit::TestCase
4
+ def initialize(*args)
5
+ super(*args)
6
+
7
+ @test_file = "test_ead_scopecontent.xml"
8
+ @head = "Test Head"
9
+ @p = "Test p"
10
+ end
11
+
12
+ def test_attrs
13
+ dsc = EADCodec::Subordinates.new
14
+ @ead.archdesc << dsc
15
+
16
+ c01 = EADCodec::Level.new
17
+ dsc << c01
18
+
19
+ sc = EADCodec::ScopeContent.new
20
+ sc << EADCodec::Head.new(@head)
21
+ sc << EADCodec::P.new(@p)
22
+ sc << EADCodec::P.new(@p)
23
+ c01 << sc
24
+
25
+ export
26
+ element_exists("/ead/archdesc/dsc/c/scopecontent", "Check that the scopecontent was added")
27
+ compare_xpath(@head, "/ead/archdesc/dsc/c/scopecontent/head")
28
+ compare_xpath(@p, "/ead/archdesc/dsc/c/scopecontent/p")
29
+ end
30
+
31
+
32
+ def test_import
33
+ import
34
+ assert_equal(1, @ead.archdesc[:dsc].find_all_named(:c).size)
35
+ sc = @ead.archdesc[:dsc][:c][:scopecontent]
36
+ assert_equal(@head, sc[:head].value)
37
+ ps = sc.find_all_named(:p)
38
+ assert_equal(@p, ps[0].value)
39
+ assert_equal(@p, ps[1].value)
40
+ end
41
+ end
@@ -1,7 +1,6 @@
1
- require "TestEAD"
2
- require "EADSubordinates"
1
+ require File.dirname(__FILE__) + '/test_helper'
3
2
 
4
- class TestEADSubordinates < TestEAD
3
+ class TestEADSubordinates < Test::Unit::TestCase
5
4
 
6
5
  def initialize(*args)
7
6
  super(*args)
@@ -13,11 +12,11 @@ class TestEADSubordinates < TestEAD
13
12
  end
14
13
 
15
14
  def test_attrs
16
- dsc = EAD::EADSubordinates.new
15
+ dsc = EADCodec::Subordinates.new
17
16
  dsc.type = @type
18
- dsc.head = @head
17
+ dsc << EADCodec::Head.new(@head)
19
18
 
20
- @ead.add_descelem(dsc)
19
+ @ead.archdesc << dsc
21
20
  export
22
21
  compare_xpath(@type, "/ead/archdesc/dsc/@type")
23
22
  compare_xpath(@head, "/ead/archdesc/dsc/head")
@@ -25,9 +24,9 @@ class TestEADSubordinates < TestEAD
25
24
 
26
25
  def test_import
27
26
  import
28
- dsc = @ead.descelems[0]
27
+ dsc = @ead.archdesc[:dsc]
29
28
 
30
29
  assert_equal(@type, dsc.type)
31
- assert_equal(@head, dsc.head.value)
30
+ assert_equal(@head, dsc[:head].value)
32
31
  end
33
32
  end
@@ -1,7 +1,6 @@
1
- require "TestEAD"
2
- require "EADSubtitle"
1
+ require File.dirname(__FILE__) + '/test_helper'
3
2
 
4
- class TestEADSubtitle < TestEAD
3
+ class TestEADSubtitle < Test::Unit::TestCase
5
4
  def setup
6
5
  super
7
6
  @test_file = "test_ead_subtitle.xml"
@@ -12,11 +11,11 @@ class TestEADSubtitle < TestEAD
12
11
  def test_base_export
13
12
  titlestmt = @ead.eadheader.filedesc.titlestmt
14
13
 
15
- st = titlestmt.subtitle = EAD::EADSubtitle.new
14
+ st = titlestmt.subtitle = EADCodec::Subtitle.new
16
15
  st.subelements << @text
17
- st.subelements << EAD::EADAbbr.new(@abbr)
16
+ st.subelements << EADCodec::Abbr.new(@abbr)
18
17
  st.subelements << @text
19
- st.subelements << EAD::EADAbbr.new(@abbr)
18
+ st.subelements << EADCodec::Abbr.new(@abbr)
20
19
 
21
20
  export
22
21
  # The base document has an empty archdesc and is thus not valid EAD
@@ -0,0 +1,45 @@
1
+ $-w = true
2
+ require File.dirname(__FILE__) + '/../lib/eadcodec'
3
+ require 'test/unit'
4
+ require 'tmpdir'
5
+
6
+ class Test::Unit::TestCase
7
+ alias_method :old_setup, :setup
8
+ def setup
9
+ @ead = EADCodec::Document.new("1", "Teste")
10
+ end
11
+
12
+ def filepath(name=nil)
13
+ name = @test_file if not name
14
+ File.join(Dir::tmpdir, name)
15
+ end
16
+
17
+ def export(name=nil)
18
+ @ead.export filepath(name)
19
+ end
20
+
21
+ def import
22
+ @ead = EADCodec::Document.from_file filepath
23
+ end
24
+
25
+ def validate_well_formed
26
+ assert(system("rxp", "-xs", filepath))
27
+ end
28
+
29
+ def validate_dtd
30
+ assert(system("rxp", "-VVs", filepath))
31
+ #assert(system("xmlstarlet", "val", "-d", "ead.dtd", @test_file))
32
+ end
33
+
34
+ def compare_xpath(value, path)
35
+ assert_equal(value, select(path))
36
+ end
37
+
38
+ def element_exists(xpath, *args)
39
+ assert(XMLUtils::element_exists(xpath, filepath), *args)
40
+ end
41
+
42
+ def select(xpath)
43
+ XMLUtils::select_path(xpath, filepath)
44
+ end
45
+ end
@@ -0,0 +1,119 @@
1
+ require File.dirname(__FILE__) + '/test_helper'
2
+
3
+ class MyStreamListener
4
+ attr_reader :ead
5
+ def el_ead(el)
6
+ @ead = el.get_object
7
+ end
8
+ end
9
+
10
+ class MyConsumingStreamListener
11
+ attr_reader :ead
12
+ def el_ead(el)
13
+ @ead = el.get_object
14
+ end
15
+
16
+ def el_c(el)
17
+ el.consume
18
+ end
19
+ end
20
+
21
+ class TestXMLStreamObjectParser < Test::Unit::TestCase
22
+ def initialize(*args)
23
+ super(*args)
24
+
25
+ @test_file = "test_ead_stream_object_parser.xml"
26
+ end
27
+
28
+ def test_import
29
+ @ead.eadheader.id = "1"
30
+
31
+ dsc = EADCodec::Subordinates.new
32
+ @ead.archdesc << dsc
33
+
34
+ c01 = EADCodec::Level.new
35
+ c01 << EADCodec::Description.new
36
+ c01 << EADCodec::PhysTech.new
37
+ dsc << c01
38
+
39
+ c02 = EADCodec::Level.new
40
+ c01 << c02
41
+
42
+ c03 = EADCodec::Level.new
43
+ c02 << c03
44
+
45
+ export
46
+ listener = MyStreamListener.new
47
+ parser = XMLCodec::XMLStreamObjectParser.new(EADCodec::EADElement, listener)
48
+ parser.parse(File.new(filepath))
49
+ @ead = listener.ead
50
+
51
+ assert_equal(@ead, parser.top_element)
52
+
53
+ assert_equal("1", @ead.eadheader.eadid.value)
54
+ assert_equal("1", @ead.eadheader.id)
55
+ assert_equal("Teste", @ead.eadheader.eadtitle.value)
56
+
57
+ dsc = @ead.archdesc[:dsc]
58
+ assert(dsc[:c], "Check that the level was imported")
59
+ assert(dsc[:c][:did], "Check that the description was imported")
60
+ assert(dsc[:c][:c], "Check that the second level was imported")
61
+ assert(dsc[:c][:c][:c], "Check that the third level was imported")
62
+ end
63
+
64
+ def test_consume
65
+ @ead.eadheader.id = "1"
66
+
67
+ dsc = EADCodec::Subordinates.new
68
+ @ead.archdesc << dsc
69
+
70
+ c01 = EADCodec::Level.new
71
+ c01 << EADCodec::Description.new
72
+ c01 << EADCodec::PhysTech.new
73
+ dsc << c01
74
+
75
+ c02 = EADCodec::Level.new
76
+ c01 << c02
77
+
78
+ c03 = EADCodec::Level.new
79
+ c02 << c03
80
+
81
+ export
82
+
83
+ listener = MyConsumingStreamListener.new
84
+ parser = XMLCodec::XMLStreamObjectParser.new(EADCodec::EADElement, listener)
85
+ parser.parse(File.new(filepath))
86
+ @ead = listener.ead
87
+
88
+ dsc = @ead.archdesc[:dsc]
89
+ assert_nil(dsc[:c], "Check that the levels were consumed")
90
+ end
91
+
92
+ def test_numbering
93
+ @ead.eadheader.id = "1"
94
+
95
+ dsc = EADCodec::Subordinates.new
96
+ @ead.archdesc << dsc
97
+
98
+ c01 = EADCodec::Level.new
99
+ c01 << EADCodec::Description.new
100
+ c01 << EADCodec::PhysTech.new
101
+ dsc << c01
102
+
103
+ export
104
+
105
+ listener = MyStreamListener.new
106
+ parser = XMLCodec::XMLStreamObjectParser.new(EADCodec::EADElement, listener)
107
+ parser.parse(File.new(filepath))
108
+ @ead = listener.ead
109
+
110
+ dsc = @ead.archdesc[:dsc]
111
+ c01 = dsc[:c]
112
+
113
+ assert(dsc.element_id)
114
+ assert(dsc.parent_id)
115
+ assert(c01.element_id)
116
+ assert(c01.parent_id)
117
+ assert_equal(c01.parent_id, dsc.element_id)
118
+ end
119
+ end
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: eadcodec
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.0.4
7
- date: 2006-07-06 00:00:00 +01:00
6
+ version: 0.1.0
7
+ date: 2006-07-27 00:00:00 +01:00
8
8
  summary: Importer/Exporter for the EAD XML format
9
9
  require_paths:
10
10
  - lib
@@ -29,54 +29,76 @@ post_install_message:
29
29
  authors:
30
30
  - "Pedro C\xC3\xB4rte-Real"
31
31
  files:
32
- - lib/EADRelatedMaterial.rb
33
- - lib/EADDescription.rb
34
- - lib/EADScopeContent.rb
35
- - lib/EADNote.rb
36
- - lib/EADLevel.rb
37
- - lib/EADPhysTech.rb
38
- - lib/EADBiogHist.rb
39
- - lib/EADHeader.rb
40
- - lib/EADSubtitle.rb
41
- - lib/EADDate.rb
42
- - lib/EADDocument.rb
43
- - lib/EAD.rb
44
- - lib/EADProfileDesc.rb
45
32
  - lib/eadcodec.rb
46
- - lib/EADSubordinates.rb
47
- - lib/EADLang.rb
48
- - lib/EADExtent.rb
49
- - lib/EADGeogName.rb
50
- - lib/EADRepository.rb
51
- - lib/EADAcqInfo.rb
52
- - lib/EADChronList.rb
53
- - lib/EADEvent.rb
54
- - lib/EADControlAccess.rb
55
- - lib/EADList.rb
56
- - lib/EADLabel.rb
57
- - lib/EADCustodHist.rb
58
- - lib/EADFilePlan.rb
59
- - lib/EADProcessInfo.rb
60
- - lib/EADName.rb
61
- - lib/EADDimensions.rb
62
- - lib/EADArrangement.rb
63
- - lib/EADContainer.rb
64
- - lib/EADAltFormAvail.rb
65
- - lib/EADPhysFacet.rb
66
- - lib/EADMaterialSpec.rb
67
- - lib/EADAppraisal.rb
68
- - lib/EADOtherFindAid.rb
69
- - test/TestXMLStreamObjectParser.rb
70
- - test/TestEADDescription.rb
71
- - test/TestEADScopeContent.rb
72
- - test/TestPartialExport.rb
73
- - test/TestEADNote.rb
74
- - test/TestEADPhysTech.rb
75
- - test/TestEADLevel.rb
76
- - test/TestEADSubtitle.rb
77
- - test/TestEADDocument.rb
78
- - test/TestEAD.rb
79
- - test/TestEADSubordinates.rb
33
+ - lib/elements/p.rb
34
+ - lib/elements/head.rb
35
+ - lib/elements/accessrestrict.rb
36
+ - lib/elements/accruals.rb
37
+ - lib/elements/acqinfo.rb
38
+ - lib/elements/altformavail.rb
39
+ - lib/elements/appraisal.rb
40
+ - lib/elements/arrangement.rb
41
+ - lib/elements/bibliography.rb
42
+ - lib/elements/bioghist.rb
43
+ - lib/elements/chronlist.rb
44
+ - lib/elements/container.rb
45
+ - lib/elements/controlaccess.rb
46
+ - lib/elements/custodhist.rb
47
+ - lib/elements/date.rb
48
+ - lib/elements/description.rb
49
+ - lib/elements/dimensions.rb
50
+ - lib/elements/defitem.rb
51
+ - lib/elements/event.rb
52
+ - lib/elements/extent.rb
53
+ - lib/elements/fileplan.rb
54
+ - lib/elements/geogname.rb
55
+ - lib/elements/language.rb
56
+ - lib/elements/label.rb
57
+ - lib/elements/langmaterial.rb
58
+ - lib/elements/list.rb
59
+ - lib/elements/dsc.rb
60
+ - lib/elements/item.rb
61
+ - lib/elements/materialspec.rb
62
+ - lib/elements/name.rb
63
+ - lib/elements/note.rb
64
+ - lib/elements/odd.rb
65
+ - lib/elements/originalsloc.rb
66
+ - lib/elements/otherfindaid.rb
67
+ - lib/elements/physdesc.rb
68
+ - lib/elements/physfacet.rb
69
+ - lib/elements/physloc.rb
70
+ - lib/elements/phystech.rb
71
+ - lib/elements/processinfo.rb
72
+ - lib/elements/profiledesc.rb
73
+ - lib/elements/relatedmaterial.rb
74
+ - lib/elements/repository.rb
75
+ - lib/elements/scopecontent.rb
76
+ - lib/elements/subtitle.rb
77
+ - lib/elements/userestrict.rb
78
+ - lib/elements/origination.rb
79
+ - lib/elements/unitid.rb
80
+ - lib/elements/unittitle.rb
81
+ - lib/elements/chronitem.rb
82
+ - lib/elements/unitdate.rb
83
+ - lib/elements/archdesc.rb
84
+ - lib/elements/ead.rb
85
+ - lib/elements/id.rb
86
+ - lib/elements/titlestmt.rb
87
+ - lib/elements/filedesc.rb
88
+ - lib/elements/eadheader.rb
89
+ - lib/elements/creation.rb
90
+ - lib/elements/c.rb
91
+ - test/xmlsoparser_test.rb
92
+ - test/subtitle_test.rb
93
+ - test/subordinates_test.rb
94
+ - test/test_helper.rb
95
+ - test/phystech_test.rb
96
+ - test/document_test.rb
97
+ - test/note_test.rb
98
+ - test/level_test.rb
99
+ - test/description_test.rb
100
+ - test/partial_export_test.rb
101
+ - test/scopecontent_test.rb
80
102
  - test/examples/example1.xml
81
103
  - test/examples/example2.xml
82
104
  - README
@@ -107,5 +129,5 @@ dependencies:
107
129
  requirements:
108
130
  - - ">="
109
131
  - !ruby/object:Gem::Version
110
- version: 0.0.4
132
+ version: 0.1.0
111
133
  version:
data/lib/EAD.rb DELETED
@@ -1,229 +0,0 @@
1
- require "rexml/document"
2
- require "xmlcodec"
3
-
4
- # This module includes all the support for EAD import/export. The main class to
5
- # use is EADDocument that is a subclass of XMLUtils::XMLElement. All elements
6
- # supported are based on the EAD DTD and have the same names. Currently not all
7
- # attributes and elements have been added. Adding an element is pretty easy
8
- # though.
9
- module EAD
10
- class EADElement < XMLCodec::XMLElement #:nodoc:
11
- end
12
-
13
- class EADSimpleElement < EADElement
14
- elwithvalue
15
-
16
- def to_s
17
- value
18
- end
19
- end
20
-
21
- include XMLUtils
22
- # Module used in EADSubordinates and EADLevels to add new levels to a file
23
- module EADLevels
24
- public
25
- # Returns the list of all the child levels of the current element.
26
- def levels
27
- (self.c ||= []).dup
28
- end
29
-
30
- # Adds a child level to the current element.
31
- def add_level(level)
32
- self.c << level
33
- end
34
-
35
- # Removes a child level from the current element.
36
- def remove_level(level)
37
- self.c.delete(level)
38
- end
39
- end
40
-
41
- def self.sclass(name, string)
42
- const_set(name, Class.new(EADSimpleElement)).send(:elname, string)
43
- end
44
-
45
- # Create a bunch of classes for simple elements with just values
46
- # Most of these actually can have children so they should be promoted to
47
- # actual classes.
48
- sclass "EADAbstract", "abstract"
49
- sclass "EADPhysDesc", "physdesc"
50
- sclass "EADPhysLoc", "physloc"
51
- sclass "EADAuthor", "author"
52
- sclass "EADSponsor", "sponsor"
53
- sclass "EADTitleProper", "titleproper"
54
- sclass "EADAbbr", "abbr"
55
- sclass "EADEmph", "emph"
56
- sclass "EADExpan", "expan"
57
- sclass "EADExtPtr", "extptr"
58
- sclass "EADLb", "lb"
59
- sclass "EADNum", "num"
60
- sclass "EADPtr", "ptr"
61
- sclass "EADArchRef", "archref"
62
- sclass "EADBibRef", "bibref"
63
- sclass "EADExtRef", "extref"
64
- sclass "EADRef", "ref"
65
- sclass "EADLinkGrp", "linkgrp"
66
- sclass "EADTitle", "title"
67
-
68
- class EADOrigination < EADElement
69
- elname "origination"
70
-
71
- xmlattr :altrender
72
- xmlattr :audience
73
- xmlattr :encodinganalog
74
- xmlattr :id
75
- xmlattr :label
76
-
77
- xmlsubelements
78
-
79
- def initialize(string=nil)
80
- if string
81
- self.subelements << string
82
- end
83
- end
84
-
85
- def value
86
- self.subelements[0].to_s
87
- end
88
- end
89
-
90
- class EADUnitTitle < EADElement
91
- elname "unittitle"
92
-
93
- xmlattr :altrender
94
- xmlattr :audience
95
- xmlattr :encodinganalog
96
- xmlattr :id
97
- xmlattr :label
98
- xmlattr :type
99
-
100
- xmlsubelements
101
-
102
- def initialize(string=nil)
103
- if string
104
- self.subelements << string
105
- end
106
- end
107
-
108
- def value
109
- self.subelements[0].to_s
110
- end
111
- end
112
-
113
- class EADUnitId < EADElement
114
- elname "unitid"
115
-
116
- xmlattr :altrender
117
- xmlattr :audience
118
- xmlattr :countrycode
119
- xmlattr :encodinganalog
120
- xmlattr :id
121
- xmlattr :identifier
122
- xmlattr :label
123
- xmlattr :repositorycode
124
- xmlattr :type
125
-
126
- xmlsubelements
127
-
128
- def initialize(string=nil)
129
- if string
130
- self.subelements << string
131
- end
132
- end
133
-
134
- def value
135
- self.subelements[0].to_s
136
- end
137
- end
138
-
139
- # The class for the 'head' element. For convenience it can be initialized
140
- # with a string value that is used as the first subelement.
141
- class EADHead < EADElement
142
- elname "head"
143
-
144
- xmlattr :althead
145
- xmlattr :altrender
146
- xmlattr :audience
147
- xmlattr :id
148
-
149
- xmlsubelements
150
-
151
- def initialize(string=nil)
152
- if string
153
- self.subelements << string
154
- end
155
- end
156
-
157
- def value
158
- self.subelements[0].to_s
159
- end
160
- end
161
-
162
- # The class for the 'p' element. For convenience it can be initialized
163
- # with a string value that is used as the first subelement.
164
- class EADP < EADElement
165
- elname "p"
166
-
167
- xmlattr :altrender
168
- xmlattr :audience
169
- xmlattr :id
170
-
171
- xmlsubelements
172
-
173
- def initialize(string=nil)
174
- if string
175
- self.subelements << string
176
- end
177
- end
178
-
179
- def value
180
- self.subelements[0].to_s
181
- end
182
- end
183
-
184
- end
185
-
186
- require "EADDate"
187
- require "EADSubtitle"
188
- require "EADPhysTech"
189
- require "EADScopeContent"
190
- require "EADRelatedMaterial"
191
- require "EADNote"
192
- require "EADDescription"
193
- require "EADLevel"
194
- require "EADSubordinates"
195
- require "EADProfileDesc"
196
- require "EADHeader"
197
- require "EADBiogHist"
198
- require "EADDocument"
199
- require "EADLang"
200
- require 'EADExtent'
201
- require 'EADGeogName'
202
- require 'EADRepository'
203
- require 'EADAcqInfo'
204
- require 'EADChronList'
205
- require 'EADEvent'
206
- require 'EADControlAccess'
207
- require 'EADList'
208
- require 'EADLabel'
209
- require 'EADCustodHist'
210
- require 'EADFilePlan'
211
- require 'EADProcessInfo'
212
- require 'EADName'
213
- require 'EADDimensions'
214
- require 'EADArrangement'
215
- require 'EADContainer'
216
- require 'EADAltFormAvail'
217
- require 'EADPhysFacet'
218
- require 'EADMaterialSpec'
219
- require 'EADAppraisal'
220
- require 'EADOtherFindAid'
221
-
222
-
223
- module EAD
224
- def self.c_levels
225
- ["c","c01","c02","c03","c04","c05","c06","c07","c08","c09","c10","c11","c12"]
226
- end
227
-
228
- #c_levels.each{|level| ElClasses[level.to_sym] = EADLevel}
229
- end
data/lib/EADAcqInfo.rb DELETED
@@ -1,13 +0,0 @@
1
- module EAD
2
- class EADAcqInfo < EADElement
3
- elname "acqinfo"
4
-
5
- xmlattr :altrender
6
- xmlattr :audience
7
- xmlattr :encodinganalog
8
- xmlattr :id
9
- xmlattr :label
10
-
11
- xmlsubelements
12
- end
13
- end
@@ -1,13 +0,0 @@
1
- module EAD
2
- class EADAltFormAvail < EADElement
3
- elname "altformavail"
4
-
5
- xmlattr :altrender
6
- xmlattr :audience
7
- xmlattr :encodinganalog
8
- xmlattr :id
9
- xmlattr :type
10
-
11
- xmlsubelements
12
- end
13
- end
data/lib/EADAppraisal.rb DELETED
@@ -1,12 +0,0 @@
1
- module EAD
2
- class EADAppraisal < EADElement
3
- elname "appraisal"
4
-
5
- xmlattr :altrender
6
- xmlattr :audience
7
- xmlattr :encodinganalog
8
- xmlattr :id
9
-
10
- xmlsubelements
11
- end
12
- end
@@ -1,12 +0,0 @@
1
- module EAD
2
- class EADArrangement < EADElement
3
- elname "arrangement"
4
-
5
- xmlattr :altrender
6
- xmlattr :audience
7
- xmlattr :encodinganalog
8
- xmlattr :id
9
-
10
- xmlsubelements
11
- end
12
- end