adiwg-mdtranslator 2.18.4 → 2.19.0.pre.beta.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +14 -0
  3. data/Gemfile.lock +11 -9
  4. data/adiwg-mdtranslator.gemspec +3 -3
  5. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +27 -11
  6. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_dataQuality.rb +149 -0
  7. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_fgdc.rb +2 -2
  8. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_conformanceResult.rb +1 -1
  9. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_coverageResult.rb +8 -7
  10. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataQuality.rb +4 -4
  11. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataQualityReport.rb +8 -16
  12. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_evaluationMethod.rb +1 -1
  13. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_legalConstraint.rb +8 -8
  14. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_qualityMeasure.rb +34 -0
  15. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_qualityResultFile.rb +72 -0
  16. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_rangeElementDescription.rb +2 -2
  17. data/lib/adiwg/mdtranslator/readers/sbJson/modules/module_contact.rb +13 -0
  18. data/lib/adiwg/mdtranslator/version.rb +1 -1
  19. data/lib/adiwg/mdtranslator/writers/fgdc/classes/{class_quality.rb → class_dataQuality.rb} +14 -10
  20. data/lib/adiwg/mdtranslator/writers/fgdc/classes/class_fgdc.rb +3 -3
  21. data/lib/adiwg/mdtranslator/writers/html/sections/html_body.rb +5 -1
  22. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataQuality.rb +39 -18
  23. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataQualityReport.rb +385 -0
  24. data/lib/adiwg/mdtranslator/writers/html/sections/html_rangeElementDescription.rb +2 -2
  25. data/lib/adiwg/mdtranslator/writers/html/sections/html_resultFile.rb +60 -0
  26. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_dataQualityReport.rb +213 -39
  27. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_qualityResultFile.rb +55 -0
  28. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_rangeElementDescription.rb +1 -1
  29. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_allocation.rb +1 -1
  30. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageResult.rb +30 -0
  31. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQuality.rb +3 -1
  32. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQualityReport.rb +12 -10
  33. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_descriptiveResult.rb +3 -3
  34. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_funding.rb +2 -2
  35. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_legalConstraint.rb +1 -1
  36. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_metadata.rb +1 -1
  37. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_qualityMeasure.rb +4 -3
  38. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_qualityResultFile.rb +23 -0
  39. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_standaloneQualityReport.rb +31 -0
  40. data/lib/adiwg/mdtranslator/writers/sbJson/sections/sbJson_contact.rb +10 -0
  41. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_additionalDocumentation.rb +1 -1
  42. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_algorithm.rb +1 -1
  43. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_allocation.rb +1 -1
  44. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_associatedResource.rb +2 -2
  45. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_attribute.rb +2 -2
  46. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_attributeGroup.rb +1 -1
  47. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_body.rb +12 -17
  48. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_citation.rb +5 -5
  49. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_classedData.rb +1 -1
  50. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_constraint.rb +5 -5
  51. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_contact.rb +37 -5
  52. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_coverageInfo.rb +3 -3
  53. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataDictionary.rb +5 -5
  54. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQuality.rb +31 -12
  55. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQualityReport.rb +385 -0
  56. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_distribution.rb +1 -1
  57. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_distributor.rb +3 -3
  58. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_domain.rb +3 -3
  59. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_domainItem.rb +1 -1
  60. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_entity.rb +5 -5
  61. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_entityAttribute.rb +3 -3
  62. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_extent.rb +3 -3
  63. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_feature.rb +5 -5
  64. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_featureCollection.rb +4 -4
  65. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_featureProperties.rb +1 -1
  66. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_format.rb +1 -1
  67. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_funding.rb +1 -1
  68. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geodeticParameters.rb +2 -2
  69. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geographicElement.rb +4 -4
  70. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geographicExtent.rb +4 -14
  71. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geologicAge.rb +1 -1
  72. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geometryCollection.rb +4 -4
  73. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geometryObject.rb +2 -2
  74. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_georectifiedRepresentation.rb +2 -2
  75. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_georeferenceableRepresentation.rb +3 -3
  76. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_graphic.rb +2 -2
  77. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_gridRepresentation.rb +2 -2
  78. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_identifier.rb +1 -1
  79. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_imageInfo.rb +1 -1
  80. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_keyword.rb +2 -2
  81. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_metadataInfo.rb +9 -9
  82. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_metadataRepository.rb +1 -1
  83. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_processStep.rb +1 -1
  84. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_processing.rb +3 -3
  85. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_rangeElementDescription.rb +2 -2
  86. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceInfo.rb +17 -17
  87. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_responsibility.rb +1 -1
  88. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resultFile.rb +60 -0
  89. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_scope.rb +12 -12
  90. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_source.rb +2 -2
  91. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_taxonomy.rb +1 -1
  92. metadata +23 -13
  93. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_quality.rb +0 -181
  94. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_bodyScript.js +0 -317
