adiwg-mdtranslator 2.19.0.pre.beta.7 → 2.20.0.pre.beta.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of adiwg-mdtranslator might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f456de4448d18685a212969b02c6195b206d8e461372b317fce02e0066de15d6
4
- data.tar.gz: 42027d3093840bbd6a3a896000950bef3145d3518d1a41a372e02fc199f25701
3
+ metadata.gz: 7e9adfaa7a2c3d247dd89f33f9c08d030699d228f0dd4a44eb275641b50253e3
4
+ data.tar.gz: 28db8021f8b7fdd3fd95e667e383c9a90223e40c0c84e352913c19d02a5af970
5
5
  SHA512:
6
- metadata.gz: d7af3c590f3c28b7f49e6192000ee20c289ce0718e644029c04b0b21d8258422dcb3e1d28183ba945bd3dafcf8cd191a3cc33f086a4e4f06b888b21096fd9159
7
- data.tar.gz: 482f497b01253e0a7376023afafa051b821ed9dec53346a4e5237ae8b40dbfab0d5a9944333b948af56490c4e2e3ed0ae35d39d2485e378a0d6c833e2fd3bade
6
+ metadata.gz: 62603bc99167a90d46b17af3599c1b3c9a4e7e82b9526b8be864ab3ee18e040e67f7fa07fadddf8d568cb92348b2af582a97926c231d5f7e8f2fa212a1854f72
7
+ data.tar.gz: 3c2f2cd44f7915d8478efc9dc5813bade405d59b110d7c89826a69e739b768dac6677b34a2f9f9eae778b4745c1f3b971d53361d5c6146b7175ef5a30733eda8
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- adiwg-mdtranslator (2.19.0.pre.beta.7)
4
+ adiwg-mdtranslator (2.20.0.pre.beta.0)
5
5
  adiwg-mdcodes (= 2.9.2)
6
6
  adiwg-mdjson_schemas (= 2.9.1)
7
7
  builder (~> 3.2)
@@ -951,8 +951,8 @@ class InternalMetadata
951
951
  statement: nil,
952
952
  resourceScope: {},
953
953
  lineageCitation: [],
954
- dataSources: [],
955
- processSteps: []
954
+ processSteps: [],
955
+ dataSources: []
956
956
  }
957
957
  end
958
958
 
@@ -231,9 +231,11 @@ module ADIWG
231
231
  hCitation[:title] = thesaurus
232
232
  hKeyword[:thesaurus] = hCitation
233
233
  end
234
- if thesaurus.empty?
235
- hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO method keyword thesaurus is missing'
236
- end
234
+ # This code is being disabled intentionally. While the standard does indicate this is required, in practice it is not always present.
235
+ # Instead of requiring keywords, we will allow them to be optional for bio lineage.
236
+ # if thesaurus.empty?
237
+ # hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO method keyword thesaurus is missing'
238
+ # end
237
239
 
238
240
  # theme keyword bio.1.2 (methkey) - lineage method keywords {keywordObject}
239
241
  axKeywords = xKeywords.xpath('./methkey')
@@ -247,9 +249,11 @@ module ADIWG
247
249
  end
248
250
  end
249
251
  end
250
- if axKeywords.empty?
251
- hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO method keyword is missing'
252
- end
252
+ # This code is being disabled intentionally. While the standard does indicate this is required, in practice it is not always present.
253
+ # Instead of requiring keywords, we will allow them to be optional for bio lineage.
254
+ # if axKeywords.empty?
255
+ # hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO method keyword is missing'
256
+ # end
253
257
 
254
258
  aKeywords << hKeyword
255
259
 
@@ -30,21 +30,15 @@ module ADIWG
30
30
  # lineage bio (method) - methodology [] (required)
31
31
  axMethods = xLineage.xpath('./method')
32
32
  unless axMethods.empty?
33
- Method.unpack(hLineage, axMethods, hResponseObj)
33
+ axMethods.each do |xMethod|
34
+ hProcess = Method.unpack(hLineage, xMethod, hResponseObj)
35
+ hLineage[:processSteps] << hProcess
36
+ end
34
37
  end
35
38
  if axMethods.empty?
36
39
  hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO lineage methodology section is missing'
