adiwg-mdtranslator 1.4.0 → 2.0.0rc2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (525) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +1 -3
  3. data/.travis.yml +4 -3
  4. data/README.md +1 -3
  5. data/Rakefile +5 -1
  6. data/adiwg-mdtranslator.gemspec +5 -5
  7. data/bin/mdtranslator +3 -205
  8. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +600 -316
  9. data/lib/adiwg/mdtranslator/internal/module_coordinates.rb +123 -7
  10. data/lib/adiwg/mdtranslator/internal/module_dateTimeFun.rb +45 -0
  11. data/lib/adiwg/mdtranslator/readers/mdJson/mdJson_reader.rb +83 -178
  12. data/lib/adiwg/mdtranslator/readers/mdJson/mdJson_validator.rb +21 -22
  13. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_additionalDocumentation.rb +77 -0
  14. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_address.rb +101 -0
  15. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_allocation.rb +84 -0
  16. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_associatedResource.rb +111 -0
  17. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_attribute.rb +224 -0
  18. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_attributeGroup.rb +63 -0
  19. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_boundingBox.rb +95 -0
  20. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_citation.rb +164 -0
  21. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_constraint.rb +163 -0
  22. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_contact.rb +172 -0
  23. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_coverageDescription.rb +96 -0
  24. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dataDictionary.rb +151 -0
  25. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_date.rb +74 -0
  26. data/lib/adiwg/mdtranslator/readers/mdJson/{modules_v1 → modules}/module_dateTime.rb +19 -5
  27. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_dimension.rb +87 -0
  28. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_distribution.rb +56 -0
  29. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_distributor.rb +78 -0
  30. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_domain.rb +95 -0
  31. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_domainItem.rb +70 -0
  32. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_duration.rb +112 -0
  33. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_entity.rb +135 -0
  34. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_entityAttribute.rb +130 -0
  35. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_entityForeignKey.rb +78 -0
  36. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_entityIndex.rb +72 -0
  37. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_extent.rb +83 -0
  38. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_featureCollection.rb +87 -0
  39. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_format.rb +68 -0
  40. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_funding.rb +67 -0
  41. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_geoJson.rb +70 -0
  42. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_geographicExtent.rb +98 -0
  43. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_geometryCollection.rb +87 -0
  44. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_geometryFeature.rb +112 -0
  45. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_geometryObject.rb +70 -0
  46. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_geometryProperties.rb +79 -0
  47. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_georectifiedRepresentation.rb +113 -0
  48. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_georeferenceableRepresentation.rb +99 -0
  49. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_gmlIdentifier.rb +55 -0
  50. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_graphic.rb +96 -0
  51. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_gridRepresentation.rb +79 -0
  52. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_identifier.rb +87 -0
  53. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_imageDescription.rb +120 -0
  54. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_keyword.rb +83 -0
  55. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_keywordObject.rb +55 -0
  56. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_legalConstraint.rb +77 -0
  57. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_lineage.rb +104 -0
  58. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_locale.rb +66 -0
  59. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_maintenance.rb +93 -0
  60. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_mdJson.rb +136 -0
  61. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_measure.rb +75 -0
  62. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_medium.rb +105 -0
  63. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_metadata.rb +131 -0
  64. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_metadataInfo.rb +157 -0
  65. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_metadataRepository.rb +53 -0
  66. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_onlineResource.rb +82 -0
  67. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_orderProcess.rb +68 -0
  68. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_party.rb +79 -0
  69. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_phone.rb +68 -0
  70. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_processStep.rb +113 -0
  71. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_releasability.rb +71 -0
  72. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_resourceInfo.rb +364 -0
  73. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_resourceType.rb +55 -0
  74. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_resourceUsage.rb +117 -0
  75. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_responsibleParty.rb +91 -0
  76. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_schema.rb +56 -0
  77. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_scope.rb +72 -0
  78. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_scopeDescription.rb +73 -0
  79. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_securityConstraint.rb +72 -0
  80. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_series.rb +57 -0
  81. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_source.rb +123 -0
  82. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_spatialReference.rb +65 -0
  83. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_spatialRepresentation.rb +96 -0
  84. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_spatialResolution.rb +77 -0
  85. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_taxonomicClassification.rb +87 -0
  86. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_taxonomicSystem.rb +60 -0
  87. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_taxonomy.rb +138 -0
  88. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_temporalExtent.rb +70 -0
  89. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_timeInstant.rb +87 -0
  90. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_timeInterval.rb +69 -0
  91. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_timePeriod.rb +120 -0
  92. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_transferOption.rb +95 -0
  93. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_vectorObject.rb +55 -0
  94. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_vectorRepresentation.rb +55 -0
  95. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_verticalExtent.rb +81 -0
  96. data/lib/adiwg/mdtranslator/readers/mdJson/modules/module_voucher.rb +64 -0
  97. data/lib/adiwg/mdtranslator/readers/mdJson/readme.md +3 -9
  98. data/lib/adiwg/mdtranslator/readers/mdJson/version.rb +14 -0
  99. data/lib/adiwg/mdtranslator/readers/mdReaders.rb +36 -30
  100. data/lib/adiwg/mdtranslator/readers/sbJson/sbJson_reader.rb +39 -40
  101. data/lib/adiwg/mdtranslator/version.rb +38 -29
  102. data/lib/adiwg/mdtranslator/writers/html/html_writer.rb +28 -25
  103. data/lib/adiwg/mdtranslator/writers/html/readme.md +3 -9
  104. data/lib/adiwg/mdtranslator/writers/html/sections/html_additionalDocumentation.rb +35 -34
  105. data/lib/adiwg/mdtranslator/writers/html/sections/html_allocation.rb +71 -0
  106. data/lib/adiwg/mdtranslator/writers/html/sections/html_associatedResource.rb +51 -51
  107. data/lib/adiwg/mdtranslator/writers/html/sections/html_attribute.rb +189 -0
  108. data/lib/adiwg/mdtranslator/writers/html/sections/html_attributeGroup.rb +51 -0
  109. data/lib/adiwg/mdtranslator/writers/html/sections/html_body.rb +275 -259
  110. data/lib/adiwg/mdtranslator/writers/html/sections/html_bodyScript.js +275 -150
  111. data/lib/adiwg/mdtranslator/writers/html/sections/html_boundingBox.rb +51 -0
  112. data/lib/adiwg/mdtranslator/writers/html/sections/html_citation.rb +142 -82
  113. data/lib/adiwg/mdtranslator/writers/html/sections/html_constraint.rb +118 -0
  114. data/lib/adiwg/mdtranslator/writers/html/sections/html_contact.rb +166 -94
  115. data/lib/adiwg/mdtranslator/writers/html/sections/html_coverageInfo.rb +57 -64
  116. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataDictionary.rb +102 -96
  117. data/lib/adiwg/mdtranslator/writers/html/sections/html_date.rb +42 -0
  118. data/lib/adiwg/mdtranslator/writers/html/sections/html_datetime.rb +42 -0
  119. data/lib/adiwg/mdtranslator/writers/html/sections/html_dimension.rb +50 -52
  120. data/lib/adiwg/mdtranslator/writers/html/sections/html_distribution.rb +49 -0
  121. data/lib/adiwg/mdtranslator/writers/html/sections/html_distributor.rb +48 -44
  122. data/lib/adiwg/mdtranslator/writers/html/sections/html_document.rb +63 -0
  123. data/lib/adiwg/mdtranslator/writers/html/sections/html_domain.rb +53 -62
  124. data/lib/adiwg/mdtranslator/writers/html/sections/html_domainItem.rb +49 -0
  125. data/lib/adiwg/mdtranslator/writers/html/sections/html_duration.rb +68 -0
  126. data/lib/adiwg/mdtranslator/writers/html/sections/html_entity.rb +99 -122
  127. data/lib/adiwg/mdtranslator/writers/html/sections/html_entityAttribute.rb +94 -100
  128. data/lib/adiwg/mdtranslator/writers/html/sections/html_entityForeignKey.rb +55 -0
  129. data/lib/adiwg/mdtranslator/writers/html/sections/html_entityIndex.rb +39 -39
  130. data/lib/adiwg/mdtranslator/writers/html/sections/html_extent.rb +53 -86
  131. data/lib/adiwg/mdtranslator/writers/html/sections/html_feature.rb +97 -0
  132. data/lib/adiwg/mdtranslator/writers/html/sections/html_featureCollection.rb +82 -0
  133. data/lib/adiwg/mdtranslator/writers/html/sections/html_featureProperties.rb +71 -0
  134. data/lib/adiwg/mdtranslator/writers/html/sections/html_format.rb +46 -34
  135. data/lib/adiwg/mdtranslator/writers/html/sections/html_funding.rb +51 -0
  136. data/lib/adiwg/mdtranslator/writers/html/sections/html_geographicElement.rb +61 -194
  137. data/lib/adiwg/mdtranslator/writers/html/sections/html_geographicExtent.rb +112 -0
  138. data/lib/adiwg/mdtranslator/writers/html/sections/html_geometryCollection.rb +78 -0
  139. data/lib/adiwg/mdtranslator/writers/html/sections/html_geometryObject.rb +46 -0
  140. data/lib/adiwg/mdtranslator/writers/html/sections/html_georectifiedRepresentation.rb +93 -0
  141. data/lib/adiwg/mdtranslator/writers/html/sections/html_georeferenceableRepresentation.rb +78 -0
  142. data/lib/adiwg/mdtranslator/writers/html/sections/html_graphic.rb +75 -0
  143. data/lib/adiwg/mdtranslator/writers/html/sections/html_gridRepresentation.rb +61 -0
  144. data/lib/adiwg/mdtranslator/writers/html/sections/html_head.rb +47 -60
  145. data/lib/adiwg/mdtranslator/writers/html/sections/html_identifier.rb +73 -0
  146. data/lib/adiwg/mdtranslator/writers/html/sections/html_imageInfo.rb +92 -110
  147. data/lib/adiwg/mdtranslator/writers/html/sections/html_inlineCss.css +16 -8
  148. data/lib/adiwg/mdtranslator/writers/html/sections/html_keyword.rb +47 -45
  149. data/lib/adiwg/mdtranslator/writers/html/sections/html_legalConstraint.rb +41 -48
  150. data/lib/adiwg/mdtranslator/writers/html/sections/html_lineage.rb +87 -0
  151. data/lib/adiwg/mdtranslator/writers/html/sections/html_locale.rb +47 -0
  152. data/lib/adiwg/mdtranslator/writers/html/sections/html_maintenance.rb +96 -0
  153. data/lib/adiwg/mdtranslator/writers/html/sections/html_measure.rb +47 -0
  154. data/lib/adiwg/mdtranslator/writers/html/sections/html_medium.rb +74 -52
  155. data/lib/adiwg/mdtranslator/writers/html/sections/html_metadataInfo.rb +162 -131
  156. data/lib/adiwg/mdtranslator/writers/html/sections/html_metadataRepository.rb +40 -0
  157. data/lib/adiwg/mdtranslator/writers/html/sections/html_onlineResource.rb +52 -55
  158. data/lib/adiwg/mdtranslator/writers/html/sections/html_orderProcess.rb +53 -55
  159. data/lib/adiwg/mdtranslator/writers/html/sections/html_processStep.rb +89 -57
  160. data/lib/adiwg/mdtranslator/writers/html/sections/html_releasability.rb +63 -0
  161. data/lib/adiwg/mdtranslator/writers/html/sections/html_resolution.rb +46 -38
  162. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceInfo.rb +402 -291
  163. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceType.rb +31 -0
  164. data/lib/adiwg/mdtranslator/writers/html/sections/html_responsibility.rb +81 -0
  165. data/lib/adiwg/mdtranslator/writers/html/sections/html_scope.rb +60 -0
  166. data/lib/adiwg/mdtranslator/writers/html/sections/html_scopeDescription.rb +54 -0
  167. data/lib/adiwg/mdtranslator/writers/html/sections/html_securityConstraint.rb +46 -47
  168. data/lib/adiwg/mdtranslator/writers/html/sections/html_source.rb +123 -0
  169. data/lib/adiwg/mdtranslator/writers/html/sections/html_spatialReference.rb +43 -0
  170. data/lib/adiwg/mdtranslator/writers/html/sections/html_spatialRepresentation.rb +77 -0
  171. data/lib/adiwg/mdtranslator/writers/html/sections/html_taxonomy.rb +138 -90
  172. data/lib/adiwg/mdtranslator/writers/html/sections/html_taxonomyClass.rb +63 -50
  173. data/lib/adiwg/mdtranslator/writers/html/sections/html_temporalExtent.rb +66 -0
  174. data/lib/adiwg/mdtranslator/writers/html/sections/html_timeInstant.rb +60 -42
  175. data/lib/adiwg/mdtranslator/writers/html/sections/html_timeInterval.rb +40 -0
  176. data/lib/adiwg/mdtranslator/writers/html/sections/html_timePeriod.rb +88 -43
  177. data/lib/adiwg/mdtranslator/writers/html/sections/html_transferOption.rb +68 -50
  178. data/lib/adiwg/mdtranslator/writers/html/sections/html_usage.rb +118 -0
  179. data/lib/adiwg/mdtranslator/writers/html/sections/html_vectorObject.rb +40 -0
  180. data/lib/adiwg/mdtranslator/writers/html/sections/html_vectorRepresentation.rb +46 -0
  181. data/lib/adiwg/mdtranslator/writers/html/sections/html_verticalExtent.rb +62 -0
  182. data/lib/adiwg/mdtranslator/writers/html/version.rb +12 -11
  183. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_address.rb +70 -75
  184. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_baseUnit.rb +3 -3
  185. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_codelist.rb +14 -13
  186. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_contact.rb +50 -34
  187. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_conventionalUnit.rb +3 -3
  188. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_definitionUnit.rb +3 -3
  189. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_derivedUnit.rb +3 -3
  190. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_fcFeatureCatalogue.rb +205 -0
  191. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_featureAttribute.rb +39 -38
  192. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_featureConstraint.rb +9 -10
  193. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_featureType.rb +48 -40
  194. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_listedValue.rb +22 -20
  195. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_locale.rb +69 -0
  196. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_multiplicity.rb +24 -17
  197. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_onlineResource.rb +33 -29
  198. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_phone.rb +83 -0
  199. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_responsibleParty.rb +77 -64
  200. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_unitsOfMeasure.rb +20 -20
  201. data/lib/adiwg/mdtranslator/writers/iso19110/iso19110_writer.rb +21 -32
  202. data/lib/adiwg/mdtranslator/writers/iso19110/readme.md +3 -8
  203. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_address.rb +70 -74
  204. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_aggregateInformation.rb +30 -32
  205. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_attributeGroup.rb +70 -0
  206. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_baseUnit.rb +5 -5
  207. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_boundingBox.rb +77 -0
  208. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_browseGraphic.rb +26 -24
  209. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_citation.rb +111 -100
  210. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_codelist.rb +14 -13
  211. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_contact.rb +50 -34
  212. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_conventionalUnit.rb +5 -5
  213. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_coverageDescription.rb +99 -0
  214. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_dataIdentification.rb +195 -270
  215. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_dataQuality.rb +26 -35
  216. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_date.rb +31 -38
  217. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_definitionUnit.rb +5 -5
  218. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_derivedUnit.rb +5 -5
  219. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_dimension.rb +26 -23
  220. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_distribution.rb +19 -16
  221. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_distributor.rb +51 -66
  222. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_enumerationList.rb +12 -12
  223. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/{class_metadataExtension.rb → class_extension.rb} +94 -67
  224. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_extent.rb +43 -59
  225. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_feature.rb +67 -0
  226. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_featureCollection.rb +56 -0
  227. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_featureProperties.rb +65 -0
  228. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_format.rb +48 -27
  229. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_fraction.rb +40 -0
  230. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_gcoDateTime.rb +48 -0
  231. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicElement.rb +55 -26
  232. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicExtent.rb +82 -0
  233. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geometricObjects.rb +56 -0
  234. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geometryCollection.rb +88 -0
  235. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_georectified.rb +121 -0
  236. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_georeferenceable.rb +86 -0
  237. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_gmlIdentifier.rb +32 -0
  238. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_grid.rb +73 -0
  239. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_gridRepresentation.rb +36 -0
  240. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_hierarchy.rb +58 -0
  241. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_image.rb +144 -0
  242. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_keyword.rb +41 -35
  243. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_legalConstraints.rb +46 -37
  244. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_lineString.rb +45 -51
  245. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_lineage.rb +29 -31
  246. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_locale.rb +21 -17
  247. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_maintenance.rb +119 -0
  248. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_mdBand.rb +121 -0
  249. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/{class_identifier.rb → class_mdIdentifier.rb} +25 -27
  250. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_measure.rb +48 -0
  251. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_medium.rb +66 -42
  252. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_miBand.rb +91 -0
  253. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_miMetadata.rb +352 -0
  254. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_multiLine.rb +82 -0
  255. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_multiPoint.rb +82 -0
  256. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_multiPolygon.rb +82 -0
  257. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_onlineResource.rb +33 -29
  258. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/{class_standardOrderProcess.rb → class_orderProcess.rb} +33 -35
  259. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_phone.rb +83 -0
  260. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_point.rb +46 -51
  261. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_polygon.rb +54 -61
  262. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_processStep.rb +46 -34
  263. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_rangeDimension.rb +73 -0
  264. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_referenceSystem.rb +24 -25
  265. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_resolution.rb +32 -31
  266. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_responsibleParty.rb +75 -65
  267. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_rsIdentifier.rb +86 -0
  268. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_scope.rb +71 -0
  269. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_scopeDescription.rb +54 -0
  270. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_securityConstraints.rb +47 -32
  271. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_series.rb +63 -0
  272. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_source.rb +58 -28
  273. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_spatialRepresentation.rb +64 -0
  274. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/{class_taxonClassification.rb → class_taxonomicClassification.rb} +35 -38
  275. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_taxonomicSystem.rb +49 -0
  276. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_taxonomy.rb +144 -0
  277. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_temporalExtent.rb +15 -28
  278. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_timeInstant.rb +42 -19
  279. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_timePeriod.rb +79 -28
  280. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_transferOptions.rb +91 -0
  281. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_unitsOfMeasure.rb +22 -22
  282. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_usage.rb +70 -28
  283. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_useConstraints.rb +18 -17
  284. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_vectorRepresentation.rb +59 -0
  285. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_verticalExtent.rb +39 -26
  286. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_vouchers.rb +20 -20
  287. data/lib/adiwg/mdtranslator/writers/iso19115_2/iso19115_2_writer.rb +22 -133
  288. data/lib/adiwg/mdtranslator/writers/iso19115_2/readme.md +1 -7
  289. data/lib/adiwg/mdtranslator/writers/mdJson/mdJson_writer.rb +44 -41
  290. data/lib/adiwg/mdtranslator/writers/mdJson/readme.md +3 -9
  291. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_additionalDocumentation.rb +33 -0
  292. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_address.rb +29 -17
  293. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_allocation.rb +32 -0
  294. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_associatedResource.rb +30 -16
  295. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_attribute.rb +48 -22
  296. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_attributeGroup.rb +32 -0
  297. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_boundingBox.rb +30 -0
  298. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_citation.rb +41 -26
  299. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_constraint.rb +40 -23
  300. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_contact.rb +39 -24
  301. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_coverageDescription.rb +37 -0
  302. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_date.rb +42 -0
  303. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dateTime.rb +33 -13
  304. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dictionary.rb +35 -25
  305. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dimension.rb +32 -0
  306. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_distribution.rb +32 -0
  307. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_distributor.rb +34 -0
  308. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_domain.rb +30 -20
  309. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_domainItem.rb +29 -0
  310. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_duration.rb +33 -0
  311. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_entity.rb +35 -32
  312. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_entityAttribute.rb +37 -0
  313. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_entityForeignKey.rb +29 -0
  314. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_entityIndex.rb +29 -0
  315. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_extent.rb +31 -21
  316. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_format.rb +26 -14
  317. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_funding.rb +32 -0
  318. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_geographicExtent.rb +33 -0
  319. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_georectifiedRepresentation.rb +35 -0
  320. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_georeferenceableRepresentation.rb +36 -0
  321. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_graphicOverview.rb +31 -15
  322. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_gridRepresentation.rb +34 -0
  323. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_identifier.rb +33 -0
  324. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_imageDescription.rb +41 -0
  325. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_keyword.rb +28 -14
  326. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_keywordObject.rb +29 -0
  327. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_legalConstraint.rb +29 -0
  328. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_lineageInfo.rb +38 -0
  329. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_locale.rb +25 -14
  330. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_maintenance.rb +37 -0
  331. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_mdJson.rb +54 -0
  332. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_measure.rb +29 -0
  333. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_medium.rb +37 -0
  334. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_metadata.rb +35 -22
  335. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_metadataInfo.rb +39 -29
  336. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_onlineResource.rb +27 -16
  337. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_orderProcess.rb +31 -0
  338. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_party.rb +32 -0
  339. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_phone.rb +25 -14
  340. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_processStep.rb +34 -19
  341. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_releasability.rb +32 -0
  342. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_repository.rb +29 -0
  343. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_resourceInfo.rb +61 -56
  344. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_resourceType.rb +29 -0
  345. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_responsibleParty.rb +29 -13
  346. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_scope.rb +34 -0
  347. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_scopeDescription.rb +31 -0
  348. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_securityConstraint.rb +30 -0
  349. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_series.rb +30 -0
  350. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_source.rb +40 -0
  351. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialReference.rb +30 -0
  352. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialRepresentation.rb +34 -0
  353. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialResolution.rb +30 -0
  354. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxonomicClassification.rb +35 -0
  355. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxonomicSystem.rb +29 -0
  356. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxonomy.rb +36 -26
  357. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_temporalExtent.rb +31 -0
  358. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_timeInstant.rb +33 -0
  359. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_timeInterval.rb +29 -0
  360. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_timePeriod.rb +34 -15
  361. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_transferOption.rb +32 -26
  362. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_usage.rb +33 -17
  363. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_vectorObject.rb +28 -0
  364. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_vectorRepresentation.rb +31 -0
  365. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_verticalExtent.rb +32 -0
  366. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_voucher.rb +29 -0
  367. data/lib/adiwg/mdtranslator/writers/mdJson/version.rb +13 -9
  368. data/lib/adiwg/mdtranslator/writers/mdWriters.rb +36 -28
  369. data/lib/adiwg/mdtranslator.rb +135 -113
  370. data/lib/adiwg/mdtranslator_cli.rb +191 -0
  371. metadata +238 -215
  372. data/lib/adiwg/mdtranslator/internal/module_geoFormat.rb +0 -219
  373. data/lib/adiwg/mdtranslator/internal/module_lineString.rb +0 -18
  374. data/lib/adiwg/mdtranslator/internal/module_point.rb +0 -18
  375. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_additionalDocumentation.rb +0 -64
  376. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_address.rb +0 -91
  377. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_associatedResource.rb +0 -100
  378. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_boundingBox.rb +0 -64
  379. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_browseGraphic.rb +0 -79
  380. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_citation.rb +0 -141
  381. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_classedData.rb +0 -49
  382. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_classedDataItem.rb +0 -53
  383. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_contacts.rb +0 -164
  384. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_coverageInfo.rb +0 -83
  385. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_coverageItem.rb +0 -136
  386. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_dataDictionary.rb +0 -65
  387. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_dataQuality.rb +0 -65
  388. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_descriptiveKeyword.rb +0 -77
  389. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_dictionaryInfo.rb +0 -82
  390. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_digitalTransferOption.rb +0 -80
  391. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_dimension.rb +0 -81
  392. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_distributionInfo.rb +0 -89
  393. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_distributionOrder.rb +0 -62
  394. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_domain.rb +0 -96
  395. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_domainItem.rb +0 -72
  396. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_entity.rb +0 -131
  397. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_entityAttribute.rb +0 -134
  398. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_entityForeignKey.rb +0 -73
  399. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_entityIndex.rb +0 -72
  400. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_extent.rb +0 -75
  401. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_geoCoordSystem.rb +0 -59
  402. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_geoProperties.rb +0 -102
  403. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_geographicElement.rb +0 -189
  404. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_gridInfo.rb +0 -67
  405. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_imageInfo.rb +0 -119
  406. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_legalConstraint.rb +0 -62
  407. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_lineString.rb +0 -37
  408. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_lineage.rb +0 -67
  409. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_locale.rb +0 -57
  410. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_mdJson.rb +0 -68
  411. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_medium.rb +0 -73
  412. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_metadata.rb +0 -90
  413. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_metadataExtension.rb +0 -53
  414. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_metadataInfo.rb +0 -152
  415. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_onlineResource.rb +0 -84
  416. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_phone.rb +0 -81
  417. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_point.rb +0 -37
  418. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_polygon.rb +0 -67
  419. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_processStep.rb +0 -88
  420. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_resolution.rb +0 -59
  421. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_resourceFormat.rb +0 -57
  422. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_resourceIdentifier.rb +0 -85
  423. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_resourceInfo.rb +0 -374
  424. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_resourceMaintenance.rb +0 -63
  425. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_resourceSpecificUsage.rb +0 -63
  426. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_responsibleParty.rb +0 -68
  427. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_securityConstraint.rb +0 -65
  428. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_sensorInfo.rb +0 -69
  429. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_source.rb +0 -65
  430. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_spatialReference.rb +0 -61
  431. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_taxonClass.rb +0 -56
  432. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_taxonomy.rb +0 -96
  433. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_temporalElement.rb +0 -84
  434. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_timeInstant.rb +0 -58
  435. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_timePeriod.rb +0 -66
  436. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_verticalElement.rb +0 -66
  437. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/module_voucher.rb +0 -51
  438. data/lib/adiwg/mdtranslator/readers/mdJson/modules_v1/version.rb +0 -19
  439. data/lib/adiwg/mdtranslator/readers/mdJson/validator.rb +0 -43
  440. data/lib/adiwg/mdtranslator/readers/sbJson/sbJson_validator.rb +0 -44
  441. data/lib/adiwg/mdtranslator/writers/html/md_html_writer.rb +0 -59
  442. data/lib/adiwg/mdtranslator/writers/html/sections/html_browseGraphic.rb +0 -59
  443. data/lib/adiwg/mdtranslator/writers/html/sections/html_coverageItem.rb +0 -139
  444. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataLineage.rb +0 -68
  445. data/lib/adiwg/mdtranslator/writers/html/sections/html_dataSource.rb +0 -67
  446. data/lib/adiwg/mdtranslator/writers/html/sections/html_dateTime.rb +0 -41
  447. data/lib/adiwg/mdtranslator/writers/html/sections/html_domainMember.rb +0 -52
  448. data/lib/adiwg/mdtranslator/writers/html/sections/html_gridInfo.rb +0 -65
  449. data/lib/adiwg/mdtranslator/writers/html/sections/html_headScript.js +0 -18
  450. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceContact.rb +0 -37
  451. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceGeneral.rb +0 -133
  452. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceId.rb +0 -77
  453. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceMaint.rb +0 -56
  454. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceOther.rb +0 -88
  455. data/lib/adiwg/mdtranslator/writers/html/sections/html_resourceUsage.rb +0 -56
  456. data/lib/adiwg/mdtranslator/writers/html/sections/html_responsibleParty.rb +0 -39
  457. data/lib/adiwg/mdtranslator/writers/html/sections/html_spatialReferenceSystem.rb +0 -58
  458. data/lib/adiwg/mdtranslator/writers/html/sections/html_temporalElement.rb +0 -61
  459. data/lib/adiwg/mdtranslator/writers/html/sections/html_verticalElement.rb +0 -59
  460. data/lib/adiwg/mdtranslator/writers/iso19110/class_FCfeatureCatalogue.rb +0 -191
  461. data/lib/adiwg/mdtranslator/writers/iso19110/classes/class_telephone.rb +0 -92
  462. data/lib/adiwg/mdtranslator/writers/iso19110/version.rb +0 -14
  463. data/lib/adiwg/mdtranslator/writers/iso19115_2/class_MImetadata.rb +0 -391
  464. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_band.rb +0 -165
  465. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_boundingPolygon.rb +0 -90
  466. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_contentInfo.rb +0 -111
  467. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_digitalTransferOptions.rb +0 -92
  468. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicBoundingBox.rb +0 -89
  469. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_geographicDescription.rb +0 -44
  470. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_gridInfo.rb +0 -80
  471. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_imageDescription.rb +0 -157
  472. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_maintenanceInformation.rb +0 -80
  473. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_multiGeometry.rb +0 -156
  474. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_rangeElementDescription.rb +0 -88
  475. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_resourceIdentifier.rb +0 -94
  476. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_taxonSystem.rb +0 -115
  477. data/lib/adiwg/mdtranslator/writers/iso19115_2/classes/class_telephone.rb +0 -92
  478. data/lib/adiwg/mdtranslator/writers/iso19115_2/version.rb +0 -17
  479. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_additionalDoc.rb +0 -19
  480. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_base.rb +0 -19
  481. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_dataQuality.rb +0 -32
  482. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_distributionInfo.rb +0 -31
  483. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_geographicElement.rb +0 -81
  484. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_gridInfo.rb +0 -27
  485. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_resourceIdentifier.rb +0 -23
  486. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_resourceMaintenance.rb +0 -23
  487. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_spatialreference.rb +0 -19
  488. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_taxon.rb +0 -19
  489. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_temporalElement.rb +0 -38
  490. data/lib/adiwg/mdtranslator/writers/mdJson/sections/mdJson_verticalElement.rb +0 -20
  491. data/test/readers/mdJson/v1/tc_reader_mdjson_additionalDocumentation.rb +0 -116
  492. data/test/readers/mdJson/v1/tc_reader_mdjson_address.rb +0 -111
  493. data/test/readers/mdJson/v1/tc_reader_mdjson_associatedResource.rb +0 -157
  494. data/test/readers/mdJson/v1/tc_reader_mdjson_browseGraphic.rb +0 -119
  495. data/test/readers/mdJson/v1/tc_reader_mdjson_citation.rb +0 -143
  496. data/test/readers/mdJson/v1/tc_reader_mdjson_contact.rb +0 -138
  497. data/test/readers/mdJson/v1/tc_reader_mdjson_dataQuality.rb +0 -111
  498. data/test/readers/mdJson/v1/tc_reader_mdjson_dateTime.rb +0 -159
  499. data/test/readers/mdJson/v1/tc_reader_mdjson_descriptiveKeyword.rb +0 -115
  500. data/test/readers/mdJson/v1/tc_reader_mdjson_dictionaryInfo.rb +0 -121
  501. data/test/readers/mdJson/v1/tc_reader_mdjson_digitalTransferOption.rb +0 -94
  502. data/test/readers/mdJson/v1/tc_reader_mdjson_distributionOrder.rb +0 -103
  503. data/test/readers/mdJson/v1/tc_reader_mdjson_domain.rb +0 -130
  504. data/test/readers/mdJson/v1/tc_reader_mdjson_domainItem.rb +0 -98
  505. data/test/readers/mdJson/v1/tc_reader_mdjson_entity.rb +0 -134
  506. data/test/readers/mdJson/v1/tc_reader_mdjson_entityAttribute.rb +0 -154
  507. data/test/readers/mdJson/v1/tc_reader_mdjson_entityForeignKey.rb +0 -100
  508. data/test/readers/mdJson/v1/tc_reader_mdjson_entityIndex.rb +0 -99
  509. data/test/readers/mdJson/v1/tc_reader_mdjson_legalConstraint.rb +0 -104
  510. data/test/readers/mdJson/v1/tc_reader_mdjson_lineage.rb +0 -117
  511. data/test/readers/mdJson/v1/tc_reader_mdjson_medium.rb +0 -98
  512. data/test/readers/mdJson/v1/tc_reader_mdjson_metadataInfo.rb +0 -141
  513. data/test/readers/mdJson/v1/tc_reader_mdjson_onlineResource.rb +0 -110
  514. data/test/readers/mdJson/v1/tc_reader_mdjson_phone.rb +0 -112
  515. data/test/readers/mdJson/v1/tc_reader_mdjson_processStep.rb +0 -118
  516. data/test/readers/mdJson/v1/tc_reader_mdjson_resolution.rb +0 -77
  517. data/test/readers/mdJson/v1/tc_reader_mdjson_source.rb +0 -117
  518. data/test/readers/mdJson/v1/tc_reader_mdjson_translation.rb +0 -85
  519. data/test/readers/mdJson/v1/tc_translation_19110.rb +0 -58
  520. data/test/readers/sbJson/v0/tc_reader_sbjson_translation.rb +0 -81
  521. data/test/readers/sbJson/v0/test.json +0 -431
  522. data/test/readers/sbJson/v0/test1.json +0 -383
  523. data/test/writers/iso19115_2/tc_writer_iso19115_2_address.rb +0 -229
  524. data/test/writers/mdJson/v1/tc_writer_mdJson.rb +0 -62
  525. data/test/writers/sbJson/v0/tc_writer_sbJson.rb +0 -62