@@ -0,0 +1,60 @@
1
+ # HTML writer
2
+ # result file
3
+
4
+ require_relative 'html_format'
5
+
6
+ module ADIWG
7
+ module Mdtranslator
8
+ module Writers
9
+ module Simple_html
10
+
11
+ class Html_ResultFile
12
+
13
+ def initialize(html)
14
+ @html = html
15
+ end
16
+
17
+ def writeHtml(hResultFile)
18
+
19
+ # classes used
20
+ formatClass = Html_Format.new(@html)
21
+
22
+
23
+ # result file - file name
24
+ unless hResultFile[:fileName].nil?
25
+ @html.em('File Name: ')
26
+ @html.text!(hResultFile[:fileName])
27
+ @html.br
28
+ end
29
+
30
+ # result file - file type
31
+ unless hResultFile[:fileType].nil?
32
+ @html.em('File Type: ')
33
+ @html.text!(hResultFile[:fileType])
34
+ @html.br
35
+ end
36
+
37
+ # result file - file description
38
+ unless hResultFile[:fileDescription].nil?
39
+ @html.em('File Description: ')
40
+ @html.text!(hResultFile[:fileDescription])
41
+ @html.br
42
+ end
43
+
44
+ # result file - file format
45
+ unless hResultFile[:fileFormat].empty?
46
+ @html.div do
47
+ @html.div(hResultFile[:fileFormat][:title], {'class' => 'h5'})
48
+ @html.div(:class => 'block') do
49
+ formatClass.writeHtml(hResultFile[:fileFormat])
50
+ end
51
+ end
52
+ end
53
+
54
+ end # writeHtml
55
+ end # Html_ResultFile
56
+
57
+ end
58
+ end
59
+ end
60
+ end
@@ -5,7 +5,7 @@
5
5
  # Stan Smith 2017-03-25 original script
6
6
 
7
7
  require_relative 'html_scopeDescription'
8
- # require_relative 'html_extent'
8
+ require_relative 'html_extent'
9
9
 
10
10
  module ADIWG
11
11
  module Mdtranslator
@@ -22,7 +22,7 @@ module ADIWG
22
22
 
23
23
  # classes used
24
24
  descriptionClass = Html_ScopeDescription.new(@html)
25
- # extentClass = Html_Extent.new(@html)
25
+ extentClass = Html_Extent.new(@html)
26
26
 
27
27
  # scope - code
28
28
  unless hScope[:scopeCode].nil?
@@ -34,22 +34,22 @@ module ADIWG
34
34
  # scope - description [] {scopeDescription}
35
35
  hScope[:scopeDescriptions].each do |hDescription|
36
36
  @html.div do
37
- @html.div('Description', {'class' => 'h5'})
37
+ @html.h5('Description', {'class' => 'h5'})
38
38
  @html.div(:class => 'block') do
39
39
  descriptionClass.writeHtml(hDescription)
40
40
  end
41
41
  end
42
42
  end
43
43
 
44
- # # scope - extent [] {extent}
45
- # hScope[:extents].each do |hExtent|
46
- # @html.div do
47
- # @html.div('Extent', {'class' => 'h5'})
48
- # @html.div(:class => 'block') do
49
- # extentClass.writeHtml(hExtent)
50
- # end
51
- # end
52
- # end
44
+ # scope - extent [] {extent}
45
+ hScope[:extents].each do |hExtent|
46
+ @html.div do
47
+ @html.h5('Extent', {'class' => 'h5'})
48
+ @html.div(:class => 'block') do
49
+ extentClass.writeHtml(hExtent)
50
+ end
51
+ end
52
+ end
53
53
 