37
40
  end
38
-
39
- # lineage 2.5.1 (srcinfo) - source information []
40
- axSource = xLineage.xpath('./srcinfo')
41
- unless axSource.empty?
42
- axSource.each do |xSource|
43
- hSource = Source.unpack(xSource, hResponseObj)
44
- hLineage[:dataSources] << hSource
45
- end
46
- end
47
-
41
+
48
42
  # lineage 2.5.2 (procstep) - process step [] (required)
49
43
  axProcess = xLineage.xpath('./procstep')
50
44
  unless axProcess.empty?
@@ -57,6 +51,15 @@ module ADIWG
57
51
  hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: lineage process step section is missing'
58
52
  end
59
53
 
54
+ # lineage 2.5.1 (srcinfo) - source information []
55
+ axSource = xLineage.xpath('./srcinfo')
56
+ unless axSource.empty?
57
+ axSource.each do |xSource|
58
+ hSource = Source.unpack(xSource, hResponseObj)
59
+ hLineage[:dataSources] << hSource
60
+ end
61
+ end
62
+
60
63
  return hLineage
61
64
 
62
65
  end
@@ -16,53 +16,45 @@ module ADIWG
16
16
 
17
17
  module Method
18
18
 
19
- def self.unpack(hLineage, axMethods, hResponseObj)
19
+ def self.unpack(hLineage, xMethod, hResponseObj)
20
20
 
21
- statement = ''
22
21
  intObj = Fgdc.get_intObj
23
22
  hResourceInfo = intObj[:metadata][:resourceInfo]
24
23
 
25
- axMethods.each do |xMethod|
24
+ intMetadataClass = InternalMetadata.new
25
+ hProcessStep = intMetadataClass.newProcessStep
26
26
 
27
- # methodology bio (methtype) - method type (not supported)
27
+ # methodology bio (methtype) - method type (not supported)
28
28
 
29
- # methodology bio (methodid) - method identifier [] {keyword}
30
- axKeywords = xMethod.xpath('./methodid')
31
- unless axKeywords.empty?
32
- axKeywords.each do |xKeyword|
33
- Keyword.unpack(xKeyword, hResourceInfo, hResponseObj)
34
- end
29
+ # methodology bio (methodid) - method identifier [] {keyword}
30
+ axKeywords = xMethod.xpath('./methodid')
31
+ unless axKeywords.empty?
32
+ axKeywords.each do |xKeyword|
33
+ Keyword.unpack(xKeyword, hResourceInfo, hResponseObj)
35
34
  end
35
+ end
36
36
 
37
- # methodology bio (methdesc) - method description (required)
38
- description = xMethod.xpath('./methdesc').text
39
- unless description.empty?
40
- statement += description + '; '
41
- end
42
- if description.empty?
43
- hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO lineage methodology description is missing'
44
- end
37
+ # methodology bio (methdesc) - method description (required)
38
+ description = xMethod.xpath('./methdesc').text
39
+ unless description.empty?
40
+ hProcessStep[:description] = description
41
+ end
42
+ if description.empty?
43
+ hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: BIO lineage methodology description is missing'
44
+ end
45
45
 
46
- # methodology bio (methcite) - method citation [] {citation}
47
- axCitations = xMethod.xpath('./methcite')
48
- unless axCitations.empty?
49
- axCitations.each do |xCitation|
50
- hReturn = Citation.unpack(xCitation, hResponseObj)
51
- unless hReturn.nil?
52
- hLineage[:lineageCitation] << hReturn
53
- end
46
+ # methodology bio (methcite) - method citation [] {citation}
47
+ axCitations = xMethod.xpath('./methcite')
48
+ unless axCitations.empty?
49
+ axCitations.each do |xCitation|
50
+ hReturn = Citation.unpack(xCitation, hResponseObj)
51
+ unless hReturn.nil?
52
+ hProcessStep[:references] << hReturn
54
53
  end
55
54
  end
56
-
57
55
  end
58
56
 
59
- unless statement.empty?
60
- statement.chomp!('; ')
61
- hLineage[:statement] = statement
62
- end
63
-
64
- return hLineage
65
-
57
+ return hProcessStep
66
58
  end
