adiwg-mdtranslator 2.21.0.pre.beta.0 → 2.21.0.pre.beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +1 -1
  3. data/DCAT-US.md +67 -0
  4. data/Gemfile.lock +5 -5
  5. data/README.md +21 -0
  6. data/Rakefile +1 -0
  7. data/adiwg-mdtranslator.gemspec +2 -2
  8. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +1 -0
  9. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_dataQuality.rb +27 -37
  10. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataDictionary.rb +8 -0
  11. data/lib/adiwg/mdtranslator/version.rb +1 -1
  12. data/lib/adiwg/mdtranslator/writers/dcat_us/dcat_us_writer.rb +98 -0
  13. data/lib/adiwg/mdtranslator/writers/dcat_us/readme.md +10 -0
  14. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_access_level.rb +55 -0
  15. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_access_url.rb +17 -0
  16. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_accrualPeriodicity.rb +45 -0
  17. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_bureau_code.rb +33 -0
  18. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_contact_point.rb +29 -0
  19. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_dcat_us.rb +104 -0
  20. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_described_by.rb +29 -0
  21. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_described_by_type.rb +33 -0
  22. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_description.rb +19 -0
  23. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_distribution.rb +59 -0
  24. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_download_url.rb +17 -0
  25. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_identifier.rb +29 -0
  26. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_is_part_of.rb +27 -0
  27. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_issued.rb +19 -0
  28. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_keyword.rb +19 -0
  29. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_landing_page.rb +27 -0
  30. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_language.rb +23 -0
  31. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_license.rb +18 -0
  32. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_media_type.rb +17 -0
  33. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_modified.rb +29 -0
  34. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_primaryITInvestmentUII.rb +19 -0
  35. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_program_code.rb +33 -0
  36. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_publisher.rb +74 -0
  37. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_references.rb +50 -0
  38. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_rights.rb +32 -0
  39. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_spatial.rb +32 -0
  40. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_system_of_records.rb +28 -0
  41. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_temporal.rb +40 -0
  42. data/lib/adiwg/mdtranslator/writers/dcat_us/sections/dcat_us_theme.rb +28 -0
  43. data/lib/adiwg/mdtranslator/writers/dcat_us/version.rb +14 -0
  44. data/lib/adiwg/mdtranslator/writers/fgdc/classes/class_dataQuality.rb +133 -185
  45. data/lib/adiwg/mdtranslator/writers/fgdc/classes/class_spatialDomain.rb +1 -1
  46. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_acquisition.rb +103 -0
  47. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_enumerationList.rb +52 -0
  48. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_environment.rb +82 -0
  49. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_event.rb +123 -0
  50. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_extension.rb +208 -0
  51. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_instrument.rb +92 -0
  52. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_instrumentationEvent.rb +83 -0
  53. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_instrumentationEventList.rb +73 -0
  54. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_mdMetadata.rb +38 -0
  55. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_objective.rb +121 -0
  56. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_operation.rb +131 -0
  57. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_pass.rb +63 -0
  58. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_plan.rb +76 -0
  59. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_platform.rb +102 -0
  60. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_requestedDate.rb +44 -0
  61. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_requirement.rb +111 -0
  62. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_revision.rb +55 -0
  63. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_timePeriod.rb +2 -6
  64. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dictionary.rb +1 -0
  65. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_acquisition.rb +195 -0
  66. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_allocation.rb +1 -1
  67. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_body.rb +18 -2
  68. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_citation.rb +8 -8
  69. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQualityReport.rb +3 -3
  70. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_environment.rb +58 -0
  71. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_event.rb +121 -0
  72. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geographicExtent.rb +1 -1
  73. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_instrument.rb +98 -0
  74. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_instrumentationEvent.rb +84 -0
  75. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_instrumentationEventList.rb +90 -0
  76. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_lineage.rb +4 -4
  77. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_maintenance.rb +4 -4
  78. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_medium.rb +2 -2
  79. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_metadataInfo.rb +4 -4
  80. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_objective.rb +155 -0
  81. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_operation.rb +178 -0
  82. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_pass.rb +72 -0
  83. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_plan.rb +93 -0
  84. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_platform.rb +117 -0
  85. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_releasability.rb +1 -1
  86. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_requestedDate.rb +33 -0
  87. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_requirement.rb +139 -0
  88. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceInfo.rb +5 -5
  89. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_responsibility.rb +1 -1
  90. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_revision.rb +55 -0
  91. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_spatialRepresentation.rb +4 -4
  92. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_taxonomy.rb +1 -1
  93. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_timeInstant.rb +1 -1
  94. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_timePeriod.rb +5 -5
  95. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_transferOption.rb +2 -2
  96. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_usage.rb +5 -5
  97. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_vectorRepresentation.rb +2 -2
  98. data/lib/adiwg/mdtranslator_cli.rb +1 -1
  99. data/scripts/build-gem.sh +4 -0
  100. data/scripts/publish-gem.sh +9 -0
  101. metadata +71 -6
