adiwg-mdtranslator 0.12.1 → 1.0.0rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (191) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.gitmodules +3 -3
  4. data/Rakefile +1 -1
  5. data/adiwg-mdtranslator.gemspec +3 -3
  6. data/lib/adiwg/mdtranslator/internal/internal_metadata_obj.rb +5 -1
  7. data/lib/adiwg/mdtranslator/readers/mdJson/mdJson_validator.rb +2 -2
  8. data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_entity.rb +9 -0
  9. data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_entityAttribute.rb +9 -0
  10. data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_mdJson.rb +7 -2
  11. data/lib/adiwg/mdtranslator/readers/mdJson/readme.md +2 -2
  12. data/lib/adiwg/mdtranslator/version.rb +5 -1
  13. data/lib/adiwg/mdtranslator/writers/html/html_writer.rb +43 -0
  14. data/lib/adiwg/mdtranslator/writers/html/md_html_writer.rb +25 -0
  15. data/lib/adiwg/mdtranslator/writers/html/readme.md +10 -0
  16. data/lib/adiwg/mdtranslator/writers/iso/classes/class_aggregateInformation.rb +3 -3
  17. data/lib/adiwg/mdtranslator/writers/iso/classes/class_boundingPolygon.rb +4 -4
  18. data/lib/adiwg/mdtranslator/writers/iso/classes/class_citation.rb +4 -4
  19. data/lib/adiwg/mdtranslator/writers/iso/classes/class_contact.rb +3 -3
  20. data/lib/adiwg/mdtranslator/writers/iso/classes/class_dataIdentification.rb +17 -17
  21. data/lib/adiwg/mdtranslator/writers/iso/classes/class_dataQuality.rb +2 -2
  22. data/lib/adiwg/mdtranslator/writers/iso/classes/class_date.rb +1 -1
  23. data/lib/adiwg/mdtranslator/writers/iso/classes/class_digitalTransferOptions.rb +2 -2
  24. data/lib/adiwg/mdtranslator/writers/iso/classes/class_distribution.rb +1 -1
  25. data/lib/adiwg/mdtranslator/writers/iso/classes/class_distributor.rb +4 -4
  26. data/lib/adiwg/mdtranslator/writers/iso/classes/class_extent.rb +4 -4
  27. data/lib/adiwg/mdtranslator/writers/iso/classes/class_featureAttribute.rb +3 -3
  28. data/lib/adiwg/mdtranslator/writers/iso/classes/class_featureType.rb +11 -2
  29. data/lib/adiwg/mdtranslator/writers/iso/classes/class_genericMetaData.rb +2 -2
  30. data/lib/adiwg/mdtranslator/writers/iso/classes/class_geographicDescription.rb +1 -1
  31. data/lib/adiwg/mdtranslator/writers/iso/classes/class_geographicElement.rb +2 -2
  32. data/lib/adiwg/mdtranslator/writers/iso/classes/class_identifier.rb +1 -1
  33. data/lib/adiwg/mdtranslator/writers/iso/classes/class_keyword.rb +2 -2
  34. data/lib/adiwg/mdtranslator/writers/iso/classes/class_legalConstraints.rb +1 -1
  35. data/lib/adiwg/mdtranslator/writers/iso/classes/class_lineage.rb +2 -2
  36. data/lib/adiwg/mdtranslator/writers/iso/classes/class_maintenanceInformation.rb +2 -2
  37. data/lib/adiwg/mdtranslator/writers/iso/classes/class_medium.rb +2 -2
  38. data/lib/adiwg/mdtranslator/writers/iso/classes/class_metadataExtension.rb +4 -4
  39. data/lib/adiwg/mdtranslator/writers/iso/classes/class_multiGeometry.rb +3 -3
  40. data/lib/adiwg/mdtranslator/writers/iso/classes/class_onlineResource.rb +1 -1
  41. data/lib/adiwg/mdtranslator/writers/iso/classes/class_processStep.rb +1 -1
  42. data/lib/adiwg/mdtranslator/writers/iso/classes/class_referenceSystem.rb +1 -1
  43. data/lib/adiwg/mdtranslator/writers/iso/classes/class_responsibleParty.rb +2 -2
  44. data/lib/adiwg/mdtranslator/writers/iso/classes/class_securityConstraints.rb +1 -1
  45. data/lib/adiwg/mdtranslator/writers/iso/classes/class_source.rb +2 -2
  46. data/lib/adiwg/mdtranslator/writers/iso/classes/class_taxonSystem.rb +4 -4
  47. data/lib/adiwg/mdtranslator/writers/iso/classes/class_temporalExtent.rb +2 -2
  48. data/lib/adiwg/mdtranslator/writers/iso/classes/class_usage.rb +1 -1
  49. data/lib/adiwg/mdtranslator/writers/iso/classes/class_vouchers.rb +1 -1
  50. data/lib/adiwg/mdtranslator/writers/iso19110/class_FCfeatureCatalogue.rb +159 -147
  51. data/lib/adiwg/mdtranslator/writers/iso19110/iso19110_writer.rb +17 -23
  52. data/lib/adiwg/mdtranslator/writers/iso19115_2/class_MImetadata.rb +11 -10
  53. data/lib/adiwg/mdtranslator/writers/iso19115_2/iso19115_2_writer.rb +97 -103
  54. data/lib/adiwg/mdtranslator/writers/mdWriters.rb +1 -11
  55. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_additionalDocumentation.rb +4 -4
  56. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_address.rb +3 -3
  57. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_associatedResource.rb +4 -4
  58. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_browseGraphic.rb +3 -3
  59. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_citation.rb +4 -4
  60. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_contact.rb +4 -4
  61. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_dictionaryInfo.rb +4 -4
  62. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_domain.rb +4 -4
  63. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_onlineResource.rb +3 -3
  64. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_phone.rb +3 -3
  65. data/test/readers/mdJson/{v0_9 → v1_0}/tc_reader_mdjson_responsibleParty.rb +3 -3
  66. data/test/readers/mdJson/{v0_9 → v1_0}/tc_translation.rb +4 -4
  67. data/test/schemas/v1_0/.gitignore +18 -0
  68. data/test/schemas/v1_0/.travis.yml +7 -0
  69. data/test/schemas/v1_0/CREDITS +3 -0
  70. data/test/schemas/v1_0/Gemfile +4 -0
  71. data/test/schemas/v1_0/LICENSE +24 -0
  72. data/test/schemas/v1_0/README.md +36 -0
  73. data/test/schemas/v1_0/Rakefile +12 -0
  74. data/test/schemas/v1_0/adiwg-json_schemas.gemspec +25 -0
  75. data/test/schemas/v1_0/examples/additionalDocumentation.json +61 -0
  76. data/test/schemas/v1_0/examples/address.json +10 -0
  77. data/test/schemas/v1_0/examples/associatedResource.json +119 -0
  78. data/test/schemas/v1_0/examples/citation.json +128 -0
  79. data/test/schemas/v1_0/examples/contact.json +205 -0
  80. data/test/schemas/v1_0/examples/contactRef.json +12 -0
  81. data/test/schemas/v1_0/examples/dataDictionary.json +547 -0
  82. data/test/schemas/v1_0/examples/dataQuality.json +272 -0
  83. data/test/schemas/v1_0/examples/date.json +19 -0
  84. data/test/schemas/v1_0/examples/distributor.json +113 -0
  85. data/test/schemas/v1_0/examples/extent_linestring.json +288 -0
  86. data/test/schemas/v1_0/examples/extent_point.json +246 -0
  87. data/test/schemas/v1_0/examples/extent_polygon.json +353 -0
  88. data/test/schemas/v1_0/examples/format.json +14 -0
  89. data/test/schemas/v1_0/examples/full_example.json +2844 -0
  90. data/test/schemas/v1_0/examples/full_example2.json +2325 -0
  91. data/test/schemas/v1_0/examples/geojson.json +446 -0
  92. data/test/schemas/v1_0/examples/graphicOverview.json +28 -0
  93. data/test/schemas/v1_0/examples/hierarchyLevel.json +90 -0
  94. data/test/schemas/v1_0/examples/keywords.json +144 -0
  95. data/test/schemas/v1_0/examples/lcc_project_example.json +326 -0
  96. data/test/schemas/v1_0/examples/legalConstraints.json +17 -0
  97. data/test/schemas/v1_0/examples/maintInfo.json +34 -0
  98. data/test/schemas/v1_0/examples/metadataInfo.json +103 -0
  99. data/test/schemas/v1_0/examples/minimum_example.json +35 -0
  100. data/test/schemas/v1_0/examples/onlineResource.json +17 -0
  101. data/test/schemas/v1_0/examples/resolution.json +9 -0
  102. data/test/schemas/v1_0/examples/resourceInfo.json +1264 -0
  103. data/test/schemas/v1_0/examples/resourceMaintenance.json +10 -0
  104. data/test/schemas/v1_0/examples/securityConstraints.json +13 -0
  105. data/test/schemas/v1_0/examples/spatialRef.json +14 -0
  106. data/test/schemas/v1_0/examples/taxonomy.json +197 -0
  107. data/test/schemas/v1_0/examples/temporalElement.json +29 -0
  108. data/test/schemas/v1_0/examples/uri.json +16 -0
  109. data/test/schemas/v1_0/examples/usage.json +35 -0
  110. data/test/schemas/v1_0/examples/verticalExtent.json +18 -0
  111. data/test/schemas/v1_0/lib/adiwg/mdjson_schemas/utils.rb +20 -0
  112. data/test/schemas/v1_0/lib/adiwg/mdjson_schemas/validator.rb +42 -0
  113. data/test/schemas/v1_0/lib/adiwg/mdjson_schemas/version.rb +6 -0
  114. data/test/schemas/v1_0/lib/adiwg/mdjson_schemas.rb +7 -0
  115. data/test/schemas/v1_0/lib/adiwg-mdjson_schemas.rb +1 -0
  116. data/test/schemas/v1_0/schema/schema/citation.json +186 -0
  117. data/test/schemas/v1_0/schema/schema/contact.json +255 -0
  118. data/test/schemas/v1_0/schema/schema/dataDictionary.json +209 -0
  119. data/test/schemas/v1_0/schema/schema/dataQuality.json +159 -0
  120. data/test/schemas/v1_0/schema/schema/distributor.json +171 -0
  121. data/test/schemas/v1_0/schema/schema/extent.json +214 -0
  122. data/test/schemas/v1_0/schema/schema/geojson/bbox.json +14 -0
  123. data/test/schemas/v1_0/schema/schema/geojson/crs.json +99 -0
  124. data/test/schemas/v1_0/schema/schema/geojson/geojson.json +194 -0
  125. data/test/schemas/v1_0/schema/schema/geojson/geometry.json +203 -0
  126. data/test/schemas/v1_0/schema/schema/graphicOverview.json +42 -0
  127. data/test/schemas/v1_0/schema/schema/keyword.json +39 -0
  128. data/test/schemas/v1_0/schema/schema/maintInfo.json +43 -0
  129. data/test/schemas/v1_0/schema/schema/metadata.json +173 -0
  130. data/test/schemas/v1_0/schema/schema/onlineResource.json +42 -0
  131. data/test/schemas/v1_0/schema/schema/resolution.json +51 -0
  132. data/test/schemas/v1_0/schema/schema/resourceConstraint.json +108 -0
  133. data/test/schemas/v1_0/schema/schema/resourceInfo.json +305 -0
  134. data/test/schemas/v1_0/schema/schema/taxonomy.json +122 -0
  135. data/test/schemas/v1_0/schema/schema/usage.json +39 -0
  136. data/test/schemas/v1_0/schema/schema.json +64 -0
  137. data/test/schemas/v1_0/templates/mdJson_template.json +1065 -0
  138. data/test/schemas/v1_0/test/draft-04.json +189 -0
  139. data/test/schemas/v1_0/test/tc_schemas.rb +210 -0
  140. data/test/schemas/v1_0/test/tc_utils.rb +27 -0
  141. metadata +241 -90
  142. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_additionalDocumentation.rb +0 -0
  143. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_address.rb +0 -0
  144. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_associatedResource.rb +0 -0
  145. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_boundingBox.rb +0 -0
  146. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_browseGraphic.rb +0 -0
  147. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_citation.rb +0 -0
  148. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_contacts.rb +0 -0
  149. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_coordinates.rb +0 -0
  150. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_dataDictionary.rb +0 -0
  151. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_dataQuality.rb +0 -0
  152. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_dateTime.rb +0 -0
  153. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_descriptiveKeyword.rb +0 -0
  154. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_dictionaryInfo.rb +0 -0
  155. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_distributionInfo.rb +0 -0
  156. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_domain.rb +0 -0
  157. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_domainItem.rb +0 -0
  158. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_entityForeignKey.rb +0 -0
  159. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_entityIndex.rb +0 -0
  160. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_extent.rb +0 -0
  161. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_geoCoordSystem.rb +0 -0
  162. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_geoProperties.rb +0 -0
  163. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_geographicElement.rb +0 -0
  164. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_legalConstraint.rb +0 -0
  165. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_lineString.rb +0 -0
  166. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_lineage.rb +0 -0
  167. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_metadata.rb +0 -0
  168. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_metadataExtension.rb +0 -0
  169. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_metadataInfo.rb +0 -0
  170. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_onlineResource.rb +0 -0
  171. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_phone.rb +0 -0
  172. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_point.rb +0 -0
  173. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_polygon.rb +0 -0
  174. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_processStep.rb +0 -0
  175. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_resolution.rb +0 -0
  176. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_resourceFormat.rb +0 -0
  177. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_resourceIdentifier.rb +0 -0
  178. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_resourceInfo.rb +0 -0
  179. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_resourceMaintenance.rb +0 -0
  180. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_resourceSpecificUsage.rb +0 -0
  181. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_responsibleParty.rb +0 -0
  182. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_securityConstraint.rb +0 -0
  183. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_source.rb +0 -0
  184. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_spatialReference.rb +0 -0
  185. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_taxonClass.rb +0 -0
  186. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_taxonomy.rb +0 -0
  187. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_temporalElement.rb +0 -0
  188. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_timeInstant.rb +0 -0
  189. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_timePeriod.rb +0 -0
  190. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_verticalElement.rb +0 -0
  191. /data/lib/adiwg/mdtranslator/readers/mdJson/{modules_0.9 → modules_1.0}/module_voucher.rb +0 -0
