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

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 (249) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yml +14 -0
  3. data/.gitignore +2 -1
  4. data/Gemfile.lock +86 -0
  5. data/Rakefile +1 -1
  6. data/adiwg-mdtranslator.gemspec +6 -6
  7. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +27 -11
  8. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_dataQuality.rb +149 -0
  9. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_fgdc.rb +2 -2
  10. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_conformanceResult.rb +1 -1
  11. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_coverageResult.rb +8 -7
  12. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataQuality.rb +4 -4
  13. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataQualityReport.rb +8 -16
  14. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_evaluationMethod.rb +1 -1
  15. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_legalConstraint.rb +8 -8
  16. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_qualityMeasure.rb +34 -0
  17. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_qualityResultFile.rb +72 -0
  18. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_rangeElementDescription.rb +2 -2
  19. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_responsibleParty.rb +1 -1
  20. data/lib/adiwg/mdtranslator/readers/sbJson/modules/module_contact.rb +13 -0
  21. data/lib/adiwg/mdtranslator/version.rb +1 -1
  22. data/lib/adiwg/mdtranslator/writers/fgdc/classes/{class_quality.rb → class_dataQuality.rb} +14 -10
  23. data/lib/adiwg/mdtranslator/writers/fgdc/classes/class_fgdc.rb +3 -3
  24. data/lib/adiwg/mdtranslator/writers/html/sections/html_body.rb +5 -1
  25. data/lib/adiwg/mdtranslator/writers/html/sections/html_contact.rb +32 -0
  26. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataQuality.rb +39 -18
  27. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataQualityReport.rb +385 -0
  28. data/lib/adiwg/mdtranslator/writers/html/sections/html_rangeElementDescription.rb +2 -2
  29. data/lib/adiwg/mdtranslator/writers/html/sections/html_resultFile.rb +60 -0
  30. data/lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb +18 -10
  31. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_additionalDocument.rb +3 -3
  32. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_address.rb +4 -4
  33. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_algorithm.rb +4 -4
  34. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_associatedResource.rb +4 -4
  35. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_attribute.rb +4 -4
  36. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_attributeGroup.rb +4 -4
  37. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_baseUnit.rb +2 -2
  38. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_boundingBox.rb +4 -4
  39. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_browseGraphic.rb +4 -4
  40. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_citation.rb +4 -4
  41. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_codelist.rb +2 -2
  42. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_constraint.rb +4 -4
  43. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_constraintCommon.rb +2 -2
  44. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_contact.rb +3 -3
  45. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_conventionalUnit.rb +2 -2
  46. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_coverageDescription.rb +3 -3
  47. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_dataIdentification.rb +5 -5
  48. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_dataQuality.rb +9 -2
  49. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_dataQualityReport.rb +269 -0
  50. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_date.rb +4 -4
  51. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_definitionUnit.rb +2 -2
  52. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_derivedUnit.rb +2 -2
  53. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_dimension.rb +4 -4
  54. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_distribution.rb +2 -2
  55. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_distributor.rb +4 -4
  56. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_email.rb +2 -2
  57. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_extent.rb +2 -2
  58. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_feature.rb +4 -4
  59. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_featureCatalog.rb +3 -3
  60. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_featureCollection.rb +2 -2
  61. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_featureProperties.rb +2 -2
  62. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_format.rb +4 -4
  63. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_fraction.rb +4 -4
  64. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_gcoDateTime.rb +2 -2
  65. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_geographicElement.rb +4 -4
  66. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_geographicExtent.rb +2 -2
  67. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_geometricObjects.rb +3 -3
  68. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_geometryCollection.rb +4 -4
  69. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_georectified.rb +4 -4
  70. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_georeferenceable.rb +4 -4
  71. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_gmlIdentifier.rb +2 -2
  72. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_grid.rb +4 -4
  73. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_gridRepresentation.rb +1 -1
  74. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_identifier.rb +4 -4
  75. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_imageDescription.rb +2 -2
  76. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_individual.rb +4 -4
  77. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_keyword.rb +4 -4
  78. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_leProcessStep.rb +4 -4
  79. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_leSource.rb +2 -2
  80. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_legalConstraints.rb +3 -3
  81. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_liProcessStep.rb +4 -4
  82. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_liSource.rb +2 -2
  83. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_lineString.rb +2 -2
  84. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_lineage.rb +2 -2
  85. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_locale.rb +4 -4
  86. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_maintenance.rb +4 -4
  87. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_mdBand.rb +2 -2
  88. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_mdMetadata.rb +7 -7
  89. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_measure.rb +4 -4
  90. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_medium.rb +2 -2
  91. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_miBand.rb +2 -2
  92. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_multiLine.rb +2 -2
  93. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_multiPoint.rb +2 -2
  94. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_multiPolygon.rb +2 -2
  95. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_nominalResolution.rb +4 -4
  96. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_onlineResource.rb +4 -4
  97. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_orderProcess.rb +2 -2
  98. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_organization.rb +4 -4
  99. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_partyIdentifier.rb +4 -4
  100. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_phone.rb +3 -3
  101. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_point.rb +2 -2
  102. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_polygon.rb +2 -2
  103. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_processReport.rb +4 -4
  104. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_processStep.rb +2 -2
  105. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_processing.rb +4 -4
  106. data/lib/adiwg/mdtranslator/writers/iso19115_3/classes/class_qualityResultFile.rb +55 -0
  107. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_rangeDimension.rb +4 -4
  108. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_rangeElementDescription.rb +5 -5
  109. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_referenceSystem.rb +3 -3
  110. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_releasability.rb +2 -2
  111. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_resolution.rb +2 -2
  112. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_responsibility.rb +4 -4
  113. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_sampleDimension.rb +4 -4
  114. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_scope.rb +4 -4
  115. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_scopeDescription.rb +2 -2
  116. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_securityConstraints.rb +4 -4
  117. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_series.rb +2 -2
  118. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_source.rb +2 -2
  119. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_spatialRepresentation.rb +2 -2
  120. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_temporalExtent.rb +2 -2
  121. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_timeInstant.rb +2 -2
  122. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_timePeriod.rb +2 -2
  123. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_transferOptions.rb +2 -2
  124. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_unitsOfMeasure.rb +2 -2
  125. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_usage.rb +4 -4
  126. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_useConstraints.rb +2 -2
  127. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_vectorRepresentation.rb +2 -2
  128. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/classes/class_verticalExtent.rb +4 -4
  129. data/lib/adiwg/mdtranslator/writers/{iso19115_1/iso19115_1_writer.rb → iso19115_3/iso19115_3_writer.rb} +10 -10
  130. data/lib/adiwg/mdtranslator/writers/{iso19115_1/iso19115_1_writer_messages_eng.yml → iso19115_3/iso19115_3_writer_messages_eng.yml} +1 -1
  131. data/lib/adiwg/mdtranslator/writers/{iso19115_1 → iso19115_3}/readme.md +3 -3
  132. data/lib/adiwg/mdtranslator/writers/iso19115_3/version.rb +12 -0
  133. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_allocation.rb +1 -1
  134. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageResult.rb +30 -0
  135. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQuality.rb +3 -1
  136. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQualityReport.rb +12 -10
  137. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_descriptiveResult.rb +3 -3
  138. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_funding.rb +2 -2
  139. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_legalConstraint.rb +1 -1
  140. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_metadata.rb +1 -1
  141. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_qualityMeasure.rb +4 -3
  142. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_qualityResultFile.rb +23 -0
  143. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_standaloneQualityReport.rb +31 -0
  144. data/lib/adiwg/mdtranslator/writers/sbJson/sections/sbJson_contact.rb +10 -0
  145. data/lib/adiwg/mdtranslator/writers/simple_html/readme.md +19 -0
  146. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_additionalDocumentation.rb +49 -0
  147. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_algorithm.rb +48 -0
  148. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_allocation.rb +114 -0
  149. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_associatedResource.rb +73 -0
  150. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_attribute.rb +201 -0
  151. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_attributeGroup.rb +51 -0
  152. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_bearingDistanceResolution.rb +68 -0
  153. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_body.rb +319 -0
  154. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_boundingBox.rb +69 -0
  155. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_citation.rb +165 -0
  156. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_classedData.rb +50 -0
  157. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_classedDataItem.rb +50 -0
  158. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_constraint.rb +118 -0
  159. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_contact.rb +234 -0
  160. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_coordinateResolution.rb +47 -0
  161. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_coverageInfo.rb +81 -0
  162. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataDictionary.rb +126 -0
  163. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQuality.rb +79 -0
  164. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dataQualityReport.rb +385 -0
  165. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_date.rb +42 -0
  166. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_datetime.rb +42 -0
  167. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_dimension.rb +69 -0
  168. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_distribution.rb +58 -0
  169. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_distributor.rb +66 -0
  170. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_document.rb +63 -0
  171. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_domain.rb +108 -0
  172. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_domainItem.rb +64 -0
  173. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_duration.rb +68 -0
  174. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_entity.rb +169 -0
  175. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_entityAttribute.rb +179 -0
  176. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_entityForeignKey.rb +55 -0
  177. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_entityIndex.rb +50 -0
  178. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_extent.rb +75 -0
  179. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_feature.rb +97 -0
  180. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_featureCollection.rb +82 -0
  181. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_featureProperties.rb +71 -0
  182. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_format.rb +66 -0
  183. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_funding.rb +60 -0
  184. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geodeticParameters.rb +71 -0
  185. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geographicElement.rb +79 -0
  186. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geographicExtent.rb +110 -0
  187. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geographicResolution.rb +47 -0
  188. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geologicAge.rb +71 -0
  189. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geometryCollection.rb +78 -0
  190. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_geometryObject.rb +46 -0
  191. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_georectifiedRepresentation.rb +105 -0
  192. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_georeferenceableRepresentation.rb +91 -0
  193. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_graphic.rb +75 -0
  194. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_gridRepresentation.rb +76 -0
  195. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_head.rb +55 -0
  196. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_identifier.rb +81 -0
  197. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_imageInfo.rb +102 -0
  198. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_inlineCss.css +237 -0
  199. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_keyword.rb +68 -0
  200. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_legalConstraint.rb +49 -0
  201. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_lineage.rb +87 -0
  202. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_locale.rb +47 -0
  203. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_maintenance.rb +96 -0
  204. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_measure.rb +47 -0
  205. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_medium.rb +90 -0
  206. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_metadataInfo.rb +198 -0
  207. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_metadataRepository.rb +56 -0
  208. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_nominalResolution.rb +51 -0
  209. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_obliqueLinePoint.rb +37 -0
  210. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_onlineResource.rb +74 -0
  211. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_orderProcess.rb +62 -0
  212. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_processReport.rb +47 -0
  213. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_processStep.rb +171 -0
  214. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_processing.rb +89 -0
  215. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_projectionParameters.rb +261 -0
  216. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_rangeElementDescription.rb +40 -0
  217. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_referenceSystemParameters.rb +65 -0
  218. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_releasability.rb +63 -0
  219. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceFormat.rb +40 -0
  220. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceInfo.rb +485 -0
  221. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resourceType.rb +38 -0
  222. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_responsibility.rb +81 -0
  223. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_resultFile.rb +60 -0
  224. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_scope.rb +60 -0
  225. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_scopeDescription.rb +54 -0
  226. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_securityConstraint.rb +57 -0
  227. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_source.rb +155 -0
  228. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_spatialReference.rb +70 -0
  229. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_spatialRepresentation.rb +77 -0
  230. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_spatialResolution.rb +95 -0
  231. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_taxonomy.rb +156 -0
  232. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_taxonomyClass.rb +75 -0
  233. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_temporalExtent.rb +65 -0
  234. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_timeInstant.rb +82 -0
  235. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_timeInterval.rb +40 -0
  236. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_timePeriod.rb +128 -0
  237. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_transferOption.rb +94 -0
  238. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_usage.rb +118 -0
  239. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_vectorObject.rb +40 -0
  240. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_vectorRepresentation.rb +62 -0
  241. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_verticalDatumParameters.rb +70 -0
  242. data/lib/adiwg/mdtranslator/writers/simple_html/sections/html_verticalExtent.rb +62 -0
  243. data/lib/adiwg/mdtranslator/writers/simple_html/simple_html_writer.rb +44 -0
  244. data/lib/adiwg/mdtranslator/writers/simple_html/version.rb +19 -0
  245. data/lib/adiwg/mdtranslator_cli.rb +2 -2
  246. metadata +241 -125
  247. data/lib/adiwg/mdtranslator/readers/fgdc/modules/module_quality.rb +0 -181
  248. data/lib/adiwg/mdtranslator/writers/iso19115_1/classes/class_dataQualityReport.rb +0 -95
  249. data/lib/adiwg/mdtranslator/writers/iso19115_1/version.rb +0 -15