67
59
  end
68
60
 
@@ -8,6 +8,7 @@ require 'nokogiri'
8
8
  require 'adiwg/mdtranslator/internal/internal_metadata_obj'
9
9
  require_relative 'module_dateTime'
10
10
  require_relative 'module_contact'
11
+ require_relative 'module_citation'
11
12
 
12
13
  module ADIWG
13
14
  module Mdtranslator
@@ -37,7 +38,7 @@ module ADIWG
37
38
  axUsed.each do |xUsed|
38
39
  usedSrc = xUsed.text
39
40
  unless usedSrc.empty?
40
- hLineage[:dataSources].each do |hSource|
41
+ hProcess[:stepSources].each do |hSource|
41
42
  unless hSource[:sourceId].nil?
42
43
  if usedSrc == hSource[:sourceId]
43
44
  hProcess[:stepSources] << hSource
@@ -92,6 +93,17 @@ module ADIWG
92
93
  end
93
94
  end
94
95
 
96
+ # process (references) - references []
97
+ axReferences = xProcess.xpath('./reference')
98
+ unless axReferences.empty?
99
+ axReferences.each do |xReference|
100
+ hCitation = Citation.unpack(xReference, hResponseObj)
101
+ unless hCitation.nil?
102
+ hProcess[:references] << hCitation
103
+ end
104
+ end
105
+ end
106
+
95
107
  return hProcess
96
108
 
97
109
  end
@@ -95,8 +95,8 @@ module ADIWG
95
95
  aCurVersion = currentVersion.split('.')
96
96
  aReqVersion = requestedVersion.split('.')
97
97
  approved = false
98
- if aReqVersion[0] == aCurVersion[0]
99
- if aReqVersion[1] <= aCurVersion[1]
98
+ if aReqVersion[0].to_i == aCurVersion[0].to_i
99
+ if aReqVersion[1].to_i <= aCurVersion[1].to_i
100
100
  approved = true
101
101
  end
102
102
  end
@@ -109,7 +109,7 @@
109
109
  module ADIWG
110
110
  module Mdtranslator
111
111
  # current mdtranslator version
112
- VERSION = "2.19.0-beta.7"
112
+ VERSION = "2.20.0-beta.0"
113
113
  end
114
114
  end
115
115
 
@@ -85,7 +85,7 @@ module ADIWG
85
85
  # schema locations
86
86
  # set to 'remoteSchema' before publishing
87
87
  localSchema = 'C:\Users\StanSmith\Projects\ISO\19115\-3\mdt\1.0\mdt.xsd'
88
- remoteSchema = 'http://standards.iso.org/iso/19115/-3/mdt/2.0/mdt.xsd'
88
+ remoteSchema = 'https://schemas.isotc211.org/19115/-3/mdt/2.0/mdt.xsd'
89
89
 
90
90
  # MD_Metadata