54
54
  end # writeHtml
55
55
  end # Html_Scope
@@ -82,7 +82,7 @@ module ADIWG
82
82
  # source - spatial resolution {resolution}
83
83
  unless hSource[:spatialResolution].empty?
84
84
  @html.div do
85
- @html.div('Resolution', {'class' => 'h5'})
85
+ @html.h5('Resolution', {'class' => 'h5'})
86
86
  @html.div(:class => 'block') do
87
87
  resolutionClass.writeHtml(hSource[:spatialResolution])
88
88
  end
@@ -119,7 +119,7 @@ module ADIWG
119
119
  # source - scope {scope}
120
120
  unless hSource[:scope].empty?
121
121
  @html.div do
122
- @html.div('Scope', {'class' => 'h5'})
122
+ @html.h5('Scope', {'class' => 'h5'})
123
123
  @html.div(:class => 'block') do
124
124
  scopeClass.writeHtml(hSource[:scope])
125
125
  end
@@ -102,7 +102,7 @@ module ADIWG
102
102
  # taxonomy - observers {responsibility}
103
103
  unless hTaxonomy[:observers].empty?
104
104
  @html.div do
105
- @html.div('Observers', {'class' => 'h5'})
105
+ @html.h5('Observers', {'class' => 'h5'})
106
106
  @html.div(:class => 'block') do
107
107
  hTaxonomy[:observers].each do |hObserver|
108
108
  @html.div do
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.18.4
4
+ version: 2.19.0.pre.beta.7
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: 2023-12-07 00:00:00.000000000 Z
12
+ date: 2024-03-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -129,28 +129,28 @@ dependencies:
129
129
  requirements:
130
130
  - - '='
131
131
  - !ruby/object:Gem::Version
132
- version: 2.8.1
132
+ version: 2.9.1
133
133
  type: :runtime
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
136
136
  requirements:
137
137
  - - '='
138
138
  - !ruby/object:Gem::Version
139
- version: 2.8.1
139
+ version: 2.9.1
140
140
  - !ruby/object:Gem::Dependency
141
141
  name: adiwg-mdcodes
142
142
  requirement: !ruby/object:Gem::Requirement
143
143
  requirements:
144
144
  - - '='
145
145
  - !ruby/object:Gem::Version
146
- version: 2.8.4
146
+ version: 2.9.2
147
147
  type: :runtime
148
148
  prerelease: false
149
149
  version_requirements: !ruby/object:Gem::Requirement
150
150
  requirements:
151
151
  - - '='
152
152
  - !ruby/object:Gem::Version
153
- version: 2.8.4
153
+ version: 2.9.2
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: jbuilder
156
156
  requirement: !ruby/object:Gem::Requirement
@@ -205,14 +205,14 @@ dependencies:
205
205
  requirements:
206
206
  - - "~>"
207
207
  - !ruby/object:Gem::Version
208
- version: '1.7'
208
+ version: '1.15'
209
209
  type: :runtime
210
210
  prerelease: false
211
211
  version_requirements: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - "~>"
214
214
  - !ruby/object:Gem::Version
215
- version: '1.7'
215
+ version: '1.15'
216
216
  description: The mdtranslator was written by the Alaska Data Integration Working Group
217
217
  (ADIwg) to assist with creating ISO 19139 metadata records. Input to the mdtranslator
218
218
  is JSON conforming to the mdJson-schema. The mdtranslator architecture allows developers
@@ -226,6 +226,7 @@ executables:
226
226
  extensions: []
227
227
  extra_rdoc_files: []
228
228
  files:
229
+ - ".github/workflows/test.yml"
229
230
  - ".gitignore"
230
231
  - ".gitmodules"
231
232
  - ".jsbeautifyrc"
@@ -279,6 +280,7 @@ files:
279
280
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_citation.rb
280
281
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_codeSet.rb
281
282
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_contact.rb
283
+ - lib/adiwg/mdtranslator/readers/fgdc/modules/module_dataQuality.rb
282
284
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_date.rb
283
285
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_dateTime.rb
284
286
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_digitalForm.rb
@@ -310,7 +312,6 @@ files:
310
312
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_pointVector.rb
311
313
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_process.rb
312
314
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_publication.rb
313
- - lib/adiwg/mdtranslator/readers/fgdc/modules/module_quality.rb
314
315
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_range.rb
315
316
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_raster.rb
316
317
  - lib/adiwg/mdtranslator/readers/fgdc/modules/module_responsibility.rb