@@ -0,0 +1,139 @@
1
+ require_relative 'html_citation'
2
+ require_relative 'html_identifier'
3
+ require_relative 'html_responsibility'
4
+ require_relative 'html_requestedDate'
5
+ require_relative 'html_date'
6
+ require_relative 'html_plan'
7
+
8
+ module ADIWG
9
+ module Mdtranslator
10
+ module Writers
11
+ module Simple_html
12
+ class Html_Requirement
13
+ def initialize(html)
14
+ @html = html
15
+ end
16
+
17
+ def writeHtml(hRequirement)
18
+ citationClass = Html_Citation.new(@html)
19
+ identifierClass = Html_Identifier.new(@html)
20
+ responsibilityClass = Html_Responsibility.new(@html)
21
+ requestedDateClass = Html_RequestedDate.new(@html)
22
+ dateClass = Html_Date.new(@html)
23
+ planClass = Html_Plan.new(@html)
24
+
25
+ # requirementId
26
+ unless hRequirement[:requirementId].nil?
27
+ @html.em('Requirement ID: ')
28
+ @html.text!(hRequirement[:requirementId])
29
+ @html.br
30
+ end
31
+
32
+ # citation
33
+ unless hRequirement[:citation].empty?
34
+ @html.div(:class => 'block') do
35
+ @html.div do
36
+ @html.summary('Citation', {'class' => 'h4'})
37
+ @html.div(:class => 'block') do
38
+ citationClass.writeHtml(hRequirement[:citation])
39
+ end
40
+ end
41
+ end
42
+ end
43
+
44
+ # identifier
45
+ unless hRequirement[:identifier].empty?
46
+ @html.div(:class => 'block') do
47
+ @html.div do
48
+ @html.summary('Identifier ', {'class' => 'h4'})
49
+ @html.div(:class => 'block') do
50
+ identifierClass.writeHtml(hRequirement[:identifier])
51
+ end
52
+ end
53
+ end
54
+ end
55
+
56
+ # requestor
57
+ unless hRequirement[:requestors].empty?
58
+ @html.div(:class => 'block') do
59
+ @html.div do
60
+ @html.summary('Requestors', {'class' => 'h4'})
61
+ hRequirement[:requestors].each do |requestor|
62
+ @html.div(:class => 'block') do
63
+ @html.div do
64
+ @html.summary('Requestor', {'class' => 'h5'})
65
+ operationClass.writeHtml(requestor)
66
+ end
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
72
+
73
+ # recipient
74
+ unless hRequirement[:recipients].empty?
75
+ @html.div(:class => 'block') do
76
+ @html.div do
77
+ @html.summary('Recipients', {'class' => 'h4'})
78
+ hRequirement[:recipients].each do |recipient|
79
+ @html.div(:class => 'block') do
80
+ @html.div do
81
+ @html.summary('Recipient', {'class' => 'h5'})
82
+ operationClass.writeHtml(recipient)
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
89
+
90
+ # priority
91
+ unless hRequirement[:priority].nil?
92
+ @html.em('Priority: ')
93
+ @html.text!(hRequirement[:priority])
94
+ @html.br
95
+ end
96
+
97
+ # requested date
98
+ unless hRequirement[:requestedDate].empty?
99
+ @html.div(:class => 'block') do
100
+ @html.div do
101
+ @html.summary('Requested Date ', {'class' => 'h4'})
102
+ @html.div(:class => 'block') do
103
+ requestedDateClass.writeHtml(hRequirement[:requestedDate])
104
+ end
105
+ end
106
+ end
107
+ end
108
+
109
+ # expiry date
110
+ unless hRequirement[:expiryDate].nil?
111
+ @html.em('Expiry Date: ')
112
+ @html.text!(hRequirement[:expiryDate])
113
+ @html.br
114
+ end
115
+
116
+ # satisfied plan
117
+ unless hRequirement[:satisfiedPlans].empty?
118
+ @html.div(:class => 'block') do
119
+ @html.div do
120
+ @html.summary('Satisfied Plans', {'class' => 'h4'})
121
+ hRequirement[:satisfiedPlans].each do |plan|
122
+ @html.div(:class => 'block') do
123
+ @html.div do
124
+ @html.summary('Plan', {'class' => 'h5'})
125
+ planClass.writeHtml(plan)
126
+ end
127
+ end
128
+ end
129
+ end
130
+ end
131
+ end
132
+
133
+ end # writeHtml
134
+ end # Html_Requirement
135
+
136
+ end
137
+ end
138
+ end
139
+ end
@@ -154,7 +154,7 @@ module ADIWG
154
154
  hResource[:graphicOverviews].each do |hGraphic|