@@ -0,0 +1,171 @@
1
+ {
2
+ "id": "distributor.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "type": "object",
5
+ "description": "Information about the distributor of and options for obtaining the resource.",
6
+ "translation": {
7
+ "ISO 19115-2": ["MD_Distribution"],
8
+ "FGDC CSDGM": ["distinfo"]
9
+ },
10
+ "required": ["distributorContact"],
11
+ "additionalProperties": false,
12
+ "properties": {
13
+ "distributorContact": {
14
+ "description": "Party from whom the resource may be obtained. Note: This list need not be exhaustive.",
15
+ "translation": {
16
+ "ISO 19115-2": ["MD_Distribution > distributor > MD_Distributor > distributorContact > CI_ResponsibleParty"],
17
+ "FGDC CSDGM": ["distinfo > distrib > cntinfo"]
18
+ },
19
+ "$ref": "contact.json#/definitions/contactRef"
20
+ },
21
+ "distributionOrderProcess": {
22
+ "type": "array",
23
+ "description": "Provides information about how the resource may be obtained and related instructions and fee information.",
24
+ "translation": {
25
+ "ISO 19115-2": ["MD_Distribution > distributor > MD_Distributor > distributionOrderProcess > MD_StandardOrderProcess"]
26
+ },
27
+ "items": {
28
+ "type": "object",
29
+ "additionalProperties": false,
30
+ "properties": {
31
+ "fees": {
32
+ "type": "string",
33
+ "description": "Fees and terms for retrieving the resource, including monetary units.",
34
+ "translation": {
35
+ "ISO 19115-2": ["MD_StandardOrderProcess > fees"],
36
+ "FGDC CSDGM": ["distinfo > stdorder > fees"]
37
+ }
38
+ },
39
+ "plannedAvailabilityDateTime": {
40
+ "description": "Date and time when the resource will be available.",
41
+ "translation": {
42
+ "ISO 19115-2": ["MD_StandardOrderProcess > plannedAvailabilityDateTime"]
43
+ },
44
+ "$ref": "../schema.json#/definitions/date"
45
+ },
46
+ "orderingInstructions": {
47
+ "type": "string",
48
+ "description": "General instructions, terms and services provided by the distributor.",
49
+ "translation": {
50
+ "ISO 19115-2": ["MD_StandardOrderProcess > orderingInstructions"],
51
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > onlinopt > accinstr"]
52
+ }
53
+ },
54
+ "turnaround": {
55
+ "type": "string",
56
+ "description": "Typical turnaround time for the filling of an order.",
57
+ "translation": {
58
+ "ISO 19115-2": ["MD_StandardOrderProcess > turnaround"],
59
+ "FGDC CSDGM": ["distinfo > stdorder > turnarnd"]
60
+ }
61
+ }
62
+ }
63
+ }
64
+ },
65
+ "distributorFormat": {
66
+ "type": "array",
67
+ "description": "Provides information about the format used by the distributor.",
68
+ "translation": {
69
+ "ISO 19115-2": ["MD_Distribution > distributor > MD_Distributor > distributorFormat > MD_Format"],
70
+ "FGDC CSDGM": ["distinfo > stdorder > digform"]
71
+ },
72
+ "items": {
73
+ "$ref": "#/definitions/format"
74
+ }
75
+ },
76
+ "distributorTransferOptions": {
77
+ "type": "array",
78
+ "items": {
79
+ "type": "object",
80
+ "description": "Identifier whether resource is available on-line or by off-line procedure.",
81
+ "translation": {
82
+ "ISO 19115-2": ["MD_Distributor > distributorTransferOptions > MD_DigitalTransferOptions"],
83
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt"]
84
+ },
85
+ "additionalProperties": false,
86
+
87
+ "properties": {
88
+ "online": {
89
+ "type": "array",
90
+ "description": "Information about obtaining the resource on-line.",
91
+ "translation": {
92
+ "ISO 19115-2": ["MD_DigitalTransferOptions > online > CI_OnlineResource"],
93
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > onlinopt"]
94
+ },
95
+ "items": {
96
+ "$ref": "onlineResource.json#"
97
+ },
98
+ "uniqueItems": true
99
+ },
100
+ "offline": {
101
+ "type": "object",
102
+ "description": "Information about obtaining the resource through off-line procedure.",
103
+ "translation": {
104
+ "ISO 19115-2": ["MD_DigitalTransferOptions > offline > MD_Medium"],
105
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > offoptn"]
106
+ },
107
+ "additionalProperties": false,
108
+
109
+ "properties": {
110
+ "name": {
111
+ "type": "string",
112
+ "description": "Name of the format the data is distributed in, such as: dvd, hardcopy, etc.",
113
+ "translation": {
114
+ "ISO 19115-2": ["MD_Medium > name [MD_MediumNameCode]"],
115
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > offoptn > offmedia"]
116
+ }
117
+ },
118
+ "mediumFormat": {
119
+ "type": "string",
120
+ "description": "Method used by the resource provider to write to the medium, such as: tar, iso9660, etc.",
121
+ "translation": {
122
+ "ISO 19115-2": ["MD_Medium > mediumFormat [MD_MediumFormatCode]"],
123
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > offoptn > recfmt"]
124
+ }
125
+ },
126
+ "mediumNote": {
127
+ "type": "string",
128
+ "description": "Description of other limitations or requirements for using the medium.",
129
+ "translation": {
130
+ "ISO 19115-2": ["MD_Medium > mediumNote"],
131
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > offoptn > compat"]
132
+ }
133
+ }
134
+ }
135
+ }
136
+ }
137
+ }
138
+ }
139
+ },
140
+ "definitions": {
141
+ "format": {
142
+ "type": "object",
143
+ "description": "Provides information about the format used by the distributor.",
144
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/resourceNativeFormat",
145
+ "translation": {
146
+ "ISO 19115-2": ["MD_Format"],
147
+ "FGDC CSDGM": ["distinfo > stdorder > digform"]
148
+ },
149
+ "required": ["formatName"],
150
+ "additionalProperties": false,
151
+ "properties": {
152
+ "formatName": {
153
+ "type": "string",
154
+ "description": "Name of the data transfer format.",
155
+ "translation": {
156
+ "ISO 19115-2": ["MD_Format > name"],
157
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtinfo > formname"]
158
+ }
159
+ },
160
+ "version": {
161
+ "type": "string",
162
+ "description": "Version of the format (date, number, etc.)",
163
+ "translation": {
164
+ "ISO 19115-2": ["MD_Format > version"],
165
+ "FGDC CSDGM": ["idinfo > citation > citeinfo > edition"]
166
+ }
167
+ }
168
+ }
169
+ }
170
+ }
171
+ }
@@ -0,0 +1,214 @@
1
+ {
2
+ "id": "extent.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "type": "object",
5
+ "description": "Information about the geographic extent of the resource.",
6
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/extent",
7
+ "translation": {
8
+ "ISO 19115-2": ["EX_Extent"]
9
+ },
10
+ "additionalProperties": true,
11
+ "properties": {
12
+ "description": {
13
+ "type": "string",
14
+ "description": "Description of the geographic extent.",
15
+ "translation": {
16
+ "ISO 19115-2": ["EX_Extent > description"]
17
+ }
18
+ },
19
+ "geographicElement": {
20
+ "type": "array",
21
+ "description": "A grouping of geographic objects that comprises all or part of the extent.",
22
+ "translation": {
23
+ "ISO 19115-2": ["EX_Extent > geographicElement"]
24
+ },
25
+ "items": {
26
+ "type": "object",
27
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement",
28
+ "properties": {
29
+ "type": {
30
+ "enum": ["Feature", "FeatureCollection", "GeometryCollection", "Point", "MultiPoint", "LineString", "MultiLineString", "Polygon", "MultiPolygon"],
31
+ "description": "The type of geographic object."
32
+ }
33
+ },
34
+ "oneOf": [
35
+ {
36
+ "$ref": "geojson/geojson.json#"
37
+ }
38
+ ]
39
+ }
40
+ },
41
+ "verticalElement": {
42
+ "type": "array",
43
+ "description": "Vertical element of an extent.",
44
+ "translation": {
45
+ "ISO 19115-2": ["EX_Extent > verticalElement > EX_VerticalExtent "]
46
+ },
47
+ "items": {
48
+ "$ref": "#/definitions/verticalExtent"
49
+ }
50
+ },
51
+ "temporalElement": {
52
+ "$ref": "#/definitions/temporalElement"
53
+ }
54
+ },
55
+ "definitions": {
56
+ "timeInstant": {
57
+ "type": "object",
58
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/extent/0/temporalElement/timeInstant/0",
59
+ "required": ["timePosition"],
60
+ "additionalProperties": false,
61
+ "properties": {
62
+ "id": {
63
+ "type": "string",
64
+ "description": "A unique identifier for a temporal element.",
65
+ "translation": {
66
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant @id"]
67
+ }
68
+ },
69
+ "description": {
70
+ "type": "string",
71
+ "description": "Text associated with the time instance.",
72
+ "translation": {
73
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant > description"]
74
+ }
75
+ },
76
+ "timePosition": {
77
+ "translation": {
78
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant > timePosition"]
79
+ },
80
+ "$ref": "../schema.json#/definitions/date"
81
+ }
82
+ }
83
+ },
84
+ "timePeriod": {
85
+ "type": "object",
86
+ "description": "A span of time represented by a start date/time and an ending date/time.",
87
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/extent/0/temporalElement/timePeriod/0",
88
+ "additionalProperties": false,
89
+ "properties": {
90
+ "id": {
91
+ "type": "string",
92
+ "description": "A unique identifier for a temporal element.",
93
+ "translation": {
94
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod @id"]
95
+ }
96
+ },
97
+ "description": {
98
+ "type": "string",
99
+ "description": "Text associated with the time instance.",
100
+ "translation": {
101
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod > description "]
102
+ }
103
+ },
104
+ "beginPosition": {
105
+ "description": "Starting date, or date and time.",
106
+ "translation": {
107
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod > beginPosition "],
108
+ "FGDC CSDGM": ["idinfo > timeperd > rngdates > begdate"]
109
+ },
110
+ "$ref": "../schema.json#/definitions/date"
111
+ },
112
+ "endPosition": {
113
+ "description": "Ending date, or date and time.",
114
+ "translation": {
115
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod > endPosition"],
116
+ "FGDC CSDGM": ["idinfo > timeperd > rngdates > enddate"]
117
+ },
118
+ "$ref": "../schema.json#/definitions/date"
119
+ }
120
+ },
121
+ "anyOf": [
122
+ {
123
+ "title": "beginPosition required",
124
+ "required": ["beginPosition"]
125
+ }, {
126
+ "title": "endPosition required",
127
+ "required": ["endPosition"]
128
+ }
129
+ ]
130
+ },
131
+ "temporalElement": {
132
+ "type": "object",
133
+ "description": "Temporal context for the resource.",
134
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/extent/0/temporalElement",
135
+ "translation": {
136
+ "ISO 19115-2": ["EX_Extent > temporalElement > EX_TemporalExtent"]
137
+ },
138
+ "additionalProperties": false,
139
+ "minProperties": 1,
140
+ "properties": {
141
+ "timeInstant": {
142
+ "type": "array",
143
+ "description": "A set of date time instances.",
144
+ "translation": {
145
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant"]
146
+ },
147
+ "items": {
148
+ "$ref": "#/definitions/timeInstant"
149
+ }
150
+ },
151
+ "timePeriod": {
152
+ "type": "array",
153
+ "description": "A set of time periods.",
154
+ "translation": {
155
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod"]
156
+ },
157
+ "items": {
158
+ "$ref": "#/definitions/timePeriod"
159
+ }
160
+ },
161
+ "date": {
162
+ "type": "array",
163
+ "description": "A set of date times.",
164
+ "translation": {
165
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant > timePosition"]
166
+ },
167
+ "items": {
168
+ "$ref": "../schema.json#/definitions/date"
169
+ }
170
+ }
171
+ }
172
+ },
173
+ "verticalExtent": {
174
+ "type": "object",
175
+ "description": "Vertical element of an extent.",
176
+ "translation": {
177
+ "ISO 19115-2": ["EX_Extent > verticalElement > EX_VerticalExtent "]
178
+ },
179
+ "additionalProperties": false,
180
+ "required": ["minimumValue", "maximumValue", "verticalCRSTitle", "verticalCRSUri"],
181
+ "properties": {
182
+ "minimumValue": {
183
+ "type": "number",
184
+ "description": "Lowest vertical extent contained in the dataset.",
185
+ "translation": {
186
+ "ISO 19115-2": ["EX_VerticalExtent > minimumValue > Real "]
187
+ }
188
+ },
189
+ "maximumValue": {
190
+ "type": "number",
191
+ "description": "Highest vertical extent contained in the dataset.",
192
+ "translation": {
193
+ "ISO 19115-2": ["EX_VerticalExtent > maximumValue > Real "]
194
+ }
195
+ },
196
+ "verticalCRSTitle": {
197
+ "type": "string",
198
+ "description": "Name of a geographic reference system associated with a vertical extent.",
199
+ "translation": {
200
+ "ISO 19115-2": ["EX_VerticalExtent > verticalCRS @xlink:title "],
201
+ "FGDC CSDGM": ["spref > vertdef > altsys > altdatum"]
202
+ }
203
+ },
204
+ "verticalCRSUri": {
205
+ "description": "Web link to the parameters for a geographic reference system associated with a vertical extent.",
206
+ "translation": {
207
+ "ISO 19115-2": ["EX_VerticalExtent > verticalCRS @xlink:href "]
208
+ },
209
+ "$ref": "../schema.json#/definitions/uri"
210
+ }
211
+ }
212
+ }
213
+ }
214
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "bbox.json#",
4
+ "description": "To include information on the coordinate range for geometries, features, or feature collections, a GeoJSON object may have a member named \"bbox\". The value of the bbox member must be a 2*n array where n is the number of dimensions represented in the contained geometries, with the lowest values for all axes followed by the highest values. The axes order of a bbox follows the axes order of geometries. In addition, the coordinate reference system for the bbox is assumed to match the coordinate reference system of the GeoJSON object of which it is a member.",
5
+ "translation": {
6
+ "ISO 19115-2": ["EX_Extent > geographicElement > EX_GeographicBoundingBox\nEX_GeographicBoundingBox > westBoundLongitude > Decimal {west}\nEX_GeographicBoundingBox > eastBoundLongitude > Decimal {east}\nEX_GeographicBoundingBox > southBoundLatitude > Decimal {south}\nEX_GeographicBoundingBox > northBoundLatitude > Decimal {north}"],
7
+ "FGDC CSDGM": ["[idinfo > spdom > bounding > westbc], [idinfo > spdom > bounding > eastbc], [idinfo > spdom > bounding > northbc], [idinfo > spdom > bounding > southbc]"]
8
+ },
9
+ "type": "array",
10
+ "minItems": 4,
11
+ "items": {
12
+ "type": "number"
13
+ }
14
+ }
@@ -0,0 +1,99 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "crs.json#",
4
+ "title": "crs",
5
+ "description": "A Coordinate Reference System object.",
6
+ "example": "../../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement",
7
+ "oneOf": [
8
+ {
9
+ "type": "object",
10
+ "description": "A Coordinate Reference System object.",
11
+ "example": "../../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement",
12
+ "required": ["type", "properties"],
13
+ "properties": {
14
+ "type": {
15
+ "type": "string",
16
+ "description": "The type of coordinate reference system."
17
+ },
18
+ "properties": {
19
+ "type": "object",
20
+ "description": "Coordinate reference system properties."
21
+ }
22
+ },
23
+ "additionalProperties": false,
24
+ "oneOf": [
25
+ {
26
+ "$ref": "#/definitions/namedCrs"
27
+ }, {
28
+ "$ref": "#/definitions/linkedCrs"
29
+ }
30
+ ]
31
+ }, {
32
+ "title": "null",
33
+ "type": "null"
34
+ }
35
+ ],
36
+ "definitions": {
37
+ "namedCrs": {
38
+ "title": "namedCrs",
39
+ "type": "object",
40
+ "description": "A GeoJSON CRS object that indicates a coordinate reference system by name.",
41
+ "example": "../../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement/1/crs",
42
+ "properties": {
43
+ "type": {
44
+ "enum": ["name"],
45
+ "description": "A CRS object may indicate a coordinate reference system by name. In this case, the value of its \"type\" member must be the string \"name\"."
46
+ },
47
+ "properties": {
48
+ "type": "object",
49
+ "description": "Coordinate reference system properties.",
50
+ "example": "../../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement/1/crs",
51
+ "required": ["name"],
52
+ "additionalProperties": false,
53
+ "properties": {
54
+ "name": {
55
+ "type": "string",
56
+ "description": "The name of the coordinate reference system.",
57
+ "translation": {
58
+ "ISO 19115-2": ["geographicElement > EX_BoundingPolygon > polygon > [Point, LineString, Polygon, MultiGeometry] @srsName"]
59
+ },
60
+ "FIXME": "semantic validation necessary"
61
+ }
62
+ }
63
+ }
64
+ }
65
+ },
66
+ "linkedObject": {
67
+ "type": "object",
68
+ "title": "linkedObject",
69
+ "description": "An object that links to a coordinate reference system definition.",
70
+ "example": "../../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement/0/crs",
71
+ "required": ["href"],
72
+ "properties": {
73
+ "href": {
74
+ "$ref": "../../schema.json#/definitions/url",
75
+ "description": "A dereferenceable URI that links to the parameters for the coordinate reference system."
76
+ },
77
+ "type": {
78
+ "type": "string",
79
+ "description": "A string that hints at the format used to represent CRS parameters at the provided URI. Suggested values are: \"proj4\", \"ogcwkt\", \"esriwkt\", but others can be used."
80
+ }
81
+ }
82
+ },
83
+ "linkedCrs": {
84
+ "title": "linkedCrs",
85
+ "type": "object",
86
+ "description": "A GeoJSON CRS object that links to coordinate reference system parameters on the Web.",
87
+ "example": "../../../examples/full_example.json#/metadata/resourceInfo/extent/0/geographicElement/0/crs",
88
+ "properties": {
89
+ "type": {
90
+ "enum": ["link"],
91
+ "description": "A CRS object may link to CRS parameters on the Web. In this case, the value of its \"type\" member must be the string \"link\"."
92
+ },
93
+ "properties": {
94
+ "$ref": "#/definitions/linkedObject"
95
+ }
96
+ }
97
+ }
98
+ }
99
+ }