@@ -410,6 +411,8 @@ files:
410
411
  - lib/adiwg/mdtranslator/readers/mdJson/modules/module_processStep.rb
411
412
  - lib/adiwg/mdtranslator/readers/mdJson/modules/module_processing.rb
412
413
  - lib/adiwg/mdtranslator/readers/mdJson/modules/module_projectionParameters.rb
414
+ - lib/adiwg/mdtranslator/readers/mdJson/modules/module_qualityMeasure.rb
415
+ - lib/adiwg/mdtranslator/readers/mdJson/modules/module_qualityResultFile.rb
413
416
  - lib/adiwg/mdtranslator/readers/mdJson/modules/module_quantitativeResult.rb
414
417
  - lib/adiwg/mdtranslator/readers/mdJson/modules/module_rangeElementDescription.rb
415
418
  - lib/adiwg/mdtranslator/readers/mdJson/modules/module_referenceSystemParameters.rb
@@ -478,6 +481,7 @@ files:
478
481
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_constraint.rb
479
482
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_contact.rb
480
483
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_dataDomain.rb
484
+ - lib/adiwg/mdtranslator/writers/fgdc/classes/class_dataQuality.rb
481
485
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_dateRange.rb
482
486
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_dateSingle.rb
483
487
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_description.rb
@@ -510,7 +514,6 @@ files:
510
514
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_planarReference.rb
511
515
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_process.rb
512
516
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_publisher.rb
513
- - lib/adiwg/mdtranslator/writers/fgdc/classes/class_quality.rb
514
517
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_security.rb
515
518
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_series.rb
516
519
  - lib/adiwg/mdtranslator/writers/fgdc/classes/class_source.rb
@@ -550,6 +553,7 @@ files:
550
553
  - lib/adiwg/mdtranslator/writers/html/sections/html_coverageInfo.rb
551
554
  - lib/adiwg/mdtranslator/writers/html/sections/html_dataDictionary.rb
552
555
  - lib/adiwg/mdtranslator/writers/html/sections/html_dataQuality.rb
556
+ - lib/adiwg/mdtranslator/writers/html/sections/html_dataQualityReport.rb
553
557
  - lib/adiwg/mdtranslator/writers/html/sections/html_date.rb
554
558
  - lib/adiwg/mdtranslator/writers/html/sections/html_datetime.rb
555
559
  - lib/adiwg/mdtranslator/writers/html/sections/html_dimension.rb
@@ -608,6 +612,7 @@ files:
608
612
  - lib/adiwg/mdtranslator/writers/html/sections/html_resourceInfo.rb
609
613
  - lib/adiwg/mdtranslator/writers/html/sections/html_resourceType.rb
610
614
  - lib/adiwg/mdtranslator/writers/html/sections/html_responsibility.rb
615
+ - lib/adiwg/mdtranslator/writers/html/sections/html_resultFile.rb
611
616
  - lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb
612
617
  - lib/adiwg/mdtranslator/writers/html/sections/html_scopeDescription.rb
613
618
  - lib/adiwg/mdtranslator/writers/html/sections/html_securityConstraint.rb
@@ -833,6 +838,7 @@ files:
833
838
  - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_processReport.rb
834
839
  - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_processStep.rb
835
840
  - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_processing.rb
841
+ - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_qualityResultFile.rb
836
842
  - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_rangeDimension.rb
837
843
  - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_rangeElementDescription.rb
838
844
  - lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_referenceSystem.rb
@@ -878,6 +884,7 @@ files:
878
884
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageDescription.rb
879
885
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageInfo.rb
880
886
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageItem.rb
887
+ - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageResult.rb
881
888
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQuality.rb
882
889
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQualityReport.rb
883
890
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_date.rb
@@ -932,6 +939,7 @@ files:
932
939
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_processing.rb
933
940
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_projectionParameters.rb
934
941
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_qualityMeasure.rb
942
+ - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_qualityResultFile.rb
935
943
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_quantitativeResult.rb
936
944
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_releasability.rb
937
945
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_repository.rb
@@ -947,6 +955,7 @@ files:
947
955
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialReferenceParameters.rb
948
956
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialRepresentation.rb
949
957
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialResolution.rb
958
+ - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_standaloneQualityReport.rb
950
959
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxonomicClassification.rb
951
960
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxonomicSystem.rb
952
961
  - lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxonomy.rb