155
155
  counter += 1
156
156
  @html.div do
157
- @html.div('Overview '+counter.to_s, 'class' => 'h5')
157
+ @html.h5('Overview '+counter.to_s, 'class' => 'h5')
158
158
  @html.div(:class => 'block') do
159
159
  graphicClass.writeHtml(hGraphic)
160
160
  end
@@ -173,7 +173,7 @@ module ADIWG
173
173
  # contacts - responsibility
174
174
  hResource[:pointOfContacts].each do |hContact|
175
175
  @html.div do
176
- @html.div(hContact[:roleName], 'class' => 'h5')
176
+ @html.h5(hContact[:roleName], 'class' => 'h5')
177
177
  @html.div(:class => 'block') do
178
178
  responsibilityClass.writeHtml(hContact)
179
179
  end
@@ -183,7 +183,7 @@ module ADIWG
183
183
  # contacts - credits
184
184
  unless hResource[:credits].empty?
185
185
  @html.div do
186
- @html.div('Other Credits', 'class' => 'h5')
186
+ @html.h5('Other Credits', 'class' => 'h5')
187
187
  @html.div(:class => 'block') do
188
188
  hResource[:credits].each do |credit|
189
189
  @html.em('Credit: ')
@@ -216,7 +216,7 @@ module ADIWG
216
216
  unless hResource[:temporalResolutions].empty?
217
217
  hResource[:temporalResolutions].each do |hResolution|
218
218
  @html.div do
219
- @html.div('Resolution', 'class' => 'h5')
219
+ @html.h5('Resolution', 'class' => 'h5')
220
220
  @html.div(:class => 'block') do
221
221
  durationClass.writeHtml(hResolution)
222
222
  end
@@ -347,7 +347,7 @@ module ADIWG
347
347
  hResource[:taxonomy].each do |hTaxonomy|
348
348
  counter += 1
349
349
  @html.div do
350
- @html.div('Taxonomic Structure '+counter.to_s, 'class' => 'h5')
350
+ @html.h5('Taxonomic Structure '+counter.to_s, 'class' => 'h5')
351
351
  @html.div(:class => 'block') do
352
352
  taxonomyClass.writeHtml(hTaxonomy)
353
353
  end
@@ -27,7 +27,7 @@ module ADIWG
27
27
  hResponsibility[:parties].each do |hParty|
28
28
  hContact = Html_Document.getContact(hParty[:contactId])
29
29
  @html.div do
30
- @html.div(hContact[:name], 'class' => 'h5')
30
+ @html.h5(hContact[:name], 'class' => 'h5')
31
31
  @html.div(:class => 'block') do
32
32
 
33
33
  # party - contact ID