@@ -0,0 +1,68 @@
1
+ # HTML writer
2
+ # bearing distance resolution
3
+
4
+ # History:
5
+ # Stan Smith 2017-10-20 original script
6
+
7
+ module ADIWG
8
+ module Mdtranslator
9
+ module Writers
10
+ module Simple_html
11
+
12
+ class Html_BearingDistanceResolution
13
+
14
+ def initialize(html)
15
+ @html = html
16
+ end
17
+
18
+ def writeHtml(hBearRes)
19
+
20
+ # bearing distance resolution - distance resolution
21
+ unless hBearRes[:distanceResolution].nil?
22
+ @html.em('Distance Resolution: ')
23
+ @html.text!(hBearRes[:distanceResolution].to_s)
24
+ @html.br
25
+ end
26
+
27
+ # bearing distance resolution - distance unit of measure
28
+ unless hBearRes[:distanceUnitOfMeasure].nil?
29
+ @html.em('Distance Unit of Measure: ')
30
+ @html.text!(hBearRes[:distanceUnitOfMeasure])
31
+ @html.br
32
+ end
33
+
34
+ # bearing distance resolution - bearing resolution
35
+ unless hBearRes[:bearingResolution].nil?
36
+ @html.em('Bearing Resolution: ')
37
+ @html.text!(hBearRes[:bearingResolution].to_s)
38
+ @html.br
39
+ end
40
+
41
+ # bearing distance resolution - bearing unit of measure
42
+ unless hBearRes[:bearingUnitOfMeasure].nil?
43
+ @html.em('Bearing Unit of Measure: ')
44
+ @html.text!(hBearRes[:bearingUnitOfMeasure])
45
+ @html.br
46
+ end
47
+
48
+ # bearing distance resolution - bearing reference direction
49
+ unless hBearRes[:bearingReferenceDirection].nil?
50
+ @html.em('Bearing Reference Direction: ')
51
+ @html.text!(hBearRes[:bearingReferenceDirection])
52
+ @html.br
53
+ end
54
+
55
+ # bearing distance resolution - bearing reference meridian
56
+ unless hBearRes[:bearingReferenceMeridian].nil?
57
+ @html.em('Bearing Reference Meridian: ')
58
+ @html.text!(hBearRes[:bearingReferenceMeridian])
59
+ @html.br
60
+ end
61
+
62
+ end # writeHtml
63
+ end # Html_BearingDistanceResolution
64
+
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,319 @@
1
+ # HTML writer
2
+ # html body
3
+
4
+ # History:
5
+ # Stan Smith 2018-01-19 add resource citation title to report header
6
+ # Stan Smith 2017-03-22 refactor for mdTranslator 2.0
7
+ # Stan Smith 2015-07-20 moved mdTranslator logo to html_inlineCss.css
8
+ # Stan Smith 2015-07-16 refactored to remove global namespace $HtmlNS
9
+ # Stan Smith 2014-04-10 add open and close buttons
10
+ # Stan Smith 2015-03-23 original script
11
+
12
+ require_relative 'html_contact'
13
+ require_relative 'html_metadataInfo'
14
+ require_relative 'html_resourceInfo'
15
+ require_relative 'html_dataQuality'
16
+ require_relative 'html_lineage'
17
+ require_relative 'html_distribution'
18
+ require_relative 'html_associatedResource'
19
+ require_relative 'html_additionalDocumentation'
20
+ require_relative 'html_funding'
21
+ require_relative 'html_dataDictionary'
22
+ require_relative 'html_metadataRepository'
23
+
24
+ module ADIWG
25
+ module Mdtranslator
26
+ module Writers
27
+ module Simple_html
28
+
29
+ class Html_Body
30
+
31
+ def initialize(html)
32
+ @html = html
33
+ end
34
+
35
+ def writeHtml(version, intObj)
36
+ @html.body do
37
+
38
+ # classes used
39
+ metaInfoClass = Html_MetadataInfo.new(@html)
40
+ contactClass = Html_Contact.new(@html)
41
+ resourceClass = Html_ResourceInfo.new(@html)
42
+ dataQualityClass = Html_DataQuality.new(@html)
43
+ lineageClass = Html_Lineage.new(@html)
44
+ distributionClass = Html_Distribution.new(@html)
45
+ associatedClass = Html_AssociatedResource.new(@html)
46
+ additionalClass = Html_AdditionalDocumentation.new(@html)
47
+ fundingClass = Html_Funding.new(@html)
48
+ dictionaryClass = Html_DataDictionary.new(@html)
49
+ repositoryClass = Html_Repository.new(@html)
50
+
51
+ # make sections of the internal data store convenient
52
+ hSchema = intObj[:schema]
53
+ aContacts = intObj[:contacts]
54
+ hMetaInfo = intObj[:metadata][:metadataInfo]
55
+ hResourceInfo = intObj[:metadata][:resourceInfo]
56
+ aDataQuality = intObj[:metadata][:dataQuality]
57
+ aLineage = intObj[:metadata][:lineageInfo]
58
+ aDistribution = intObj[:metadata][:distributorInfo]
59
+ aAssociated = intObj[:metadata][:associatedResources]
60
+ aAdditional = intObj[:metadata][:additionalDocuments]
61
+ aFunding = intObj[:metadata][:funding]
62
+ aDictionaries = intObj[:dataDictionaries]
63
+ aRepositories = intObj[:metadataRepositories]
64
+
65
+ # set page title and logo
66
+ # side navigation
67
+ @html.div('id' => 'sideNav') do
68
+
69
+ # add section buttons
70
+ @html.a(' Top', {'href' => '#', 'class' => 'btn'})
71
+ @html.a(' Contacts', {'href' => '#body-contacts', 'class' => 'btn navBtn', 'id' => 'contactButton'})
72
+ @html.a(' Metadata', {'href' => '#body-metadataInfo', 'class' => 'btn navBtn', 'id' => 'metadataButton'})
73
+ @html.a(' Resource', {'href' => '#body-resourceInfo', 'class' => 'btn navBtn', 'id' => 'resourceButton'})
74
+ @html.a(' Lineage', {'href' => '#body-lineage', 'class' => 'btn navBtn', 'id' => 'lineageButton'})
75
+ @html.a(' Distribution', {'href' => '#body-distribution', 'class' => 'btn navBtn', 'id' => 'distributionButton'})
76
+ @html.a(' Associated', {'href' => '#body-associatedResource', 'class' => 'btn navBtn', 'id' => 'associatedButton'})
77
+ @html.a(' Additional', {'href' => '#body-additionalDocument', 'class' => 'btn navBtn', 'id' => 'additionalButton'})
78
+ @html.a(' Dictionary', {'href' => '#body-dataDictionary', 'class' => 'btn navBtn', 'id' => 'dictionaryButton'})
79
+ @html.a(' Funding', {'href' => '#body-funding', 'class' => 'btn navBtn', 'id' => 'fundingButton'})
80
+ @html.a(' Repository', {'href' => '#body-repository', 'class' => 'btn navBtn', 'id' => 'repositoryButton'})
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
+ end
87
+
88
+ # main header
89
+ @html.h2('id' => 'mainHeader') do
90
+ # 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
+ end
95
+
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
+ # resource citation title
102
+ unless hResourceInfo.empty?
103
+ unless hResourceInfo[:citation].empty?
104
+ unless hResourceInfo[:citation][:title].nil?
105
+ @html.h2(hResourceInfo[:citation][:title])
106
+ end
107
+ end
108
+ end
109
+
110
+ # report date
111
+ @html.div(:class => 'block') do
112
+ @html.em('Report Generated:')
113
+ @html.text!(Time.new.inspect)
114
+ end
115
+
116
+ # metadata source
117
+ @html.h3('Metadata Source', 'id' => 'metadataSource')
118
+ @html.div(:class => 'block') do
119
+ @html.em('Metadata schema:')
120
+ @html.text!(hSchema[:name])
121
+ @html.br
122
+
123
+ @html.em('Schema version:')
124
+ @html.text!(hSchema[:version])
125
+ end
126
+ @html.hr
127
+
128
+ # contacts [] section
129
+ unless aContacts.empty?
130
+ @html.div do
131
+ @html.h2('Contacts', {'id' => 'body-contacts', 'class' => 'h2'})
132
+ @html.span('', {'style' => 'mso-bookmark:body-contacts'})
133
+ @html.div(:class => 'block') do
134
+ aContacts.each do |hContact|
135
+ @html.div(:class => 'block') do
136
+ contactClass.writeHtml(hContact)
137
+ end
138
+ end
139
+ @html.hr
140
+ end
141
+ end
142
+ end
143
+
144
+ # metadata information section
145
+ unless hMetaInfo.empty?
146
+ @html.div do
147
+ @html.h2('Metadata Information', {'id' => 'body-metadataInfo', 'class' => 'h2'})
148
+ @html.span('', {'style' => 'mso-bookmark:body-metadataInfo'})
149
+ @html.div(:class => 'block') do
150
+ @html.div(:class => 'block') do
151
+ metaInfoClass.writeHtml(hMetaInfo)
152
+ end
153
+ end
154
+ @html.hr
155
+ end
156
+ end
157
+
158
+ # resource information section
159
+ unless hResourceInfo.empty?
160
+ @html.div do
161
+ @html.h2('Resource Information', {'id' => 'body-resourceInfo', 'class' => 'h2'})
162
+ @html.span('', {'style' => 'mso-bookmark:body-resourceInfo'})
163
+ @html.div(:class => 'block') do
164
+ resourceClass.writeHtml(hResourceInfo)
165
+ end
166
+ @html.hr
167
+ end
168
+ end
169
+
170
+ unless aDataQuality.nil? || aDataQuality.empty?
171
+ @html.div do
172
+ @html.h2('Data Quality', {'id' => 'body-dataQuality', 'class' => 'h2'})
173
+ @html.span('', {'style' => 'mso-bookmark:body-dataQuality'})
174
+ aDataQuality.each do |hDataQuality|
175
+ @html.div(:class => 'block') do
176
+ dataQualityClass.writeHtml(hDataQuality)
177
+ end
178
+ end
179
+ end
180
+ end
181
+
182
+ # lineage section
183
+ unless aLineage.empty?
184
+ @html.div do
185
+ @html.h2('Resource Lineage', {'id' => 'body-lineage', 'class' => 'h2'})
186
+ @html.span('', {'style' => 'mso-bookmark:body-lineage'})
187
+ @html.div(:class => 'block') do
188
+ aLineage.each do |hLineage|
189
+ @html.div do
190
+ @html.h3('Lineage', {'class' => 'h3'})
191
+ @html.div(:class => 'block') do
192
+ lineageClass.writeHtml(hLineage)
193
+ end
194
+ end
195
+ end
196
+ end
197
+ @html.hr
198
+ end
199
+ end
200
+
201
+ # distribution section
202
+ unless aDistribution.empty?
203
+ @html.div do
204
+ @html.h2('Resource Distribution', {'id' => 'body-distribution', 'class' => 'h2'})
205
+ @html.span('', {'style' => 'mso-bookmark:body-distribution'})
206
+ @html.div(:class => 'block') do
207
+ aDistribution.each do |hDistribution|
208
+ @html.div do
209
+ @html.h3('Distribution', {'class' => 'h3'})
210
+ @html.div(:class => 'block') do
211
+ distributionClass.writeHtml(hDistribution)
212
+ end
213
+ end
214
+ end
215
+ end
216
+ @html.hr
217
+ end
218
+ end
219
+
220
+ # associated resource section
221
+ unless aAssociated.empty?
222
+ @html.div do
223
+ @html.h2('Associated Resources', {'id' => 'body-associatedResource', 'class' => 'h2'})
224
+ @html.span('', {'style' => 'mso-bookmark:body-associatedResource'})
225
+ @html.div(:class => 'block') do
226
+ aAssociated.each do |hAssociated|
227
+ @html.div do
228
+ @html.h3('Resource', {'class' => 'h3'})
229
+ @html.div(:class => 'block') do
230
+ associatedClass.writeHtml(hAssociated)
231
+ end
232
+ end
233
+ end
234
+ end
235
+ @html.hr
236
+ end
237
+ end
238
+
239
+ # additional documentation section
240
+ unless aAdditional.empty?
241
+ @html.div do
242
+ @html.h2('Additional Documentation', {'id' => 'body-additionalDocument', 'class' => 'h2'})
243
+ @html.span('', {'style' => 'mso-bookmark:body-additionalDocument'})
244
+ @html.div(:class => 'block') do
245
+ aAdditional.each do |hAdditional|
246
+ @html.div do
247
+ @html.h3('Document', {'class' => 'h3'})
248
+ @html.div(:class => 'block') do
249
+ additionalClass.writeHtml(hAdditional)
250
+ end
251
+ end
252
+ end
253
+ end
254
+ @html.hr
255
+ end
256
+ end
257
+
258
+ # data dictionary section
259
+ unless aDictionaries.empty?
260
+ @html.div do
261
+ @html.h2('Data Dictionaries', {'id' => 'body-dataDictionary', 'class' => 'h2'})
262
+ @html.span('', {'style' => 'mso-bookmark:body-dataDictionary'})
263
+ @html.div(:class => 'block') do
264
+ aDictionaries.each do |hDictionary|
265
+ @html.div do
266
+ @html.h3('Dictionary', {'class' => 'h3'})
267
+ @html.div(:class => 'block') do
268
+ dictionaryClass.writeHtml(hDictionary)
269
+ end
270
+ end
271
+ end
272
+ end
273
+ end
274
+ end
275
+
276
+ # funding section
277
+ unless aFunding.empty?
278
+ @html.div do
279
+ @html.h2('Funding', {'id' => 'body-funding', 'class' => 'h2'})
280
+ @html.span('', {'style' => 'mso-bookmark:body-funding'})
281
+ @html.div(:class => 'block') do
282
+ aFunding.each do |hFunding|
283
+ @html.div do
284
+ @html.h3('Funds', {'class' => 'h3'})
285
+ @html.div(:class => 'block') do
286
+ fundingClass.writeHtml(hFunding)
287
+ end
288
+ end
289
+ end
290
+ end
291
+ end
292
+ end
293
+
294
+ # metadata repository section
295
+ unless aRepositories.empty?
296
+ @html.div do
297
+ @html.h2('Metadata Repositories', {'id' => 'body-repository', 'class' => 'h2'})
298
+ @html.span('', {'style' => 'mso-bookmark:body-repository'})
299
+ @html.div(:class => 'block') do
300
+ aRepositories.each do |hRepository|
301
+ @html.div do
302
+ @html.h3('Repository', {'class' => 'h3'})
303
+ @html.div(:class => 'block') do
304
+ repositoryClass.writeHtml(hRepository)
305
+ end
306
+ end
307
+ end
308
+ end
309
+ end
310
+ end
311
+
312
+ end # body
313
+ end # writeHtml
314
+ end # Html_Body
315
+
316
+ end
317
+ end
318
+ end
319
+ end
@@ -0,0 +1,69 @@
1
+ # HTML writer
2
+ # bounding box
3
+
4
+ # History:
5
+ # Stan Smith 2017-04-06 original script
6
+
7
+ module ADIWG
8
+ module Mdtranslator
9
+ module Writers
10
+ module Simple_html
11
+
12
+ class Html_BoundingBox
13
+
14
+ def initialize(html)
15
+ @html = html
16
+ end
17
+
18
+ def writeHtml(hBox)
19
+
20
+ # bounding box - edges
21
+ unless hBox[:westLongitude].nil?
22
+ @html.em('West Longitude:')
23
+ @html.text!(hBox[:westLongitude].to_s)
24
+ @html.br
25
+ end
26
+
27
+ unless hBox[:eastLongitude].nil?
28
+ @html.em('East Longitude:')
29
+ @html.text!(hBox[:eastLongitude].to_s)
30
+ @html.br
31
+ end
32
+
33
+ unless hBox[:southLatitude].nil?
34
+ @html.em('South Latitude:')
35
+ @html.text!(hBox[:southLatitude].to_s)
36
+ @html.br
37
+ end
38
+
39
+ unless hBox[:northLatitude].nil?
40
+ @html.em('North Latitude:')
41
+ @html.text!(hBox[:northLatitude].to_s)
42
+ @html.br
43
+ end
44
+
45
+ unless hBox[:minimumAltitude].nil?
46
+ @html.em('Minimum Altitude:')
47
+ @html.text!(hBox[:minimumAltitude].to_s)
48
+ @html.br
49
+ end
50
+
51
+ unless hBox[:maximumAltitude].nil?
52
+ @html.em('Maximum Altitude:')
53
+ @html.text!(hBox[:maximumAltitude].to_s)
54
+ @html.br
55
+ end
56
+
57
+ unless hBox[:unitsOfAltitude].nil?
58
+ @html.em('Altitude Units of Measure:')
59
+ @html.text!(hBox[:unitsOfAltitude].to_s)
60
+ @html.br
61
+ end
62
+
63
+ end # writeHtml
64
+ end # Html_BoundingBox
65
+
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,165 @@
1
+ # HTML writer
2
+ # citation
3
+
4
+ # History:
5
+ # Stan Smith 2017-03-23 refactored for mdTranslator 2.0
6
+ # Stan Smith 2015-03-23 original script
7
+ # Stan Smith 2015-07-16 refactored to remove global namespace $HtmlNS
8
+ # Stan Smith 2015-08-26 added alternate title
9
+
10
+ require_relative 'html_date'
11
+ require_relative 'html_responsibility'
12
+ require_relative 'html_identifier'
13
+ require_relative 'html_onlineResource'
14
+ require_relative 'html_graphic'
15
+
16
+ module ADIWG
17
+ module Mdtranslator
18
+ module Writers
19
+ module Simple_html
20
+
21
+ class Html_Citation
22
+
23
+ def initialize(html)
24
+ @html = html
25
+ end
26
+
27
+ def writeHtml(hCitation)
28
+
29
+ # classes used
30
+ dateClass = Html_Date.new(@html)
31
+ responsibilityClass = Html_Responsibility.new(@html)
32
+ identifierClass = Html_Identifier.new(@html)
33
+ onlineClass = Html_OnlineResource.new(@html)
34
+ graphicClass = Html_Graphic.new(@html)
35
+
36
+ # citation - title
37
+ @html.em('Title: ')
38
+ unless hCitation[:title].nil?
39
+ @html.text!(hCitation[:title])
40
+ else
41
+ @html.text!('*MISSING*')
42
+ end
43
+ @html.br
44
+
45
+ # citation - alternate title
46
+ unless hCitation[:alternateTitles].empty?
47
+ hCitation[:alternateTitles].each do |altTitle|
48
+ @html.em('Alternate title: ')
49
+ @html.text!(altTitle)
50
+ @html.br
51
+ end
52
+ end
53
+
54
+ # citation - date [] {}
55
+ hCitation[:dates].each do |hDate|
56
+ @html.em('Date: ')
57
+ dateClass.writeHtml(hDate)
58
+ @html.br
59
+ end
60
+
61
+ # citation - edition
62
+ unless hCitation[:edition].nil?
63
+ @html.em('Edition: ')
64
+ @html.text!(hCitation[:edition])
65
+ @html.br
66
+ end
67
+
68
+ # citation - responsibilities [] {responsibility}
69
+ hCitation[:responsibleParties].each do |hResponsibility|
70
+ @html.div do
71
+ @html.h5(hResponsibility[:roleName], 'class' => 'h5')
72
+ @html.div(:class => 'block') do
73
+ responsibilityClass.writeHtml(hResponsibility)
74
+ end
75
+ end
76
+ end
77
+
78
+ # citation - identifier []
79
+ hCitation[:identifiers].each do |hIdentifier|
80
+ @html.div do
81
+ @html.h5('Identifier', 'class' => 'h5')
82
+ @html.div(:class => 'block') do
83
+ identifierClass.writeHtml(hIdentifier)
84
+ end
85
+ end
86
+ end
87
+
88
+ # citation - series
89
+ unless hCitation[:series].empty?
90
+ @html.div do
91
+ @html.h5('Publication Series', {'class' => 'h5'})
92
+ @html.div(:class => 'block') do
93
+
94
+ hSeries = hCitation[:series]
95
+
96
+ # series - name
97
+ unless hSeries[:seriesName].nil?
98
+ @html.em('Series Name: ')
99
+ @html.text!(hSeries[:seriesName])
100
+ @html.br
101
+ end
102
+
103
+ # series - issue
104
+ unless hSeries[:seriesIssue].nil?
105
+ @html.em('Series Issue: ')
106
+ @html.text!(hSeries[:seriesIssue])
107
+ @html.br
108
+ end
109
+
110
+ # series - page
111
+ unless hSeries[:issuePage].nil?
112
+ @html.em('Issue Page: ')
113
+ @html.text!(hSeries[:issuePage])
114
+ @html.br
115
+ end
116
+
117
+ end
118
+ end
119
+ end
120
+
121
+ # citation - online resource []
122
+ hCitation[:onlineResources].each do |hOnline|
123
+ @html.div do
124
+ @html.h5('Online Resource', {'class' => 'h5'})
125
+ @html.div(:class => 'block') do
126
+ onlineClass.writeHtml(hOnline)
127
+ end
128
+ end
129
+ end
130
+
131
+ # citation - browse graphic []
132
+ hCitation[:browseGraphics].each do |hGraphic|
133
+ @html.div do
134
+ @html.h5('Graphic Overview', {'class' => 'h5'})
135
+ @html.div(:class => 'block') do
136
+ graphicClass.writeHtml(hGraphic)
137
+ end
138
+ end
139
+ end
140
+
141
+ # citation - presentation form []
142
+ unless hCitation[:presentationForms].empty?
143
+ hCitation[:presentationForms].each do |forms|
144
+ @html.em('Presentation Form: ')
145
+ @html.text!(forms)
146
+ @html.br
147
+ end
148
+ end
149
+
150
+ # citation - other div []
151
+ # unless hCitation[:otherdiv].empty?
152
+ # hCitation[:otherdiv].each do |detail|
153
+ # @html.em('Other div: ')
154
+ # @html.text!(detail)
155
+ # @html.br
156
+ # end
157
+ # end
158
+
159
+ end # writeHtml
160
+ end # Html_Citation
161
+
162
+ end
163
+ end
164
+ end
165
+ end
@@ -0,0 +1,50 @@
1
+ # HTML writer
2
+ # classed data
3
+
4
+ # History:
5
+ # Stan Smith 2015-08-21 original script
6
+
7
+ require_relative 'html_classedDataItem'
8
+
9
+ module ADIWG
10
+ module Mdtranslator
11
+ module Writers
12
+ module Simple_html
13
+
14
+ class MdHtmlClassedData
15
+ def initialize(html)
16
+ @html = html
17
+ end
18
+
19
+ def writeHtml(hClassD)
20
+
21
+ # classes used
22
+ htmlClassItem = MdHtmlClassedDataItem.new(@html)
23
+
24
+ # classed data - number of classes
25
+ s = hClassD[:numberOfClasses]
26
+ if !s.nil?
27
+ @html.em('Number of classes: ')
28
+ @html.text!(s.to_s)
29
+ @html.br
30
+ end
31
+
32
+ # classed data - data items
33
+ aClassItems = hClassD[:classedDataItems]
34
+ aClassItems.each do |hClassItem|
35
+ @html.div do
36
+ @html.h5(hClassItem[:className], {'class'=>'h5'})
37
+ @html.div(:class=>'block') do
38
+ htmlClassItem.writeHtml(hClassItem)
39
+ end
40
+ end
41
+ end
42
+
43
+ end # writeHtml
44
+
45
+ end # class
46
+
47
+ end
48
+ end
49
+ end
50
+ end