@@ -998,7 +1007,6 @@ files:
998
1007
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_attributeGroup.rb
999
1008
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_bearingDistanceResolution.rb
1000
1009
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_body.rb
1001
- - lib/adiwg/mdtranslator/writers/simple_html/sections/html_bodyScript.js
1002
1010
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_boundingBox.rb
1003
1011
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_citation.rb
1004
1012
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_classedData.rb
@@ -1009,6 +1017,7 @@ files:
1009
1017
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_coverageInfo.rb
1010
1018
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataDictionary.rb
1011
1019
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQuality.rb
1020
+ - lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQualityReport.rb
1012
1021
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_date.rb
1013
1022
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_datetime.rb
1014
1023
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_dimension.rb
@@ -1067,6 +1076,7 @@ files:
1067
1076
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceInfo.rb
1068
1077
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceType.rb
1069
1078
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_responsibility.rb
1079
+ - lib/adiwg/mdtranslator/writers/simple_html/sections/html_resultFile.rb
1070
1080
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_scope.rb
1071
1081
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_scopeDescription.rb
1072
1082
  - lib/adiwg/mdtranslator/writers/simple_html/sections/html_securityConstraint.rb
@@ -1104,9 +1114,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
1104
1114
  version: '2.3'
1105
1115
  required_rubygems_version: !ruby/object:Gem::Requirement
1106
1116
  requirements:
1107
- - - ">="
1117
+ - - ">"
1108
1118
  - !ruby/object:Gem::Version
1109
- version: '0'
1119
+ version: 1.3.1
1110
1120
  requirements: []
1111
1121
  rubygems_version: 3.1.6
1112
1122
  signing_key:
@@ -1,181 +0,0 @@
1
- # Reader - fgdc to internal data structure
2
- # unpack fgdc data quality
3
-
4
- # History:
5
- # Stan Smith 2017-08-15 original script
6
-
7
- require 'nokogiri'
8
- require 'adiwg/mdtranslator/internal/internal_metadata_obj'
9
- require_relative 'module_lineage'
10
-
11
- module ADIWG
12
- module Mdtranslator
13
- module Readers
14
- module Fgdc
15
-
16
- module Quality
17
-
18
- def self.unpack(xDataQual, hMetadata, hDataQuality, hResponseObj)
19
-
20
- hDataQuality[:scope] = {scopeCode: 'tabularDataset'}
21
- hDataQuality[:systemIdentifier] = {
22
- uid: UUIDTools::UUID.random_create.to_s,
23
- label: "CSDGM Data Quality"
24
- }
25
-
26
-
27
- # data quality 2.1 (attracc) - attribute accuracy
28
- xAccuracy = xDataQual.xpath('./attracc')
29
- accuracyReport = xAccuracy.xpath('./attraccr').text
30
- hDataQuality[:report] << {
31
- type: 'DQ_NonQuantitativeAttributeCompleteness',
32
- descriptiveResult: [ {statement: accuracyReport} ]
33
- }
34
-
35
- # data quality 2.1 (qattracc) - Quantitative Attribute Accuracy Assessment
36
-
37
- xQuantitativeAccuracy = xDataQual.xpath('./qattracc')
38
- unless xQuantitativeAccuracy.xpath('./attraccv').empty?
39
- hDataQuality[:report] << {
40
- type: 'DQ_QuantitativeAttributeAccuracy',
41
- quantitativeResult: [{
42
- value: xQuantitativeAccuracy.xpath('./attraccv').text
43
- }]
44
- }
45
- end
46
-
47
- # data quality 2.2 (logic) - logical consistency (required) (not implemented)
48
- xLogic = xDataQual.xpath('./logic')
49
- if xLogic.empty?
50
- hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: data quality logical consistency section is missing'
51
- else
52
- logic = xLogic.text
53
- hDataQuality[:report] << {
54
- type: 'DQ_ConceptualConsistency',
55
- qualityMeasure: {
56
- description: logic
57
- }
58
- }
59
- end
60
-
61
- # data quality 2.3 (complete) - completion report (required)
62
- xComplete = xDataQual.xpath('./complete')
63
- if xComplete.empty?
64
- hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: data quality completion report section is missing'
65
- else
66
- complete = xComplete.text
67
- hDataQuality[:report] << {
68
- type: 'DQ_CompletenessOmission',
69
- descriptiveResult: [{
70
- statement: complete
71
- }]
72
- }
73
- end
74
-
75
- # data quality 2.4 (position) - positional accuracy
76
- xPositionalAccuracy = xDataQual.xpath('./posacc')
77
- unless xPositionalAccuracy.empty?
78
-
79
- # horizontal positional accuracy
80
- xHorizontal = xPositionalAccuracy.xpath('./horizpa')
81
- unless xHorizontal.empty?
82
-
83
- report = {}
84
-
85
- unless xHorizontal.xpath('horizpar').empty?
86
- report[:evaluationMethod] = {
87
- methodDescription: xHorizontal.xpath('horizpar').text
88
- }
89
- end
90
-
91
- unless xHorizontal.xpath('qhorizpa/horizpae').empty?
92
- report[:qualityMeasure] = {
93
- description: xHorizontal.xpath('qhorizpa/horizpae').text
94
- }
95
- end
96
-
97
- unless xHorizontal.xpath('qhorizpa/horizpav').empty?
98
- report[:quantitativeResult] = [{
99
- value: [ xHorizontal.xpath('qhorizpa/horizpav').text ]
100
- }]
101
- end
102
-
103
- unless report.empty?
104
- if report[:qualityMeasure].nil?
105
- report[:qualityMeasure] = {
106
- name: ['Horizontal Positional Accuracy Report']
107
- }
108
- else
109
- report[:qualityMeasure][:name] = ['Horizontal Positional Accuracy Report']
110
- end
111
-
112
- report[:type] = 'DQ_AbsoluteExternalPositionalAccuracy'
113
-
114
- hDataQuality[:report] << report
115
- end
116
- end
117
-
118
- # vertical positional accuracy
119
- xVertical = xPositionalAccuracy.xpath('./vertacc')
120
- unless xVertical.empty?
121
-
122
- report = {}
123
-
124
- unless xVertical.xpath('vertaccr').empty?
125
- report[:evaluationMethod] = {
126
- methodDescription: xVertical.xpath('vertaccr').text
127
- }
128
- end
129
-
130
- unless xVertical.xpath('qvertpa/vertacce').empty?
131
- report[:qualityMeasure] = {
132
- description: xVertical.xpath('qvertpa/vertacce').text
133
- }
134
- end
135
-
136
- unless xVertical.xpath('qvertpa/vertaccv').empty?
137
- report[:quantitativeResult] = [{
138
- value: [ xVertical.xpath('qvertpa/vertaccv').text ]
139
- }]
140
- end
141
-
142
- unless report.empty?
143
- if report[:qualityMeasure].nil?
144
- report[:qualityMeasure] = {
145
- name: ['Vertical Positional Accuracy Report']
146
- }
147
- else
148
- report[:qualityMeasure][:name] = ['Vertical Positional Accuracy Report']
149
- end
150
-
151
- report[:type] = 'DQ_AbsoluteExternalPositionalAccuracy'
152
-
153
- hDataQuality[:report] << report
154
- end
155
- end
156
- end
157
-
158
- # data quality 2.5 (lineage) - lineage (required)
159
- xLineage = xDataQual.xpath('./lineage')
160
- unless xLineage.empty?
161
- hLineage = Lineage.unpack(xLineage, hResponseObj)
162
- unless hLineage.nil?
163
- hMetadata[:lineageInfo] << hLineage
164
- end
165
- end
166
- if xLineage.nil?
167
- hResponseObj[:readerExecutionMessages] << 'WARNING: FGDC reader: data quality lineage section is missing'
168
- end
169
-
170
- # data quality 2.6 (cloud) - cloud cover (not implemented)
171
-
172
- return hDataQuality
173
-
174
- end
175
-
176
- end
177
-
178
- end
179
- end
180
- end
181
- end