@@ -0,0 +1,55 @@
1
+ require_relative 'html_responsibility'
2
+ require_relative 'html_date'
3
+
4
+ module ADIWG
5
+ module Mdtranslator
6
+ module Writers
7
+ module Simple_html
8
+ class Html_Revision
9
+ def initialize(html)
10
+ @html = html
11
+ end
12
+
13
+ def writeHtml(hRevision)
14
+ responsibilityClass = Html_Responsibility.new(@html)
15
+ dateClass = Html_Date.new(@html)
16
+
17
+ # description
18
+ unless hRevision[:description].nil?
19
+ @html.em('Description: ')
20
+ @html.text!(hRevision[:description])
21
+ @html.br
22
+ end
23
+
24
+ # responsibleParty
25
+ unless hRevision[:responsibleParty].empty?
26
+ @html.div(:class => 'block') do
27
+ @html.div do
28
+ @html.summary('Responsible Party', {'class' => 'h4'})
29
+ @html.div(:class => 'block') do
30
+ responsibilityClass.writeHtml(hRevision[:responsibleParty])
31
+ end
32
+ end
33
+ end
34
+ end
35
+
36
+ # dateInfo
37
+ unless hRevision[:dateInfo].empty?
38
+ @html.div(:class => 'block') do
39
+ @html.div do
40
+ @html.summary('Date Info', {'class' => 'h4'})
41
+ hRevision[:dateInfo].each do |date|
42
+ @html.em('Datetime: ')
43
+ @html.text!(date[:dateTime].to_s)
44
+ @html.br
45
+ end
46
+ end
47
+ end
48
+ end
49
+
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -31,7 +31,7 @@ module ADIWG
31
31
  # spatial Representation - grid {gridRepresentation}
32
32
  unless hRepresentation[:gridRepresentation].empty?
33
33
  @html.div do
34
- @html.div('Grid Representation ', 'class' => 'h5')
34
+ @html.h5('Grid Representation ', 'class' => 'h5')
35
35
  @html.div(:class => 'block') do
36
36
  gridClass.writeHtml(hRepresentation[:gridRepresentation])
37
37
  end
@@ -41,7 +41,7 @@ module ADIWG
41
41
  # spatial Representation - vector {vectorRepresentation}
42
42
  unless hRepresentation[:vectorRepresentation].empty?
43
43
  @html.div do
44
- @html.div('Vector Representation ', 'class' => 'h5')
44
+ @html.h5('Vector Representation ', 'class' => 'h5')
45
45
  @html.div(:class => 'block') do
46
46
  vectorClass.writeHtml(hRepresentation[:vectorRepresentation])
47
47
  end
@@ -51,7 +51,7 @@ module ADIWG
51
51
  # spatial Representation - georectified {georectifiedRepresentation}
52
52
  unless hRepresentation[:georectifiedRepresentation].empty?
53
53
  @html.div do
54
- @html.div('Georectified Representation ', 'class' => 'h5')
54
+ @html.h5('Georectified Representation ', 'class' => 'h5')
55
55
  @html.div(:class => 'block') do
56
56
  georectifiedClass.writeHtml(hRepresentation[:georectifiedRepresentation])
57
57
  end
@@ -61,7 +61,7 @@ module ADIWG
61
61
  # spatial Representation - georeferenceable {georeferenceableRepresentation}
62
62
  unless hRepresentation[:georeferenceableRepresentation].empty?
63
63
  @html.div do
64
- @html.div('Georeferenceable Representation ', 'class' => 'h5')
64
+ @html.h5('Georeferenceable Representation ', 'class' => 'h5')
65
65
  @html.div(:class => 'block') do
66
66
  georeferenceableClass.writeHtml(hRepresentation[:georeferenceableRepresentation])
67
67
  end
@@ -106,7 +106,7 @@ module ADIWG
106
106
  @html.div(:class => 'block') do
107
107
  hTaxonomy[:observers].each do |hObserver|
108
108
  @html.div do
109
- @html.div(hObserver[:roleName], 'class' => 'h5')
109
+ @html.h5(hObserver[:roleName], 'class' => 'h5')
110
110
  @html.div(:class => 'block') do
111
111
  responsibilityClass.writeHtml(hObserver)
112
112
  end
@@ -66,7 +66,7 @@ module ADIWG
66
66
  # time instant - identifier {identifier}