@@ -1,5 +1,4 @@
1
1
  require 'json'
2
- require_relative 'sbJson_validator'
3
2
 
4
3
  module ADIWG
5
4
  module Mdtranslator
@@ -9,32 +8,32 @@ module ADIWG
9
8
  def self.readFile(file, responseObj)
10
9
 
11
10
  # set reference to responseObj for use throughout this module
12
- @responseObj = responseObj
11
+ @hResponseObj = responseObj
13
12
 
14
13
  # receive json file into ruby hash
15
14
  parseJson(file)
16
- if !@responseObj[:readerStructurePass]
15
+ if !@hResponseObj[:readerStructurePass]
17
16
  return false
18
17
  end
19
18
 
20
19
  # set format of file in $response
21
- @responseObj[:readerFormat] = 'json'
20
+ @hResponseObj[:readerFormat] = 'json'
22
21
 
23
22
  # check sbJson version name
24
23
  checkVersionName
25
- if !@responseObj[:readerStructurePass]
24
+ if !@hResponseObj[:readerStructurePass]
26
25
  return false
27
26
  end
28
27
 
29
28
  # check sbJson version number
30
29
  checkVersionNumber
31
- if !@responseObj[:readerStructurePass]
30
+ if !@hResponseObj[:readerStructurePass]
32
31
  return false
33
32
  end
34
33
 
35
34
  #validate file against sbJson schema definition
36
- validate(file, @responseObj)
37
- if !@responseObj[:readerValidationPass]
35
+ validate(file, @hResponseObj)
36
+ if !@hResponseObj[:readerValidationPass]
38
37
  return false
39
38
  end
40
39
 
@@ -47,7 +46,7 @@ module ADIWG
47
46
  @intObj = intMetadataClass.newBase
48
47
 
49
48
  #
50
- ADIWG::Mdtranslator::Readers::SbJson.unpack(@intObj, @hSbJson, @responseObj)
49
+ ADIWG::Mdtranslator::Readers::SbJson.unpack(@intObj, @hSbJson, @hResponseObj)
51
50
  return @intObj
52
51
 
53
52
  end
@@ -64,11 +63,11 @@ module ADIWG
64
63
  "version" => "0.0.0"
65
64
  }
66
65
 
67
- @responseObj[:readerStructurePass] = true
66
+ @hResponseObj[:readerStructurePass] = true
68
67
  rescue JSON::JSONError => err
69
- @responseObj[:readerStructurePass] = false
70
- @responseObj[:readerStructureMessages] << 'JSON Parsing Failed - see following message(s):\n'
71
- @responseObj[:readerStructureMessages] << err.to_s.slice(0,300)
68
+ @hResponseObj[:readerStructurePass] = false
69
+ @hResponseObj[:readerStructureMessages] << 'JSON Parsing Failed - see following message(s):\n'
70
+ @hResponseObj[:readerStructureMessages] << err.to_s.slice(0, 300)
72
71
  end
73
72
  end
74
73
 
@@ -77,9 +76,9 @@ module ADIWG
77
76
  if @hSbJson.has_key?('version')
78
77
  hVersion = @hSbJson['version']
79
78
  else
80
- @responseObj[:readerStructurePass] = false
81
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
82
- @responseObj[:readerStructureMessages] << 'The input file is missing the version:{} block.'
79
+ @hResponseObj[:readerStructurePass] = false
80
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
81
+ @hResponseObj[:readerStructureMessages] << 'The input file is missing the version:{} block.'
83
82
  return
84
83
  end
85
84
 
@@ -87,24 +86,24 @@ module ADIWG
87
86
  if hVersion.has_key?('name')
88
87
  s = hVersion['name']
89
88
  if s.nil?
90
- @responseObj[:readerStructurePass] = false
91
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
92
- @responseObj[:readerStructureMessages] << 'The input file version: => name: is missing.'
89
+ @hResponseObj[:readerStructurePass] = false
90
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
91
+ @hResponseObj[:readerStructureMessages] << 'The input file version: => name: is missing.'
93
92
  return
94
93
  end
95
94
  else
96
- @responseObj[:readerStructurePass] = false
97
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
98
- @responseObj[:readerStructureMessages] << "The input file version:{} block is missing the 'name:' attribute."
95
+ @hResponseObj[:readerStructurePass] = false
96
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
97
+ @hResponseObj[:readerStructureMessages] << "The input file version:{} block is missing the 'name:' attribute."
99
98
  return
100
99
  end
101
100
 
102
101
  # check the version name is 'sbJson'
103
102
  if s != 'sbJson'
104
- @responseObj[:readerStructurePass] = false
105
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
106
- @responseObj[:readerStructureMessages] << "The mdTranslator reader expected the input file version: name: to be 'sbJson'."
107
- @responseObj[:readerStructureMessages] << "Version name found was: '#{s}'."
103
+ @hResponseObj[:readerStructurePass] = false
104
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
105
+ @hResponseObj[:readerStructureMessages] << "The mdTranslator reader expected the input file version: name: to be 'sbJson'."
106
+ @hResponseObj[:readerStructureMessages] << "Version name found was: '#{s}'."
108
107
  end
109
108
  end
110
109
 
@@ -114,12 +113,12 @@ module ADIWG
114
113
  if hVersion.has_key?('version')
115
114
  s = hVersion['version']
116
115
  if !s.nil?
117
- @responseObj[:readerVersionRequested] = s
116
+ @hResponseObj[:readerVersionRequested] = s
118
117
  end
119
118
  else
120
- @responseObj[:readerStructurePass] = false
121
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
122
- @responseObj[:readerStructureMessages] << "The input file version:{} block is missing the 'version:' number attribute."
119
+ @hResponseObj[:readerStructurePass] = false
120
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
121
+ @hResponseObj[:readerStructureMessages] << "The input file version:{} block is missing the 'version:' number attribute."
123
122
  return
124
123
  end
125
124
 
@@ -135,10 +134,10 @@ module ADIWG
135
134
  # look for a folder with modules for the major version number
136
135
  dirName = File.join(File.dirname(__FILE__), 'modules_v' + reqMajor)
137
136
  if !File.directory?(dirName)
138
- @responseObj[:readerStructurePass] = false
139
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
140
- @responseObj[:readerStructureMessages] << 'A reader for the requested version is not supported.'
141
- @responseObj[:readerStructureMessages] << "sbJson version requested was '#{s}'"
137
+ @hResponseObj[:readerStructurePass] = false
138
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
139
+ @hResponseObj[:readerStructureMessages] << 'A reader for the requested version is not supported.'
140
+ @hResponseObj[:readerStructureMessages] << "sbJson version requested was '#{s}'"
142
141
  return false
143
142
  end
144
143
 
@@ -146,7 +145,7 @@ module ADIWG
146
145
  # get the full version number for this major version of sbJson
147
146
  require File.join(dirName, 'version')
148
147
  curVersion = ADIWG::Mdtranslator::Readers::SbJson::VERSION
149
- @responseObj[:readerVersionUsed] = curVersion
148
+ @hResponseObj[:readerVersionUsed] = curVersion
150
149
  aCurVersion = curVersion.split('.')
151
150
  curMinor = aCurVersion[1]
152
151
 
@@ -155,10 +154,10 @@ module ADIWG
155
154
  if !aReqVersion[1].nil?
156
155
  reqMinor = aReqVersion[1]
157
156
  if curMinor < reqMinor
158
- @responseObj[:readerStructurePass] = false
159
- @responseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
160
- @responseObj[:readerStructureMessages] << 'The requested reader minor version is not supported.'
161
- @responseObj[:readerStructureMessages] << "sbJson version requested was '#{s}'"
157
+ @hResponseObj[:readerStructurePass] = false
158
+ @hResponseObj[:readerStructureMessages] << 'Invalid input file schema declaration - see following message(s):\n'
159
+ @hResponseObj[:readerStructureMessages] << 'The requested reader minor version is not supported.'
160
+ @hResponseObj[:readerStructureMessages] << "sbJson version requested was '#{s}'"
162
161
  return false
163
162
  end
164
163
  end
@@ -181,7 +180,7 @@ module ADIWG
181
180
 
182
181
  # require modules for the requested version
183
182
  def self.readerModule(moduleName)
184
- majVersion = @responseObj[:readerVersionUsed].split('.')[0]
183
+ majVersion = @hResponseObj[:readerVersionUsed].split('.')[0]
185
184
  dirName = File.join(File.dirname(__FILE__), 'modules_v' + majVersion.to_s)
186
185
  fileName = File.join(dirName, moduleName)
187
186
 
@@ -1,7 +1,44 @@
1
1
  # adiwg mdTranslator
2
2
 
3
- # version history
3
+ # version 2 history
4
+ # 2016-10-01 start of version 2
4
5
 
6
+ module ADIWG
7
+ module Mdtranslator
8
+ # current mdtranslator version
9
+ VERSION = "2.0.0rc2"
10
+ end
11
+ end
12
+
13
+ # version 2 history
14
+ # 2.0.0rc2 2017-04-21 removed inline CSS option from CLI
15
+ # 2.0.0rc1 2017-04-09 release candidate 1
16
+
17
+ # version 1 history
18
+ # 1.0.0rc1 2015-02-27 schema 1.0 support
19
+ # 1.1.0 2015-04-13 added html writer
20
+ # 1.2.0 2015-06-12 added mdCodes for source of codelists
21
+ # --- added comments to XML headers for citation of ADIwg
22
+ # --- added reader and writer names to CLI help
23
+ # --- added check in responsibleParty for valid contactId
24
+ # --- added characterSets to resource and metadata, updated iso19115_2 and html writers
25
+ # 1.3.0 2015-06-22 removed global variables for the response object
26
+ # --- removed global for show all tags and placed in response object
27
+ # --- removed global for counter for missing ISO IDs and placed in response object
28
+ # --- removed global pointers to contacts and domain arrays and point to @intObj
29
+ # 1.3.0 2015-07-14 removed global namespaces for readers and writers
30
+ # 1.3.0 2015-07-16 added version number management for readers and writers
31
+ # --- moved module_coordinates to internal
32
+ # 1.3.0 2015-07-17 suppress minor section anchor links when no section data available is in html writer
33
+ # --- added meta tags to the html writer
34
+ # --- added --css and --cssLink method_options to CLI
35
+ # 1.3.0 2015-07-20 moved mdTranslator logo to css so it can be replaced using user provided css
36
+ # 1.3.0 2015-07-30 added locale to metadata info and resource info
37
+ # 1.3.0 2015-07-31 added grid information to resource info
38
+ # 1.3.0 2015-08-19 added coverageInfo, imageInfo, sensorInfo, coverageItem, classifiedData, and classedDataItem
39
+
40
+
41
+ # # version 0 history
5
42
  # 0.8.0 2014-09-26 first version to release
6
43
  # 0.8.1 2014-10-06 used uri from first onlineResource of the resource citation
7
44
  # ... as source for datasetURI in iso19115-2 writer
@@ -36,31 +73,3 @@
36
73
  # 0.13.0 2015-01-28 made data dictionary an array
37
74
  # ... added alias to entity and attribute
38
75
  # ... added local names to iso 19110 writer
39
- # 1.0.0rc1 2015-02-27 schema 1.0 support
40
- # 1.1.0 2015-04-13 added html writer
41
- # 1.2.0 2015-06-12 added mdCodes for source of codelists
42
- # --- added comments to XML headers for citation of ADIwg
43
- # --- added reader and writer names to CLI help
44
- # --- added check in responsibleParty for valid contactId
45
- # --- added characterSets to resource and metadata, updated iso19115_2 and html writers
46
- # 1.3.0 2015-06-22 removed global variables for the response object
47
- # --- removed global for show all tags and placed in response object
48
- # --- removed global for counter for missing ISO IDs and placed in response object
49
- # --- removed global pointers to contacts and domain arrays and point to @intObj
50
- # 1.3.0 2015-07-14 removed global namespaces for readers and writers
51
- # 1.3.0 2015-07-16 added version number management for readers and writers
52
- # --- moved module_coordinates to internal
53
- # 1.3.0 2015-07-17 suppress minor section anchor links when no section data available is in html writer
54
- # --- added meta tags to the html writer
55
- # --- added --css and --cssLink method_options to CLI
56
- # 1.3.0 2015-07-20 moved mdTranslator logo to css so it can be replaced using user provided css
57
- # 1.3.0 2015-07-30 added locale to metadata info and resource info
58
- # 1.3.0 2015-07-31 added grid information to resource info
59
- # 1.3.0 2015-08-19 added coverageInfo, imageInfo, sensorInfo, coverageItem, classifiedData, and classedDataItem
60
-
61
- module ADIWG
62
- module Mdtranslator
63
- # current mdtranslator version
64
- VERSION = "1.4.0"
65
- end
66
- end
@@ -1,41 +1,44 @@
1
1
  # Writer - html metadata writer
2
2
 
3
3
  # History:
4
- # Stan Smith 2015-01-28 original script
5
- # Stan Smith 2015-06-23 replace global ($response) with passed in object (responseObj)
6
- # Stan Smith 2015-07-16 refactored to remove global namespace $HtmlNS
4
+ # Stan Smith 2017 03-21 refactored for mdTranslator 2.0
5
+ # Stan Smith 2015-07-16 refactored to remove global namespace $HtmlNS
6
+ # Stan Smith 2015-06-23 replace global ($response) with passed in object (responseObj)
7
+ # Stan Smith 2015-01-28 original script
7
8
 
8
9
  require 'builder'
9
10
  require_relative 'version'
10
- require_relative 'md_html_writer'
11
+ require_relative 'sections/html_document'
11
12
 
12
13
  module ADIWG
13
- module Mdtranslator
14
- module Writers
15
- module Html
14
+ module Mdtranslator
15
+ module Writers
16
+ module Html
16
17
 
17
- def self.startWriter(intObj, responseObj, paramsObj)
18
+ def self.startWriter(intObj, responseObj)
18
19
 
19
- # set the format of the output file based on the writer specified
20
- responseObj[:writerFormat] = 'html'
21
- responseObj[:writerVersion] = ADIWG::Mdtranslator::Writers::Html::VERSION
20
+ # set the format and version of the output file
21
+ responseObj[:writerFormat] = 'html'
22
+ responseObj[:writerVersion] = ADIWG::Mdtranslator::Writers::Html::VERSION
22
23
 
23
- # create new HTML document
24
- html = Builder::XmlMarkup.new(indent: 3)
25
- metadataWriter = MdHtmlWriter.new(html, intObj, paramsObj)
26
- metadata = metadataWriter.writeHtml()
24
+ # create new HTML document
25
+ html = Builder::XmlMarkup.new(indent: 3)
26
+ # metadataWriter = MdHtmlWriter.new(html, intObj, paramsObj)
27
+ htmlDocument = Html_Document.new(html, intObj)
28
+ metadata = htmlDocument.writeHtml(responseObj)
27
29
 
28
- # set writer pass to true if no messages
29
- # false or warning will be set by code that places the message
30
- if responseObj[:writerMessages].length == 0
31
- responseObj[:writerPass] = true
32
- end
30
+ # set writer pass to true if no messages
31
+ # false or warning will be set by code that places the message
32
+ if responseObj[:writerMessages].empty?
33
+ responseObj[:writerPass] = true
34
+ end
33
35
 
34
- return metadata
35
- end
36
+ return metadata
36
37
 
37
- end
38
- end
39
- end
38
+ end # startWriter
39
+
40
+ end
41
+ end
42
+ end
40
43
  end
41
44
 
@@ -3,12 +3,6 @@
3
3
 
4
4
  ### Writer for HTML 'human-readable' output of metadata
5
5
 
6
- The HTML version of metadata is intended to be a human readable
7
- version of the metadata content. The HTML output does not mimic
8
- any established metadata standard but remains agnostic in its
9
- presentation. The HTML metadata version will present the entire
10
- content of the metadata provided to the mdTranslator reader.
11
-
12
- The HTML writer can be use to allow users to conveniently scan
13
- metadata prior to downloading a data file or to generate a printed
14
- version of metadata to accompany a report.
6
+ The HTML Metadata Record output from the mdTranslator is intended to be a human readable version of the metadata content read in by the translator. The HTML output does not attempt mimic any established metadata standard but remains agnostic in its presentation. The HTML metadata output will display the full content of the metadata record ingested by the mdTranslator while translation to established standards may not support all fields.
7
+
8
+ The HTML output can be conveniently embedded in a users web page to present metadata content to visitors.
@@ -2,47 +2,48 @@
2
2
  # additional documentation
3
3
 
4
4
  # History:
5
+ # Stan Smith 2017-04-04 refactored for mdTranslator 2.0
5
6
  # Stan Smith 2015-08-21 original script
6
7
 
8
+ require_relative 'html_resourceType'
7
9
  require_relative 'html_citation'
8
10
 
9
11
  module ADIWG
10
- module Mdtranslator
11
- module Writers
12
- module Html
13
-
14
- class MdHtmlAdditionalDocumentation
15
- def initialize(html)
16
- @html = html
17
- end
18
-
19
- def writeHtml(hAddDoc)
20
-
21
- # classes used
22
- htmlCitation = MdHtmlCitation.new(@html)
23
-
24
- # additional documentation - resource type
25
- s = hAddDoc[:resourceType]
26
- if !s.nil?
27
- @html.em('Resource type: ')
28
- @html.text!(s)
29
- @html.br
30
- end
12
+ module Mdtranslator
13
+ module Writers
14
+ module Html
31
15
 
32
- # additional documentation - citation
33
- hCitation = hAddDoc[:citation]
34
- if !hCitation.empty?
35
- @html.em('Citation: ')
36
- @html.section(:class=>'block') do
37
- htmlCitation.writeHtml(hCitation)
38
- end
39
- end
16
+ class Html_AdditionalDocumentation
17
+
18
+ def initialize(html)
19
+ @html = html
20
+ end
21
+
22
+ def writeHtml(hAddDoc)
40
23
 
41
- end # writeHtml
24
+ # classes used
25
+ typeClass = Html_ResourceType.new(@html)
26
+ citationClass = Html_Citation.new(@html)
27
+
28
+ # additional documentation - resource type [] {resourceType}
29
+ hAddDoc[:resourceTypes].each do |hType|
30
+ typeClass.writeHtml(hType)
31
+ end
32
+
33
+ # additional documentation - citation [] {citation}
34
+ hAddDoc[:citation].each do |hCitation|
35
+ @html.details do
36
+ @html.summary(hCitation[:title], {'class' => 'h5'})
37
+ @html.section(:class => 'block') do
38
+ citationClass.writeHtml(hCitation)
39
+ end
40
+ end
41
+ end
42
42
 
43
- end # class
43
+ end # writeHtml
44
+ end # Html_AdditionalDocumentation
44
45
 
45
- end
46
- end
47
- end
46
+ end
47
+ end
48
+ end
48
49
  end
@@ -0,0 +1,71 @@
1
+ # HTML writer
2
+ # allocation
3
+
4
+ # History:
5
+ # Stan Smith 2017-04-04 original script
6
+
7
+ module ADIWG
8
+ module Mdtranslator
9
+ module Writers
10
+ module Html
11
+
12
+ class Html_Allocation
13
+
14
+ def initialize(html)
15
+ @html = html
16
+ end
17
+
18
+ def writeHtml(hAllocation)
19
+
20
+ # allocation - amount
21
+ unless hAllocation[:amount].nil?
22
+ @html.em('Amount: ')
23
+ @html.text!(hAllocation[:amount].to_s)
24
+ @html.br
25
+ end
26
+
27
+ # allocation - currency
28
+ unless hAllocation[:currency].nil?
29
+ @html.em('Currency: ')
30
+ @html.text!(hAllocation[:currency])
31
+ @html.br
32
+ end
33
+
34
+ # allocation - sourceId
35
+ unless hAllocation[:sourceId].nil?
36
+ hContact = Html_Document.getContact(hAllocation[:sourceId])
37
+ @html.em('Source Contact: ')
38
+ @html.a(hContact[:contactId], 'href' => '#CID_'+hContact[:contactId])
39
+ @html.br
40
+ end
41
+
42
+ # allocation - recipientId
43
+ unless hAllocation[:recipientId].nil?
44
+ hContact = Html_Document.getContact(hAllocation[:recipientId])
45
+ @html.em('Recipient Contact: ')
46
+ @html.a(hContact[:contactId], 'href' => '#CID_'+hContact[:contactId])
47
+ @html.br
48
+ end
49
+
50
+ # allocation - matching {Boolean}
51
+ unless hAllocation[:matching].nil?
52
+ @html.em('Matching Funds Provided: ')
53
+ @html.text!(hAllocation[:matching].to_s)
54
+ @html.br
55
+ end
56
+
57
+ # allocation - comment
58
+ unless hAllocation[:comment].nil?
59
+ @html.em('Comment: ')
60
+ @html.section(:class => 'block') do
61
+ @html.text!(hAllocation[:comment])
62
+ end
63
+ end
64
+
65
+ end # writeHtml
66
+ end # Html_Allocation
67
+
68
+ end
69
+ end
70
+ end
71
+ end
@@ -2,72 +2,72 @@
2
2
  # associated resource
3
3
 
4
4
  # History:
5
+ # Stan Smith 2017-04-04 refactored for mdTranslator 2.0
5
6
  # Stan Smith 2015-08-21 original script
6
7
 
8
+ require_relative 'html_resourceType'
7
9
  require_relative 'html_citation'
8
10
 
9
11
  module ADIWG
10
- module Mdtranslator
11
- module Writers
12
- module Html
12
+ module Mdtranslator
13
+ module Writers
14
+ module Html
13
15
 
14
- class MdHtmlAssociatedResource
15
- def initialize(html)
16
- @html = html
17
- end
16
+ class Html_AssociatedResource
18
17
 
19
- def writeHtml(hAssRes)
18
+ def initialize(html)
19
+ @html = html
20
+ end
20
21
 
21
- # classes used
22
- htmlCitation = MdHtmlCitation.new(@html)
22
+ def writeHtml(hResource)
23
23
 
24
- # associated resource - resource type
25
- s = hAssRes[:resourceType]
26
- if !s.nil?
27
- @html.em('Resource type: ')
28
- @html.text!(s)
29
- @html.br
30
- end
24
+ # classes used
25
+ typeClass = Html_ResourceType.new(@html)
26
+ citationClass = Html_Citation.new(@html)
31
27
 
32
- # associated resource - association type
33
- s = hAssRes[:associationType]
34
- if !s.nil?
35
- @html.em('Association type: ')
36
- @html.text!(s)
37
- @html.br
38
- end
28
+ # associated resource - resource type
29
+ hResource[:resourceTypes].each do |hType|
30
+ typeClass.writeHtml(hType)
31
+ end
39
32
 
40
- # associated resource - initiative type
41
- s = hAssRes[:initiativeType]
42
- if !s.nil?
43
- @html.em('Initiative type: ')
44
- @html.text!(s)
45
- @html.br
46
- end
33
+ # associated resource - association type {associationTypeCode}
34
+ unless hResource[:associationType].nil?
35
+ @html.em('Association type: ')
36
+ @html.text!(hResource[:associationType])
37
+ @html.br
38
+ end
47
39
 
48
- # associated resource - citation
49
- hCitation = hAssRes[:resourceCitation]
50
- if !hCitation.empty?
51
- @html.em('Resource citation: ')
52
- @html.section(:class=>'block') do
53
- htmlCitation.writeHtml(hCitation)
54
- end
55
- end
40
+ # associated resource - initiative type {initiativeTypeCode}
41
+ unless hResource[:initiativeType].nil?
42
+ @html.em('Initiative type: ')
43
+ @html.text!(hResource[:initiativeType])
44
+ @html.br
45
+ end
56
46
 
57
- # associated resource - metadata citation
58
- hCitation = hAssRes[:metadataCitation]
59
- if !hCitation.empty?
60
- @html.em('Metadata citation: ')
61
- @html.section(:class=>'block') do
62
- htmlCitation.writeHtml(hCitation)
63
- end
47
+ # associated resource - resource citation {citation}
48
+ unless hResource[:resourceCitation].empty?
49
+ @html.details do
50
+ @html.summary('Resource citation', {'class' => 'h5'})
51
+ @html.section(:class => 'block') do
52
+ citationClass.writeHtml(hResource[:resourceCitation])
64
53
  end
54
+ end
55
+ end
65
56
 
66
- end # writeHtml
57
+ # associated resource - metadata citation
58
+ unless hResource[:metadataCitation].empty?
59
+ @html.details do
60
+ @html.summary('Metadata citation', {'class' => 'h5'})
61
+ @html.section(:class => 'block') do
62
+ citationClass.writeHtml(hResource[:metadataCitation])
63
+ end
64
+ end
65
+ end
67
66
 
68
- end # class
67
+ end # writeHtml
68
+ end # Html_AssociatedResource
69
69
 
70
- end
71
- end
72
- end
70
+ end
71
+ end
72
+ end
73
73
  end