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,122 @@
1
+ {
2
+ "id": "taxonomy.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "type": "object",
5
+ "description": "Information on the taxa (1 or more) included in the data set, including keywords, taxonomic system and coverage information, and taxonomic classification system.",
6
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/taxonomy",
7
+ "translation": {
8
+ "ISO 19115-2": ["MD_TaxonSys"],
9
+ "FGDC CSDGM": ["idinfo > taxonomy"]
10
+ },
11
+ "required": ["classificationSystem", "taxonomicProcedure", "taxonClass"],
12
+ "additionalProperties": false,
13
+ "properties": {
14
+ "classificationSystem": {
15
+ "type": "array",
16
+ "description": "Information (citation) about the taxonomic classification system or authority used.",
17
+ "translation": {
18
+ "ISO 19115-2": ["MD_TaxonSys > classSys > CI_Citation"],
19
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > classsys"]
20
+ },
21
+ "minItems": 1,
22
+ "items": {
23
+ "$ref": "citation.json"
24
+ }
25
+ },
26
+ "taxonGeneralScope": {
27
+ "type": "string",
28
+ "description": "Description of the range of taxa addressed in the data set or collection. For example, \"all vascular plants were identified to family or species, mosses and lichens were identified as moss or lichen\".",
29
+ "translation": {
30
+ "ISO 19115-2": ["MD_TaxonSys > taxongen"]
31
+ }
32
+ },
33
+ "observer": {
34
+ "type": "array",
35
+ "description": "Information about the individual(s) responsible for the identification(s) of the specimens or sightings. etc.",
36
+ "translation": {
37
+ "ISO 19115-2": ["MD_TaxonSys > obs > CI_ResponsibleParty"]
38
+ },
39
+ "items": {
40
+ "$ref": "contact.json#/definitions/contactRef"
41
+ }
42
+ },
43
+ "taxonomicProcedure": {
44
+ "type": "string",
45
+ "description": "Description of the methods used for taxonomic identification. Could include specimen processing, comparison with museum materials, keys, and key characters, chemical or genetic analyses, etc.",
46
+ "translation": {
47
+ "ISO 19115-2": ["MD_TaxonSys > taxonpro"],
48
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > taxonpro"]
49
+ }
50
+ },
51
+ "voucher": {
52
+ "type": "object",
53
+ "description": "Information on the types of specimen, the repository, and the individuals who identified the vouchers.",
54
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/taxonomy",
55
+ "translation": {
56
+ "ISO 19115-2": ["MD_TaxonSys > voucher > MD_Vouchers"],
57
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers"]
58
+ },
59
+ "required": ["specimen", "repository"],
60
+ "properties": {
61
+ "specimen": {
62
+ "type": "string",
63
+ "description": "Word or phrase describing the type of specimen collected (e.g. herbarium specimens, blood samples, photographs, individuals, or batches). Example: \"herbarium specimens\", \"blood samples\", \"photographs\", \"individuals\", \"free text\".",
64
+ "translation": {
65
+ "ISO 19115-2": ["MD_Vouchers > specimen"],
66
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers > specimens"]
67
+ }
68
+ },
69
+ "repository": {
70
+ "description": "Information about the curator or contact person and/or agency responsible for the specimens.",
71
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/taxonomy/voucher",
72
+ "translation": {
73
+ "ISO 19115-2": ["MD_Vouchers > reposit > CI_ResponsibleParty"],
74
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers > reposit"]
75
+ },
76
+ "$ref": "contact.json#/definitions/contactRef"
77
+ }
78
+ }
79
+ },
80
+ "taxonClass": {
81
+ "type": "array",
82
+ "description": "Information about the range of taxa addressed in the data set or collection. It is recommended that one provide information starting from the taxonomic rank of kingdom, to a level which reflects the data set or collection being documented. The levels of Kingdom, Division/Phylum, class, Order, Family, Genus, and Species should be included as ranks as appropriate.",
83
+ "translation": {
84
+ "ISO 19115-2": ["MD_TaxonSys > taxonCl > MD_TaxonCl"],
85
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl"]
86
+ },
87
+ "minItems": 1,
88
+ "items": {
89
+ "type": "object",
90
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/taxonomy",
91
+ "required": ["taxonRank", "taxonValue"],
92
+ "additionalProperties": false,
93
+ "properties": {
94
+ "taxonRank": {
95
+ "type": "string",
96
+ "description": "Name of the taxonomic rank for which the taxonValue is provided. Example: \"Kingdom\", \"Division\", \"Phylum\", \"Subphylum\", \"SuperClass\", \"Class\", \"SubClass\", \"InfraClass\", \"Superorder\", \"Order\", \"Suborder\", \"Infraorder\", \"Superfamily\", \"Family\", \"Subfamily\", \"Tribe\", \"Subtribe\", \"Genus\", \"Species\".",
97
+ "translation": {
98
+ "ISO 19115-2": [" MD_TaxonCl > taxonrn"],
99
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl > taxonrn"]
100
+ }
101
+ },
102
+ "taxonValue": {
103
+ "type": "string",
104
+ "description": "Taxonomic rank value of the taxon being described.",
105
+ "translation": {
106
+ "ISO 19115-2": ["MD_TaxonCl > taxonrv"],
107
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl > taxonrv"]
108
+ }
109
+ },
110
+ "common": {
111
+ "type": "string",
112
+ "description": "Specification of applicable common names. These common names may be general descriptions of a group of organisms if appropriate (e.g. insects, vertebrate, grasses, waterfowl, vascular plants, etc.).",
113
+ "translation": {
114
+ "ISO 19115-2": ["MD_TaxonCl > common"],
115
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl > common"]
116
+ }
117
+ }
118
+ }
119
+ }
120
+ }
121
+ }
122
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "id": "usage.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "type": "object",
5
+ "description": "Description of ways in which the resource is currently or has been used.",
6
+ "example": "../../examples/full_example.json#/metadata/resourceInfo/resourceSpecificUsage/0",
7
+ "translation": {
8
+ "ISO 19115-2": ["MD_Usage"]
9
+ },
10
+ "required": ["specificUsage", "userContactInfo"],
11
+ "additionalProperties": false,
12
+ "properties": {
13
+ "specificUsage": {
14
+ "type": "string",
15
+ "description": "Brief description of the resource usage.",
16
+ "translation": {
17
+ "ISO 19115-2": ["MD_Usage > specific usage"]
18
+ }
19
+ },
20
+ "userDeterminedLimitation": {
21
+ "type": "string",
22
+ "description": "Usage that the provider's have determined the resource not being suitable for.",
23
+ "translation": {
24
+ "ISO 19115-2": ["MD_Usage > userDeterminedLimitations"]
25
+ }
26
+ },
27
+ "userContactInfo": {
28
+ "type": "array",
29
+ "description": "Identification of and means of communicating with the person(s) and organization(s) using the resource.",
30
+ "translation": {
31
+ "ISO 19115-2": ["MD_Usage > userContactInfo"]
32
+ },
33
+ "uniqueItems": true,
34
+ "items": {
35
+ "$ref": "contact.json#/definitions/contactRef"
36
+ }
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,64 @@
1
+ {
2
+ "id": "schema.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "version": "1.0.0",
5
+ "description": "schema for ADIwg mdJSON metadata",
6
+ "type": "object",
7
+ "required": ["version", "contact", "metadata"],
8
+ "properties": {
9
+ "version": {
10
+ "type": "object",
11
+ "description": "Identifies the version of the JSON schema standard that applies to the metadata.",
12
+ "example": "../examples/full_example.json#/version",
13
+ "required": ["name", "version"],
14
+ "additionalProperties": false,
15
+ "properties": {
16
+ "name": {
17
+ "type": "string",
18
+ "example": "../examples/full_example.json#/version",
19
+ "description": "Schema identifier, i.e. the name of the schema standard."
20
+ },
21
+ "version": {
22
+ "type": "string",
23
+ "example": "../examples/full_example.json#/version",
24
+ "description": "Specific version number of the schema standard.",
25
+ "pattern": "[0-9]\\.[0-9]\\.[0-9]"
26
+ }
27
+ }
28
+ },
29
+ "contact": {
30
+ "$ref": "schema/contact.json"
31
+ },
32
+ "metadata": {
33
+ "$ref": "schema/metadata.json"
34
+ },
35
+ "dataDictionary": {
36
+ "type": "array",
37
+ "example": "../examples/full_example.json#/dataDictionary",
38
+ "items": {
39
+ "$ref": "schema/dataDictionary.json"
40
+ }
41
+ }
42
+ },
43
+ "definitions": {
44
+ "url": {
45
+ "type": "string",
46
+ "pattern": "(https?|ftp):\\/\\/(-\\.)?([^\\s\\/?\\.#-]+\\.?)+(\\/[^\\s]*)?$"
47
+ },
48
+ "uri": {
49
+ "type": "string",
50
+ "description": "Location (address) for on-line access using a Uniform Resource Identifier, usually in the form of a Uniform Resource Locator (URL).",
51
+ "example": "../examples/uri.json",
52
+ "translation": {
53
+ "ISO 19115-2": ["CI_OnlineResource > linkage"]
54
+ },
55
+ "pattern": "([A-Za-z][A-Za-z0-9+\\-.]*):(?:(//)(?:((?:[A-Za-z0-9\\-._~!$&'()*+,;=:]|%[0-9A-Fa-f]{2})*)@)?((?:\\[(?:(?:(?:(?:[0-9A-Fa-f]{1,4}:){6}|::(?:[0-9A-Fa-f]{1,4}:){5}|(?:[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){4}|(?:(?:[0-9A-Fa-f]{1,4}:){0,1}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){3}|(?:(?:[0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){2}|(?:(?:[0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}:|(?:(?:[0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})?::)(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(?:(?:[0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})?::)|[Vv][0-9A-Fa-f]+\\.[A-Za-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[A-Za-z0-9\\-._~!$&'()*+,;=]|%[0-9A-Fa-f]{2})*))(?::([0-9]*))?((?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)|/((?:(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)?)|((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[A-Za-z0-9\\-._~!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)|)(?:\\?((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*))?(?:\\#((?:[A-Za-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*))?"
56
+ },
57
+ "date": {
58
+ "type": "string",
59
+ "description": "An ISO 8601 date/timestamp.",
60
+ "example": "../examples/date.json",
61
+ "pattern": "^(\\d{4}(-\\d{2})?(-\\d{2})?$)|(^\\d{4}-\\d{2}-\\d{2}(T\\d{2})?(\\:\\d{2}(\\:\\d{2}(\\.\\d+)?)?|Z)?(Z|(-|\\+)\\d{2}(:\\d{2})?)?$)"
62
+ }
63
+ }
64
+ }