67
67
  unless hInstant[:identifier].empty?
68
68
  @html.div do
69
- @html.div('Identifier', 'class' => 'h5')
69
+ @html.h5('Identifier', 'class' => 'h5')
70
70
  @html.div(:class => 'block') do
71
71
  identifierClass.writeHtml(hInstant[:identifier])
72
72
  end
@@ -70,7 +70,7 @@ module ADIWG
70
70
  # time period - start geologic age {geologic age}
71
71
  unless hPeriod[:startGeologicAge].empty?
72
72
  @html.div do
73
- @html.div('Starting Geologic Age', 'class' => 'h5')
73
+ @html.h5('Starting Geologic Age', 'class' => 'h5')
74
74
  @html.div(:class => 'block') do
75
75
  geoAgeClass.writeHtml(hPeriod[:startGeologicAge])
76
76
  end
@@ -80,7 +80,7 @@ module ADIWG
80
80
  # time period - end geologic age {geologic age}
81
81
  unless hPeriod[:endGeologicAge].empty?
82
82
  @html.div do
83
- @html.div('Ending Geologic Age', 'class' => 'h5')
83
+ @html.h5('Ending Geologic Age', 'class' => 'h5')
84
84
  @html.div(:class => 'block') do
85
85
  geoAgeClass.writeHtml(hPeriod[:endGeologicAge])
86
86
  end
@@ -90,7 +90,7 @@ module ADIWG
90
90
  # time period - identifier {identifier}
91
91
  unless hPeriod[:identifier].empty?
92
92
  @html.div do
93
- @html.div('Identifier', 'class' => 'h5')
93
+ @html.h5('Identifier', 'class' => 'h5')
94
94
  @html.div(:class => 'block') do
95
95
  identifierClass.writeHtml(hPeriod[:identifier])
96
96
  end
@@ -100,7 +100,7 @@ module ADIWG
100
100
  # time period - time interval
101
101
  unless hPeriod[:timeInterval].empty?
102
102
  @html.div do
103
- @html.div('Time Interval', 'class' => 'h5')
103
+ @html.h5('Time Interval', 'class' => 'h5')
104
104
  @html.div(:class => 'block') do
105
105
  intervalClass.writeHtml(hPeriod[:timeInterval])
106
106
  end
@@ -110,7 +110,7 @@ module ADIWG
110
110
  # time period - duration
111
111
  unless hPeriod[:duration].empty?
112
112
  @html.div do
113
- @html.div('Duration', 'class' => 'h5')
113
+ @html.h5('Duration', 'class' => 'h5')
114
114
  @html.div(:class => 'block') do
115
115
  durationClass.writeHtml(hPeriod[:duration])
116
116
  end
@@ -68,7 +68,7 @@ module ADIWG
68
68
  # transfer options - transfer frequency {duration}
69
69
  unless hOption[:transferFrequency].empty?
70
70
  @html.div do
71
- @html.div('Transfer Frequency', 'class' => 'h5')
71
+ @html.h5('Transfer Frequency', 'class' => 'h5')
72
72
  @html.div(:class => 'block') do
73
73
  durationClass.writeHtml(hOption[:transferFrequency])
74
74
  end
@@ -78,7 +78,7 @@ module ADIWG
78
78
  # transfer options - distribution formats [] {format}
79
79
  hOption[:distributionFormats].each do |hFormat|
80
80
  @html.div do
81
- @html.div('Distribution Format Option', 'class' => 'h5')
81
+ @html.h5('Distribution Format Option', 'class' => 'h5')
82
82
  @html.div(:class => 'block') do
83
83
  formatClass.writeHtml(hFormat)
84
84
  end
@@ -37,7 +37,7 @@ module ADIWG
37
37
  # resource usage - temporal extent
38
38
  unless hUsage[:temporalExtents].empty?
39
39
  @html.div do
40
- @html.div('Times and Periods of Usage', 'class' => 'h5')
40
+ @html.h5('Times and Periods of Usage', 'class' => 'h5')
41
41
  @html.div(:class => 'block') do
42
42
  hUsage[:temporalExtents].each do |hTemporal|
43
43
  temporalClass.writeHtml(hTemporal)