91
91
  @xml.tag!('mdb:MD_Metadata',
@@ -113,25 +113,7 @@ module ADIWG
113
113
  @xml.tag!('cit:individual')
114
114
  end
115
115
 
116
- # organization - party identifier
117
- if hContact[:externalIdentifier] && hContact[:externalIdentifier].length > 0
118
- hContact[:externalIdentifier].each do |identifier|
119
- @xml.tag!('cit:partyIdentifier') do
120
- identifierClass.writeXML(identifier);
121
- end
122
- end
123
- else
124
- if hContact[:contactId] &&
125
- hContact[:contactId].is_a?(Hash)
126
- @xml.tag!('cit:partyIdentifier') do
127
- identifierClass.writeXML(hContact[:contactId]);
128
- end
129
- elsif hContact[:contactId].is_a?(String)
130
- @xml.tag!('cit:partyIdentifier') do
131
- identifierClass.writeXML({ identifier: hContact[:contactId] })
132
- end
133
- end
134
- end
116
+
135
117
 
136
118
  end
137
119
  if hContact.empty?
@@ -17,23 +17,24 @@ module ADIWG
17
17
  end
18
18
 
19
19
  def writeXML(hAttribute, inContext = nil)
20
-
21
- unless hAttribute[:name].nil?
22
- @xml.tag!('mrc:name') do
23
- @xml.tag!('gco:CharacterString', hAttribute[:name])
20
+ @xml.tag!('mrc:MI_RangeElementDescription') do
21
+ unless hAttribute[:name].nil?
22
+ @xml.tag!('mrc:name') do
23
+ @xml.tag!('gco:CharacterString', hAttribute[:name])
24
+ end
24
25
  end
25
- end
26
26
 
27
- unless hAttribute[:definition].nil?
28
- @xml.tag!('mrc:definition') do
29
- @xml.tag!('gco:CharacterString', hAttribute[:definition])
27
+ unless hAttribute[:definition].nil?
28
+ @xml.tag!('mrc:definition') do
29
+ @xml.tag!('gco:CharacterString', hAttribute[:definition])
30
+ end
30
31
  end
31
- end
32
32
 
33
- hAttribute[:rangeElement].each do |hRangeElement|
34
- @xml.tag!('mrc:rangeElement') do
35
- @xml.tag!('gco:Record') do
36
- @xml.tag!('gco:CharacterString', hRangeElement)
33
+ hAttribute[:rangeElement].each do |hRangeElement|
34
+ @xml.tag!('mrc:rangeElement') do
35
+ @xml.tag!('gco:Record') do
36
+ @xml.tag!('gco:CharacterString', hRangeElement)
37
+ end
37
38
  end
38
39
  end
39
40
  end
@@ -67,12 +67,6 @@ module ADIWG
67
67
  @xml.tag!('mrc:scaleFactor')
68
68
  end
69
69
 
70
- hAttribute[:rangeElementDescription].each do |red|
71
- @xml.tag!('mrc:rangeElementDescription') do
72
- rangeElementDescription.writeXML(red, inContext)
73
- end
74
- end
75
-
76
70
  # sample dimension - offset {real}
77
71
  unless hAttribute[:offset].nil?
78
72
  @xml.tag!('mrc:offset') do
@@ -126,6 +120,12 @@ module ADIWG
126
120
  @xml.tag!('mrc:bitsPerValue')
127
121
  end
128
122
 
123
+ hAttribute[:rangeElementDescription].each do |red|
124
+ @xml.tag!('mrc:rangeElementDescription') do
125
+ rangeElementDescription.writeXML(red, inContext)
126
+ end
127
+ end
128
+
129
129
  end # writeXML
130
130
  end # MD_SampleDescription
131
131
 
@@ -20,6 +20,8 @@ module ADIWG
20
20
 
21
21
  def self.startWriter(intObj, hResponseObj)
22
22
 
23
+ hResponseObj[:writerMissingIdCount] = '000'
24
+
23
25
  # make contact available to the instance
24
26
  @contacts = intObj[:contacts]
25
27
  @hResponseObj = hResponseObj
@@ -67,37 +67,25 @@ module ADIWG
67
67
  @html.div('id' => 'sideNav') do
68
68
 
69
69
  # add section buttons
70
- @html.a(' Top', {'href' => '#', 'class' => 'btn'})
71
70
  @html.a(' Contacts', {'href' => '#body-contacts', 'class' => 'btn navBtn', 'id' => 'contactButton'})
72
71
  @html.a(' Metadata', {'href' => '#body-metadataInfo', 'class' => 'btn navBtn', 'id' => 'metadataButton'})
73
72
  @html.a(' Resource', {'href' => '#body-resourceInfo', 'class' => 'btn navBtn', 'id' => 'resourceButton'})
74
73
  @html.a(' Lineage', {'href' => '#body-lineage', 'class' => 'btn navBtn', 'id' => 'lineageButton'})
75
74
  @html.a(' Distribution', {'href' => '#body-distribution', 'class' => 'btn navBtn', 'id' => 'distributionButton'})
75
+ @html.br
76
76
  @html.a(' Associated', {'href' => '#body-associatedResource', 'class' => 'btn navBtn', 'id' => 'associatedButton'})
77
77
  @html.a(' Additional', {'href' => '#body-additionalDocument', 'class' => 'btn navBtn', 'id' => 'additionalButton'})
78
78
  @html.a(' Dictionary', {'href' => '#body-dataDictionary', 'class' => 'btn navBtn', 'id' => 'dictionaryButton'})
79
79
  @html.a(' Funding', {'href' => '#body-funding', 'class' => 'btn navBtn', 'id' => 'fundingButton'})
80
80
  @html.a(' Repository', {'href' => '#body-repository', 'class' => 'btn navBtn', 'id' => 'repositoryButton'})
81
81
 
82
- # add open and close buttons
83
- @html.span(' Open', {'class' => 'btn icon-caret-down', 'id' => 'openAllButton'})
84
- @html.span(' Close', {'class' => 'btn icon-caret-right', 'id' => 'closeAllButton'})
85
-
86
82
  end
87
83
 
88
84
  # main header
89
85
  @html.h2('id' => 'mainHeader') do
90
86
  # added blank to span tag to force builder to create closing tag
91
- @html.span('', 'id' => 'logo')
92
- @html.span('Metadata Record')
93
- @html.span('HTML5', 'class' => 'version')
94
87
  end
95
88
 
96
- # report title
97
- # aShortVersion = version.split('.')
98
- # shortVersion = aShortVersion[0].to_s + '.' + aShortVersion[1].to_s
99
- @html.h1('mdTranslator ' + version + ' HTML Metadata Record', 'id' => 'mdtranslator-metadata-report')
100
-
101
89
  # resource citation title
102
90
  unless hResourceInfo.empty?
103
91
  unless hResourceInfo[:citation].empty?
@@ -110,7 +98,7 @@ module ADIWG
110
98
  # report date
111
99
  @html.div(:class => 'block') do
112
100
  @html.em('Report Generated:')
113
- @html.text!(Time.new.inspect)
101
+ @html.text!(Time.new.strftime('%Y-%m-%d %H:%M:%S'))
114
102
  end
115
103
 
116
104
  # metadata source
@@ -137,6 +125,7 @@ module ADIWG
137
125
  end
138
126
  end
139
127
  @html.hr
128
+ @html.br
140
129
  end
141
130
  end
142
131
  end
@@ -70,7 +70,7 @@ module ADIWG
70
70
  # contact - address
71
71
  hContact[:addresses].each do |hAddress|
72
72
  @html.div do
73
- @html.h5('Address', {'class' => 'h5'})
73
+ @html.h5('Address', {'class' => 'h5', 'style' => 'font-style: italic'})
74
74
  @html.div(:class => 'block') do
75
75
 
76
76
  # address - delivery points
@@ -119,7 +119,7 @@ module ADIWG
119
119
  # contact - phones
120
120
  hContact[:phones].each do |hPhone|
121
121
  @html.div do
122
- @html.h5('Phone', {'class' => 'h5'})
122
+ @html.h5('Phone', {'class' => 'h5', 'style' => 'font-style: italic'})
123
123
  @html.div(:class => 'block') do
124
124
 
125
125
  # phone - name
@@ -159,7 +159,7 @@ module ADIWG
159
159
  # contact - online resource []
160
160
  hContact[:onlineResources].each do |hOnline|
161
161
  @html.div do
162
- @html.h5('Online Resource', {'class' => 'h5'})
162
+ @html.h5('Online Resource', {'class' => 'h5', 'style' => 'font-style: italic'})
163
163
  @html.div(:class => 'block') do
164
164
  onlineClass.writeHtml(hOnline)
165
165
  end
@@ -169,7 +169,7 @@ module ADIWG
169
169
  # contact - logos []
170
170
  hContact[:logos].each do |hLogo|
171
171
  @html.div do
172
- @html.h5('Logo Graphic', {'class' => 'h5'})
172
+ @html.h5('Logo Graphic', {'class' => 'h5', 'style' => 'font-style: italic'})
173
173
  @html.div(:class => 'block') do
174
174
  graphicClass.writeHtml(hLogo)
175
175
  end
@@ -194,7 +194,7 @@ module ADIWG
194
194
  if hContact.key?(:externalIdentifier) && !hContact[:externalIdentifier].empty?
195
195
  hContact[:externalIdentifier].each do |identifier|
196
196
  @html.div do
197
- @html.h5("External Identifier", {'class' => 'h5'})
197
+ @html.h5("External Identifier", {'class' => 'h5', 'style' => 'font-style: italic'})
198
198
  @html.div(:class => 'block') do
199
199
  @html.em('Identifier: ')
200
200
  @html.text!(identifier[:identifier])
@@ -32,20 +32,7 @@ module ADIWG
32
32
  end
33
33
  @html.h5(type, {'class' => 'h5'})
34
34
  @html.div(:class => 'block') do
35
-
36
- # keywords
37
- @html.ul do
38
- hKeyword[:keywords].each do |hKeyword|
39
- unless hKeyword[:keyword].nil?
40
- keyword = hKeyword[:keyword]
41
- unless hKeyword[:keywordId].nil?
42
- keyword += ' (ID: ' + hKeyword[:keywordId].to_s + ')'
43
- end
44
- @html.li(keyword)
45
- end
46
- end
47
- end
48
-
35
+
49
36
  # thesaurus
50
37
  unless hKeyword[:thesaurus].empty?
51
38
  @html.div do
@@ -56,6 +43,17 @@ module ADIWG
56
43
  end
57
44
  end
58
45
 
46
+ # keywords
47
+ hKeyword[:keywords].each do |hKeyword|
48
+ unless hKeyword[:keyword].nil?
49
+ keyword = hKeyword[:keyword]
50
+ unless hKeyword[:keywordId].nil?
51
+ keyword += ' (ID: ' + hKeyword[:keywordId].to_s + ')'
52
+ end
53
+ @html.div('Keyword:' + keyword)
54
+ end
55
+ end
56
+
59
57
  end
60
58
  end
61
59
 
@@ -50,7 +50,7 @@ module ADIWG
50
50
  # metadataInfo - metadata identifier {identifier}
51
51
  unless hMetaInfo[:metadataIdentifier].empty?
52
52
  @html.div do
53
- @html.h3('Metadata Identifier', {'id' => 'metadataInfo-identifier', 'class' => 'h3'})
53
+ @html.h3('Metadata Identifier', {'id' => 'metadataInfo-identifier', 'class' => 'h3', 'style' => 'font-style: italic'})
54
54
  @html.div(:class => 'block') do
55
55
  identifierClass.writeHtml(hMetaInfo[:metadataIdentifier])
56
56
  end
@@ -60,7 +60,7 @@ module ADIWG
60
60
  # metadataInfo - parent metadata {citation}
61
61
  unless hMetaInfo[:parentMetadata].empty?
62
62
  @html.div do
63
- @html.h3('Parent Metadata', {'id' => 'metadataInfo-parent', 'class' => 'h3'})
63
+ @html.h3('Parent Metadata', {'id' => 'metadataInfo-parent', 'class' => 'h3', 'style' => 'font-style: italic'})
64
64
  @html.div(:class => 'block') do
65
65
  citationClass.writeHtml(hMetaInfo[:parentMetadata])
66
66
  end
@@ -70,7 +70,7 @@ module ADIWG
70
70
  # metadataInfo - metadata locales
71
71
  unless hMetaInfo[:defaultMetadataLocale].empty? && hMetaInfo[:otherMetadataLocales].empty?
72
72
  @html.div do
73
- @html.h3('Metadata Locales', {'id' => 'metadataInfo-locale', 'class' => 'h3'})
73
+ @html.h3('Metadata Locales', {'id' => 'metadataInfo-locale', 'class' => 'h3', 'style' => 'font-style: italic'})
74
74
  @html.div(:class => 'block') do
75
75
 
76
76
  # default metadata locales {locale}
@@ -100,7 +100,7 @@ module ADIWG
100
100
  # metadataInfo - contacts [] {responsibility}
101
101
  unless hMetaInfo[:metadataContacts].empty?
102
102
  @html.div do
103
- @html.h3('Metadata Contacts', {'id' => 'metadataInfo-contacts', 'class' => 'h3'})
103
+ @html.h3('Metadata Contacts', {'id' => 'metadataInfo-contacts', 'class' => 'h3', 'style' => 'font-style: italic'})
104
104
  @html.div(:class => 'block') do
105
105
  hMetaInfo[:metadataContacts].each do |hResponsibility|
106
106
  @html.div do
@@ -117,7 +117,7 @@ module ADIWG
117
117
  # metadataInfo - dates [] {date}
118
118
  unless hMetaInfo[:metadataDates].empty?
119
119
  @html.div do
120
- @html.h3('Metadata Dates', {'id' => 'metadataInfo-dates', 'class' => 'h3'})
120
+ @html.h3('Metadata Dates', {'id' => 'metadataInfo-dates', 'class' => 'h3', 'style' => 'font-style: italic'})
121
121
  @html.div(:class => 'block') do
122
122
  hMetaInfo[:metadataDates].each do |hDate|
123
123
  @html.em('Date: ')
@@ -131,7 +131,7 @@ module ADIWG
131
131
  # metadataInfo - linkages [] {onlineResource}
132
132
  unless hMetaInfo[:metadataLinkages].empty?
133
133
  @html.div do
134
- @html.h3('Metadata Online Resource', {'id' => 'metadataInfo-links', 'class' => 'h3'})
134
+ @html.h3('Metadata Online Resource', {'id' => 'metadataInfo-links', 'class' => 'h3', 'style' => 'font-style: italic'})
135
135
  @html.div(:class => 'block') do
136
136
  hMetaInfo[:metadataLinkages].each do |hOnline|
137
137
  @html.div do
@@ -148,7 +148,7 @@ module ADIWG
148
148
  # metadataInfo - constraints [] {constraint}
149
149
  unless hMetaInfo[:metadataConstraints].empty?
150
150
  @html.div do
151
- @html.h3('Metadata Constraints', {'id' => 'metadataInfo-constraint', 'class' => 'h3'})
151
+ @html.h3('Metadata Constraints', {'id' => 'metadataInfo-constraint', 'class' => 'h3', 'style' => 'font-style: italic'})
152
152
  @html.div(:class => 'block') do
153
153
  hMetaInfo[:metadataConstraints].each do |hConstraint|
154
154
  @html.div do
@@ -165,7 +165,7 @@ module ADIWG
165
165
  # metadataInfo - maintenance {maintenance}
166
166
  unless hMetaInfo[:metadataMaintenance].empty?
167
167
  @html.div do
168
- @html.h3('Metadata Maintenance', {'id' => 'metadataInfo-maintenance', 'class' => 'h3'})
168
+ @html.h3('Metadata Maintenance', {'id' => 'metadataInfo-maintenance', 'class' => 'h3', 'style' => 'font-style: italic'})
169
169
  @html.div(:class => 'block') do
170
170
  maintClass.writeHtml(hMetaInfo[:metadataMaintenance])
171
171
  end
@@ -175,13 +175,14 @@ module ADIWG
175
175
  # metadataInfo - alternate metadata references [] {citation}
176
176
  unless hMetaInfo[:alternateMetadataReferences].empty?
177
177
  @html.div do
178
- @html.h3('Alternate Metadata Citations', {'id' => 'metadataInfo-alternate', 'class' => 'h3'})
178
+ @html.h3('Alternate Metadata Citations', {'id' => 'metadataInfo-alternate', 'class' => 'h3', 'style' => 'font-style: italic'})
179
179
  @html.div(:class => 'block') do
180
180
  hMetaInfo[:alternateMetadataReferences].each do |hCitation|
181
181
  @html.div do
182
182
  @html.div(hCitation[:title], 'class' => 'h5')
183
183
  @html.div(:class => 'block') do
184
184
  citationClass.writeHtml(hCitation)
185
+ @html.br
185
186
  end
186
187
  end
187
188
  end
@@ -64,9 +64,7 @@ module ADIWG
64
64
  # time period - description
65
65
  unless hPeriod[:description].nil?
66
66
  @html.em('Description: ')
67
- @html.div(:class => 'block') do
68
- @html.text!(hPeriod[:description])
69
- end
67
+ @html.text!(hPeriod[:description])
70
68
  end
71
69
 
72
70
  # time period - start geologic age {geologic age}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adiwg-mdtranslator
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.19.0.pre.beta.7
4
+ version: 2.20.0.pre.beta.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stan Smith
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-03-20 00:00:00.000000000 Z
12
+ date: 2024-04-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler