adiwg-mdtranslator 1.4.0 → 2.0.0rc2

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 (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,156 +0,0 @@
1
- # ISO <<Class>> Multi Geometry
2
- # writer output in XML
3
-
4
- # History:
5
- # Stan Smith 2013-11-12 original script.
6
- # Stan Smith 2013-11-13 add line string
7
- # Stan Smith 2014-05-30 modified for version 0.5.0
8
- # Stan Smith 2014-07-08 modify require statements to function in RubyGem structure
9
- # Stan Smith 2014-12-12 refactored to handle namespacing readers and writers
10
- # Stan Smith 2015-06-22 replace global ($response) with passed in object (responseObj)
11
- # Stan Smith 2015-07-14 refactored to make iso19110 independent of iso19115_2 classes
12
- # Stan Smith 2015-07-14 refactored to eliminate namespace globals $WriterNS and $IsoNS
13
-
14
- #require ADIWG::Mdtranslator::Readers::MdJson.readerModule('module_point')
15
- #require ADIWG::Mdtranslator::Readers::MdJson.readerModule('module_lineString')
16
- require_relative 'class_point'
17
- require_relative 'class_lineString'
18
- require_relative 'class_polygon'
19
-
20
- module ADIWG
21
- module Mdtranslator
22
- module Writers
23
- module Iso19115_2
24
-
25
- class MultiGeometry
26
-
27
- def initialize(xml, responseObj)
28
- @xml = xml
29
- @responseObj = responseObj
30
- end
31
-
32
- def writeXML(hGeoElement)
33
-
34
- # classes used
35
- intMetadataClass = InternalMetadata.new
36
- pointClass = Point.new(@xml, @responseObj)
37
- lineClass = LineString.new(@xml, @responseObj)
38
- polygonClass = Polygon.new(@xml, @responseObj)
39
-
40
-
41
- # gml:MultiGeometry attributes
42
- attributes = {}
43
-
44
- # gml:MultiGeometry attributes - gml:id - required
45
- mGeoID = hGeoElement[:elementId]
46
- if mGeoID.nil?
47
- @responseObj[:writerMissingIdCount] = @responseObj[:writerMissingIdCount].succ
48
- mGeoID = 'multiGeo' + @responseObj[:writerMissingIdCount]
49
- end
50
- attributes['gml:id'] = mGeoID
51
-
52
- # gml:MultiGeometry attributes - srsDimension
53
- s = hGeoElement[:elementGeometry][:dimension]
54
- if !s.nil?
55
- attributes[:srsDimension] = s
56
- end
57
-
58
- # gml:MultiGeometry attributes - srsName
59
- s = hGeoElement[:elementSrs][:srsName]
60
- if !s.nil?
61
- attributes[:srsName] = s
62
- end
63
-
64
- @xml.tag!('gml:MultiGeometry', attributes) do
65
-
66
- # multi geometry - description
67
- s = hGeoElement[:elementDescription]
68
- if !s.nil?
69
- @xml.tag!('gml:description', s)
70
- elsif @responseObj[:writerShowTags]
71
- @xml.tag!('gml:description')
72
- end
73
-
74
- # multi geometry - name
75
- s = hGeoElement[:elementName]
76
- if !s.nil?
77
- @xml.tag!('gml:name', s)
78
- elsif @responseObj[:writerShowTags]
79
- @xml.tag!('gml:name')
80
- end
81
-
82
- # GeoJSON multi-objects need to be broken into independent
83
- # ... geometry members for ISO representation
84
- geoType = hGeoElement[:elementGeometry][:geoType]
85
- case geoType
86
- when 'MultiPoint'
87
- aPoints = hGeoElement[:elementGeometry][:geometry]
88
- if !aPoints.empty?
89
- @xml.tag!('gml:geometryMembers') do
90
- aPoints.each do |aCoords|
91
- intPoint = intMetadataClass.newGeoElement
92
- intPoint[:elementSrs] = hGeoElement[:elementSrs]
93
- intPoint[:elementGeometry] = ADIWG::Mdtranslator::Point.unpack(aCoords, 'Point', @responseObj)
94
- pointClass.writeXML(intPoint)
95
- end
96
- end
97
- end
98
- when 'MultiLineString'
99
- aLines = hGeoElement[:elementGeometry][:geometry]
100
- if !aLines.empty?
101
- @xml.tag!('gml:geometryMembers') do
102
- aLines.each do |aCoords|
103
- intLine = intMetadataClass.newGeoElement
104
- intLine[:elementSrs] = hGeoElement[:elementSrs]
105
- intLine[:elementGeometry] = ADIWG::Mdtranslator::LineString.unpack(aCoords, 'LineString', @responseObj)
106
- lineClass.writeXML(intLine)
107
- end
108
- end
109
- end
110
- when 'MultiPolygon'
111
- aPolygons = hGeoElement[:elementGeometry][:geometry]
112
- if !aPolygons.empty?
113
- @xml.tag!('gml:geometryMembers') do
114
- aPolygons.each do |aCoords|
115
- intPolygon = intMetadataClass.newGeoElement
116
- intPolygon[:elementSrs] = hGeoElement[:elementSrs]
117
- intPolygon[:elementGeometry] = ADIWG::Mdtranslator::LineString.unpack(aCoords, 'Polygon', @responseObj)
118
- polygonClass.writeXML(intPolygon)
119
- end
120
- end
121
- end
122
- end
123
-
124
- # multi geometry - geometry members
125
- # GeoJSON GeometryCollection
126
- # GeoJSON FeatureCollection
127
- case geoType
128
- when 'MultiGeometry'
129
- aGeometry = hGeoElement[:elementGeometry][:geometry]
130
- if !aGeometry.empty?
131
- @xml.tag!('gml:geometryMembers') do
132
- aGeometry.each do |hGeometry|
133
- hGeoType = hGeometry[:elementGeometry][:geoType]
134
- case hGeoType
135
- when 'Point'
136
- pointClass.writeXML(hGeometry)
137
- when 'LineString'
138
- lineClass.writeXML(hGeometry)
139
- when 'Polygon'
140
- polygonClass.writeXML(hGeometry)
141
- end
142
- end
143
- end
144
- end
145
- end
146
-
147
- end
148
-
149
- end
150
-
151
- end
152
-
153
- end
154
- end
155
- end
156
- end
@@ -1,88 +0,0 @@
1
- # ISO <<Class>> MI_RangeElementDescription
2
- # writer output in XML
3
-
4
- # History:
5
- # Stan Smith 2015-08-28 original script.
6
-
7
- require_relative 'class_resourceIdentifier'
8
-
9
- module ADIWG
10
- module Mdtranslator
11
- module Writers
12
- module Iso19115_2
13
-
14
- class MI_RangeElementDescription
15
-
16
- def initialize(xml, responseObj)
17
- @xml = xml
18
- @responseObj = responseObj
19
- end
20
-
21
- def writeXML(hCoverItem)
22
-
23
- # classes used
24
- resIdClass = RS_Identifier.new(@xml, @responseObj)
25
-
26
- hClass = hCoverItem[:classedData]
27
-
28
- @xml.tag!('gmi:MI_RangeElementDescription') do
29
-
30
- # range element description - name - required
31
- s = hCoverItem[:itemName]
32
- if !s.nil?
33
- @xml.tag!('gmi:name') do
34
- @xml.tag!('gco:CharacterString', s)
35
- end
36
- else
37
- @xml.tag!('gmi:name', {'gco:nilReason'=>'missing'})
38
- end
39
-
40
- # range element description - definition - required
41
- s = hCoverItem[:itemDescription]
42
- if !s.nil?
43
- @xml.tag!('gmi:definition') do
44
- @xml.tag!('gco:CharacterString', s)
45
- end
46
- else
47
- @xml.tag!('gmi:definition', {'gco:nilReason'=>'missing'})
48
- end
49
-
50
- # range element description - range element - required
51
- if !hClass.empty?
52
- aElements = hClass[:classedDataItems]
53
- if aElements.length > 0
54
- aElements.each do |hElement|
55
-
56
- # convert element to RS_Identifier
57
- intMetadataClass = InternalMetadata.new
58
- hResId = intMetadataClass.newResourceId
59
- hCitation = intMetadataClass.newCitation
60
-
61
- hCitation[:citTitle] = hElement[:className]
62
- hCitation[:citAltTitle] = hElement[:classDescription]
63
- hResId[:identifier] = hElement[:classValue]
64
- hResId[:identifierCitation] = hCitation
65
-
66
- @xml.tag!('gmi:rangeElement') do
67
- @xml.tag!('gco:Record') do
68
- resIdClass.writeXML(hResId)
69
- end
70
- end
71
-
72
- end
73
- else
74
- @xml.tag!('gmi:rangeElement', {'gco:nilReason'=>'missing'})
75
- end
76
- end
77
-
78
-
79
- end
80
-
81
- end
82
-
83
- end
84
-
85
- end
86
- end
87
- end
88
- end
@@ -1,94 +0,0 @@
1
- # ISO <<Class>> RS_Identifier
2
- # writer
3
- # output for ISO 19115-2 XML
4
-
5
- # History:
6
- # Stan Smith 2014-09-03 original script
7
- # Stan Smith 2014-12-12 refactored to handle namespacing readers and writers
8
- # Stan Smith 2015-06-22 replace global ($response) with passed in object (responseObj)
9
- # Stan Smith 2015-07-14 refactored to make iso19110 independent of iso19115_2 classes
10
- # Stan Smith 2015-07-14 refactored to eliminate namespace globals $WriterNS and $IsoNS
11
- # Stan Smith 2015-08-28 added codeSpace and version
12
-
13
- require_relative 'class_citation'
14
-
15
- module ADIWG
16
- module Mdtranslator
17
- module Writers
18
- module Iso19115_2
19
-
20
- class RS_Identifier
21
-
22
- def initialize(xml, responseObj)
23
- @xml = xml
24
- @responseObj = responseObj
25
- end
26
-
27
- def writeXML(hResId)
28
-
29
- # classes used in MD_Metadata
30
- citationClass = CI_Citation.new(@xml, @responseObj)
31
-
32
- @xml.tag!('gmd:RS_Identifier') do
33
-
34
- # identifier - authority - CI_Citation
35
- hCitation = hResId[:identifierCitation]
36
- if !hCitation.empty?
37
- @xml.tag!('gmd:authority') do
38
- citationClass.writeXML(hCitation)
39
- end
40
- elsif @responseObj[:writerShowTags]
41
- @xml.tag!('gmd:authority')
42
- end
43
-
44
- # identity - code - required
45
- # special handling for identifiers types epsg number, wkt, doi
46
- case hResId[:identifierType]
47
- when 'epsg'
48
- code = 'urn:ocg:def:crs:EPSG::' + hResId[:identifier].to_s
49
-
50
- when 'wkt'
51
- code = 'WKT::' + hResId[:identifier]
52
-
53
- when 'doi'
54
- code = 'doi::' + hResId[:identifier]
55
-
56
- else
57
- code = hResId[:identifier]
58
-
59
- end
60
-
61
- @xml.tag!('gmd:code') do
62
- @xml.tag!('gco:CharacterString', code)
63
- end
64
-
65
- # identity - code space
66
- s = hResId[:identifierNamespace]
67
- if !s.nil?
68
- @xml.tag!('gmd:codeSpace') do
69
- @xml.tag!('gco:CharacterString', s)
70
- end
71
- elsif @responseObj[:writerShowTags]
72
- @xml.tag!('gmd:codeSpace')
73
- end
74
-
75
- # identify - version
76
- s = hResId[:identifierVersion]
77
- if !s.nil?
78
- @xml.tag!('gmd:version') do
79
- @xml.tag!('gco:CharacterString', s)
80
- end
81
- elsif @responseObj[:writerShowTags]
82
- @xml.tag!('gmd:version')
83
- end
84
-
85
- end
86
-
87
- end
88
-
89
- end
90
-
91
- end
92
- end
93
- end
94
- end
@@ -1,115 +0,0 @@
1
- # ISO <<Class>> MD_TaxonSys
2
- # writer output in XML
3
-
4
- # History:
5
- # Stan Smith 2013-11-19 original script.
6
- # Stan Smith 2014-07-08 modify require statements to function in RubyGem structure
7
- # Stan Smith 2014-12-15 refactored to handle namespacing readers and writers
8
- # Stan Smith 2015-06-22 replace global ($response) with passed in object (responseObj)
9
- # Stan Smith 2015-07-14 refactored to make iso19110 independent of iso19115_2 classes
10
- # Stan Smith 2015-07-14 refactored to eliminate namespace globals $WriterNS and $IsoNS
11
-
12
- require_relative 'class_citation'
13
- require_relative 'class_responsibleParty'
14
- require_relative 'class_vouchers'
15
- require_relative 'class_taxonClassification'
16
-
17
- module ADIWG
18
- module Mdtranslator
19
- module Writers
20
- module Iso19115_2
21
-
22
- class MD_TaxonSys
23
-
24
- def initialize(xml, responseObj)
25
- @xml = xml
26
- @responseObj = responseObj
27
- end
28
-
29
- def writeXML(hTaxonSys)
30
-
31
- # classes used
32
- citationClass = CI_Citation.new(@xml, @responseObj)
33
- rPartyClass = CI_ResponsibleParty.new(@xml, @responseObj)
34
- tVoucherClass = MD_Vouchers.new(@xml, @responseObj)
35
- tClassClass = MD_TaxonCl.new(@xml, @responseObj)
36
-
37
- @xml.tag!('gmd:MD_TaxonSys') do
38
-
39
- # taxon system - class system citations - required - CI_Citation
40
- aTaxClassCits = hTaxonSys[:taxClassSys]
41
- if aTaxClassCits.empty?
42
- @xml.tag!('gmd:classSys', {'gco:nilReason' => 'missing'})
43
- else
44
- aTaxClassCits.each do |hCitation|
45
- @xml.tag!('gmd:classSys') do
46
- citationClass.writeXML(hCitation)
47
- end
48
- end
49
- end
50
-
51
- # taxon system - general scope
52
- s = hTaxonSys[:taxGeneralScope]
53
- if !s.nil?
54
- @xml.tag!('gmd:taxongen') do
55
- @xml.tag!('gco:CharacterString', s)
56
- end
57
- elsif @responseObj[:writerShowTags]
58
- @xml.tag!('gmd:taxongen')
59
- end
60
-
61
- # taxon system - identification reference - required
62
- @xml.tag!('gmd:idref', {'gco:nilReason' => 'unknown'})
63
-
64
- # taxon system - observers - CI_ResponsibleParty
65
- aObservers = hTaxonSys[:taxObservers]
66
- if !aObservers.empty?
67
- aObservers.each do |rParty|
68
- @xml.tag!('gmd:obs') do
69
- rPartyClass.writeXML(rParty)
70
- end
71
- end
72
- elsif @responseObj[:writerShowTags]
73
- @xml.tag!('gmd:obs')
74
- end
75
-
76
- # taxon system - taxon identification procedures - required
77
- s = hTaxonSys[:taxIdProcedures]
78
- if s.nil?
79
- @xml.tag!('gmd:taxonpro', {'gco:nilReason' => 'missing'})
80
- else
81
- @xml.tag!('gmd:taxonpro') do
82
- @xml.tag!('gco:CharacterString', s)
83
- end
84
- end
85
-
86
- # taxon system - voucher - MD_Voucher
87
- hTaxVoucher = hTaxonSys[:taxVoucher]
88
- if !hTaxVoucher.empty?
89
- @xml.tag!('gmd:voucher') do
90
- tVoucherClass.writeXML(hTaxVoucher)
91
- end
92
- elsif @responseObj[:writerShowTags]
93
- @xml.tag!('gmd:voucher')
94
- end
95
-
96
- # taxon system - taxonomy classification - required
97
- aTaxClass = hTaxonSys[:taxClasses]
98
- if aTaxClass.empty?
99
- @xml.tag!('gmd:taxonCl', {'gco:nilReason' => 'missing'})
100
- else
101
- @xml.tag!('gmd:taxonCl') do
102
- tClassClass.writeXML(aTaxClass)
103
- end
104
- end
105
-
106
- end
107
-
108
- end
109
-
110
- end
111
-
112
- end
113
- end
114
- end
115
- end
@@ -1,92 +0,0 @@
1
- # ISO <<Class>> CI_Telephone
2
- # writer output in XML
3
-
4
- # History:
5
- # Stan Smith 2013-08-12 original script.
6
- # Stan Smith 2014-05-14 reorganized for JSON schema 0.4.0
7
- # Stan Smith 2014-12-12 refactored to handle namespacing readers and writers
8
- # Stan Smith 2015-06-22 replace global ($response) with passed in object (responseObj)
9
- # Stan Smith 2015-07-14 refactored to make iso19110 independent of iso19115_2 classes
10
- # Stan Smith 2015-07-14 refactored to eliminate namespace globals $WriterNS and $IsoNS
11
-
12
- module ADIWG
13
- module Mdtranslator
14
- module Writers
15
- module Iso19115_2
16
-
17
- class CI_Telephone
18
-
19
- def initialize(xml, responseObj)
20
- @xml = xml
21
- @responseObj = responseObj
22
- end
23
-
24
- def writeXML(aPhones)
25
-
26
- # ISO requires phones to be in proper order (voice, fax)
27
- # Need to count phones of each type to be able to include empty tag
28
- voiceCount = 0
29
- faxCount = 0
30
- aPhones.each do |hPhone|
31
- if hPhone[:phoneServiceType].nil?
32
- hPhone[:phoneServiceType] = 'voice'
33
- end
34
- if hPhone[:phoneServiceType] == 'voice'
35
- voiceCount += 1
36
- end
37
- if hPhone[:phoneServiceType] == 'fax'
38
- faxCount += 1
39
- end
40
- end
41
-
42
- @xml.tag!('gmd:CI_Telephone') do
43
-
44
- # phone - voice phones
45
- if voiceCount > 0
46
- aPhones.each do |hPhone|
47
- if hPhone[:phoneServiceType] == 'voice'
48
- pName = hPhone[:phoneName]
49
- pNumber = hPhone[:phoneNumber]
50
- if pName.nil?
51
- s = pNumber
52
- else
53
- s = pName + ': ' + pNumber
54
- end
55
- @xml.tag!('gmd:voice') do
56
- @xml.tag!('gco:CharacterString', s)
57
- end
58
- end
59
- end
60
- elsif @responseObj[:writerShowTags]
61
- @xml.tag!('gmd:voice')
62
- end
63
-
64
- # phone - fax phones
65
- if faxCount > 0
66
- aPhones.each do |hPhone|
67
- if hPhone[:phoneServiceType] == 'fax'
68
- pName = hPhone[:phoneName]
69
- pNumber = hPhone[:phoneNumber]
70
- if pName.nil?
71
- s = pNumber
72
- else
73
- s = pName + ': ' + pNumber
74
- end
75
- @xml.tag!('gmd:facsimile') do
76
- @xml.tag!('gco:CharacterString', s)
77
- end
78
- end
79
- end
80
- elsif @responseObj[:writerShowTags]
81
- @xml.tag!('gmd:facsimile')
82
- end
83
- end
84
-
85
- end
86
-
87
- end
88
-
89
- end
90
- end
91
- end
92
- end
@@ -1,17 +0,0 @@
1
- # mdJson version history
2
- # 1.3.0 2015-07-30 added support for locale in metadata record information
3
- # 1.3.0 2015-07-31 added support for grid information
4
- # 1.3.0 2015-08-28 added support for content coverage information
5
-
6
- module ADIWG
7
- module Mdtranslator
8
- module Writers
9
- module Iso19115_2
10
-
11
- # current version of iso19115_2 writer
12
- VERSION = '1.3.0'
13
-
14
- end
15
- end
16
- end
17
- end
@@ -1,19 +0,0 @@
1
- require 'jbuilder'
2
- require_relative 'mdJson_citation'
3
-
4
- module ADIWG
5
- module Mdtranslator
6
- module Writers
7
- module MdJson
8
- module AdditionalDoc
9
- def self.build(intObj)
10
- Jbuilder.new do |json|
11
- json.resourceType intObj[:resourceType]
12
- json.citation Citation.build(intObj[:citation]) unless intObj[:citation].empty?
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
19
- end
@@ -1,19 +0,0 @@
1
- require 'jbuilder'
2
-
3
- module ADIWG
4
- module Mdtranslator
5
- module Writers
6
- module MdJson
7
- module Base
8
- def json_map(collection = [], _class)
9
- if collection.nil? || collection.empty?
10
- return nil
11
- else
12
- collection.map { |item| _class.build(item).attributes! }
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
19
- end
@@ -1,32 +0,0 @@
1
- require 'jbuilder'
2
- require_relative 'mdJson_base'
3
- require_relative 'mdJson_citation'
4
- require_relative 'mdJson_processStep'
5
-
6
- module ADIWG
7
- module Mdtranslator
8
- module Writers
9
- module MdJson
10
- module DataQuality
11
- extend MdJson::Base
12
-
13
- def self.build(intObj)
14
- Jbuilder.new do |json|
15
- json.scope intObj[:dataScope]
16
- json.lineage do
17
- ln = intObj[:dataLineage]
18
- json.statement ln[:statement]
19
- json.processStep json_map(ln[:processSteps], ProcessStep)
20
- json.source(ln[:dataSources]) do |src|
21
- json.description src[:sourceDescription]
22
- json.citation Citation.build(src[:sourceCitation]) unless src[:sourceCitation].empty?
23
- json.processStep json_map(src[:sourceSteps], ProcessStep) unless src[:sourceSteps].empty?
24
- end unless ln[:dataSources].empty?
25
- end unless intObj[:dataLineage].empty?
26
- end
27
- end
28
- end
29
- end
30
- end
31
- end
32
- end
@@ -1,31 +0,0 @@
1
- require 'jbuilder'
2
- require_relative 'mdJson_base'
3
- require_relative 'mdJson_responsibleParty'
4
- require_relative 'mdJson_format'
5
- require_relative 'mdJson_transferOption'
6
-
7
- module ADIWG
8
- module Mdtranslator
9
- module Writers
10
- module MdJson
11
- module DistributionInfo
12
- extend MdJson::Base
13
-
14
- def self.build(intObj)
15
- Jbuilder.new do |json|
16
- json.distributorContact ResponsibleParty.build(intObj[:distContact])
17
- json.distributionOrderProcess(intObj[:distOrderProcs]) do |dpo|
18
- json.fees dpo[:fees]
19
- json.plannedAvailabilityDateTime dpo[:plannedDateTime][:dateTime] unless dpo[:plannedDateTime].nil?
20
- json.orderingInstructions dpo[:orderInstructions]
21
- json.turnaround dpo[:turnaround]
22
- end unless intObj[:distOrderProcs].empty?
23
- json.distributorFormat json_map(intObj[:distFormats], Format)
24
- json.distributorTransferOptions json_map(intObj[:distTransOptions], TransferOption)
25
- end
26
- end
27
- end
28
- end
29
- end
30
- end
31
- end