@@ -49,7 +49,7 @@ module ADIWG
49
49
  # resource usage - limitation
50
50
  unless hUsage[:userLimitation].nil? && hUsage[:limitationResponses].empty?
51
51
  @html.div do
52
- @html.div('User Defined Limitations', 'class' => 'h5')
52
+ @html.h5('User Defined Limitations', 'class' => 'h5')
53
53
  @html.div(:class => 'block') do
54
54
 
55
55
  # user limitation
@@ -75,7 +75,7 @@ module ADIWG
75
75
  # resource usage - documented issue
76
76
  unless hUsage[:identifiedIssue].empty?
77
77
  @html.div do
78
- @html.div('Cited Issue', 'class' => 'h5')
78
+ @html.h5('Cited Issue', 'class' => 'h5')
79
79
  @html.div(:class => 'block') do
80
80
  citationClass.writeHtml(hUsage[:identifiedIssue])
81
81
  end
@@ -85,7 +85,7 @@ module ADIWG
85
85
  # resource usage - additional documentation
86
86
  hUsage[:additionalDocumentation].each do |hCitation|
87
87
  @html.div do
88
- @html.div('Additional Documentation', 'class' => 'h5')
88
+ @html.h5('Additional Documentation', 'class' => 'h5')
89
89
  @html.div(:class => 'block') do
90
90
  citationClass.writeHtml(hCitation)
91
91
  end
@@ -99,7 +99,7 @@ module ADIWG
99
99
  @html.div(:class => 'block') do
100
100
  hUsage[:userContacts].each do |hContact|
101
101
  @html.div do
102
- @html.div(hContact[:roleName], 'class' => 'h5')
102
+ @html.h5(hContact[:roleName], 'class' => 'h5')
103
103
  @html.div(:class => 'block') do
104
104
  responsibilityClass.writeHtml(hContact)
105
105
  end
@@ -28,7 +28,7 @@ module ADIWG
28
28
  # vector representation - scope
29
29
  hVector[:scope].each do |scope|
30
30
  @html.div do
31
- @html.div('Scope ', 'class' => 'h5')
31
+ @html.h5('Scope ', 'class' => 'h5')
32
32
  @html.div(:class => 'block') do
33
33
  scopeClass.writeHtml(hVector[:scope])
34
34
  end
@@ -46,7 +46,7 @@ module ADIWG
46
46
  # vector representation - vector object []
47
47
  hVector[:vectorObject].each do |hObject|
48
48
  @html.div do
49
- @html.div('Vector Object ', 'class' => 'h5')
49
+ @html.h5('Vector Object ', 'class' => 'h5')
50
50
  @html.div(:class => 'block') do
51
51
  objectClass.writeHtml(hObject)
52
52
  end
@@ -39,7 +39,7 @@ and to choose the level of validation for mdJson input files.
39
39
  :enum => %w{mdJson sbJson fgdc}, :required => true
40
40
  method_option :writer, :aliases => '-w',
41
41
  :desc => 'Writer to create your output metadata file, leave blank to validate input only',
42
- :enum => %w{fgdc html iso19110 iso19115_1 iso19115_2 iso19115_3 mdJson sbJson simple_html }
42
+ :enum => %w{fgdc html iso19110 iso19115_1 iso19115_2 iso19115_3 mdJson sbJson simple_html dcat_us}
43
43
  method_option :validate, :aliases => '-v', :desc => 'Specify level of validation to be performed',
44
44
  :enum => %w{none normal strict}, :default => 'normal'
45
45
  method_option :forceValid, :aliases => '-f', :desc => 'Insert tags for required elements missing from input',
@@ -0,0 +1,4 @@
1
+ #!/bin/bash
2
+
3
+ # This script builds the gem and runs tests.
4
+ bundle install && bundle exec rake test && gem build adiwg-mdtranslator.gemspec
@@ -0,0 +1,9 @@
1
+ #!/bin/bash
2
+
3
+ # Verify that the gemspec file is provided as an argument
4
+ if [ -z "$1" ]; then
5
+ echo "Usage: $0 <gemspec-file>"
6
+ exit 1
7
+ fi
8
+
9
+ gem push "$1"