adiwg-mdjson_schemas 1.1.3 → 2.0.0.pre.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (247) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +2 -0
  3. data/README.md +14 -3
  4. data/adiwg-json_schemas.gemspec +2 -2
  5. data/bower.json +0 -1
  6. data/examples/additionalDocumentation.json +9 -60
  7. data/examples/address.json +14 -10
  8. data/examples/allocation.json +12 -0
  9. data/examples/associatedResource.json +10 -118
  10. data/examples/attribute.json +27 -0
  11. data/examples/attributeGroup.json +17 -0
  12. data/examples/boundingBox.json +6 -0
  13. data/examples/citation.json +69 -127
  14. data/examples/computedBbox.json +399 -0
  15. data/examples/constraint.json +62 -0
  16. data/examples/contact.json +40 -207
  17. data/examples/coverageDescription.json +21 -0
  18. data/examples/date.json +8 -19
  19. data/examples/dictionary.json +58 -0
  20. data/examples/dimension.json +11 -0
  21. data/examples/distribution.json +26 -0
  22. data/examples/distributor.json +22 -142
  23. data/examples/domain.json +29 -0
  24. data/examples/domainItem.json +11 -0
  25. data/examples/duration.json +17 -0
  26. data/examples/entity.json +48 -0
  27. data/examples/entityAttribute.json +31 -0
  28. data/examples/entityForeignKey.json +17 -0
  29. data/examples/entityIndex.json +8 -0
  30. data/examples/extent.json +60 -0
  31. data/examples/featureCollection.json +58 -0
  32. data/examples/featureProperties.json +16 -0
  33. data/examples/format.json +7 -14
  34. data/examples/funding.json +33 -0
  35. data/examples/geoJson.json +185 -0
  36. data/examples/geographicExtent.json +22 -0
  37. data/examples/geometryCollection.json +14 -0
  38. data/examples/geometryFeature.json +12 -0
  39. data/examples/geometryObject.json +90 -0
  40. data/examples/georectifiedRepresentation.json +28 -0
  41. data/examples/georeferencableRepresentation.json +25 -0
  42. data/examples/gmlIdentifier.json +8 -0
  43. data/examples/graphic.json +33 -0
  44. data/examples/gridRepresentation.json +14 -0
  45. data/examples/identifier.json +9 -0
  46. data/examples/imageDescription.json +15 -0
  47. data/examples/keyword.json +14 -0
  48. data/examples/keywordObject.json +12 -0
  49. data/examples/legalConstraint.json +21 -0
  50. data/examples/lineage.json +21 -0
  51. data/examples/locale.json +12 -3
  52. data/examples/maintenance.json +38 -0
  53. data/examples/mdJson.json +99 -0
  54. data/examples/measure.json +5 -0
  55. data/examples/medium.json +16 -0
  56. data/examples/metadata.json +102 -0
  57. data/examples/metadataInfo.json +68 -101
  58. data/examples/onlineResource.json +13 -17
  59. data/examples/orderProcess.json +6 -0
  60. data/examples/party.json +21 -0
  61. data/examples/phone.json +9 -0
  62. data/examples/processStep.json +34 -0
  63. data/examples/releasability.json +28 -0
  64. data/examples/resourceInfo.json +230 -1256
  65. data/examples/responsibleParty.json +31 -0
  66. data/examples/schema.json +8 -0
  67. data/examples/scope.json +33 -0
  68. data/examples/scopeDescription.json +8 -0
  69. data/examples/securityConstraint.json +13 -0
  70. data/examples/series.json +9 -0
  71. data/examples/source.json +23 -0
  72. data/examples/spatialReference.json +34 -0
  73. data/examples/spatialRepresentation.json +59 -0
  74. data/examples/spatialResolution.json +11 -0
  75. data/examples/taxonomicClassification.json +59 -0
  76. data/examples/taxonomicSystem.json +13 -0
  77. data/examples/taxonomy.json +79 -188
  78. data/examples/temporalExtent.json +11 -0
  79. data/examples/timeInstant.json +13 -0
  80. data/examples/timeInterval.json +8 -0
  81. data/examples/timePeriod.json +26 -0
  82. data/examples/transferOption.json +36 -0
  83. data/examples/usage.json +48 -33
  84. data/examples/vectorObject.json +4 -0
  85. data/examples/vectorRepresentation.json +10 -0
  86. data/examples/verticalExtent.json +10 -17
  87. data/examples/voucher.json +12 -0
  88. data/lib/adiwg/mdjson_schemas/utils.rb +45 -15
  89. data/lib/adiwg/mdjson_schemas/validator.rb +6 -7
  90. data/lib/adiwg/mdjson_schemas/version.rb +1 -1
  91. data/lib/adiwg/mdjson_schemas.rb +4 -2
  92. data/schema/additionalDocumentation.json +29 -0
  93. data/schema/associatedResource.json +49 -0
  94. data/schema/attribute.json +157 -0
  95. data/schema/attributeGroup.json +29 -0
  96. data/schema/{schema/geojson/bbox.json → bbox.json} +2 -2
  97. data/schema/{schema/citation.json → citation.json} +73 -99
  98. data/schema/common.json +49 -0
  99. data/schema/{schema/resourceConstraint.json → constraint.json} +83 -13
  100. data/schema/contact.json +234 -0
  101. data/schema/coverageDescription.json +50 -0
  102. data/schema/dataDictionary.json +71 -0
  103. data/schema/distribution.json +35 -0
  104. data/schema/distributor.json +46 -0
  105. data/schema/domain.json +65 -0
  106. data/schema/entity.json +235 -0
  107. data/schema/extent.json +59 -0
  108. data/schema/format.json +37 -0
  109. data/schema/funding.json +67 -0
  110. data/schema/geographicExtent.json +87 -0
  111. data/schema/{schema/geojson/geojson.json → geojson.json} +16 -44
  112. data/schema/{schema/geojson/geometry.json → geometry.json} +2 -1
  113. data/schema/georectifiedRepresentation.json +89 -0
  114. data/schema/georeferencableRepresentation.json +49 -0
  115. data/schema/{schema/graphicOverview.json → graphic.json} +19 -6
  116. data/schema/{schema/gridInfo.json → gridRepresentation.json} +7 -13
  117. data/schema/identifier.json +47 -0
  118. data/schema/imageDescription.json +92 -0
  119. data/schema/{schema/keyword.json → keyword.json} +18 -4
  120. data/schema/{schema/dataQuality.json → lineage.json} +92 -57
  121. data/schema/{schema/maintInfo.json → maintInfo.json} +24 -6
  122. data/schema/measure.json +31 -0
  123. data/schema/medium.json +55 -0
  124. data/schema/metadata.json +77 -0
  125. data/schema/metadataInfo.json +112 -0
  126. data/schema/{schema/onlineResource.json → onlineResource.json} +1 -1
  127. data/schema/orderProcess.json +45 -0
  128. data/schema/releasability.json +42 -0
  129. data/schema/{schema/resourceInfo.json → resourceInfo.json} +112 -189
  130. data/schema/responsibility.json +56 -0
  131. data/schema/schema.json +16 -31
  132. data/schema/scope.json +55 -0
  133. data/schema/spatialReference.json +26 -0
  134. data/schema/spatialRepresentation.json +83 -0
  135. data/schema/spatialResolution.json +54 -0
  136. data/schema/taxonomy.json +178 -0
  137. data/schema/temporalExtent.json +42 -0
  138. data/schema/timeInstant.json +46 -0
  139. data/schema/timePeriod.json +126 -0
  140. data/schema/transferOption.json +61 -0
  141. data/schema/{schema/usage.json → usage.json} +34 -4
  142. data/schema/vectorRepresentation.json +51 -0
  143. data/schema/verticalExtent.json +37 -0
  144. data/test/helper.rb +32 -0
  145. data/test/tc_additionalDocumentation.rb +8 -0
  146. data/test/tc_address.rb +8 -0
  147. data/test/tc_associatedResource.rb +8 -0
  148. data/test/tc_attribute.rb +8 -0
  149. data/test/tc_attributeGroup.rb +8 -0
  150. data/test/tc_boundingBox.rb +8 -0
  151. data/test/tc_citation.rb +8 -0
  152. data/test/tc_constraint.rb +8 -0
  153. data/test/tc_contact.rb +8 -0
  154. data/test/tc_coverageDescription.rb +8 -0
  155. data/test/tc_dataDictionary.rb +8 -0
  156. data/test/tc_dimension.rb +8 -0
  157. data/test/tc_distribution.rb +8 -0
  158. data/test/tc_distributor.rb +8 -0
  159. data/test/tc_domain.rb +8 -0
  160. data/test/tc_domainItem.rb +8 -0
  161. data/test/tc_duration.rb +8 -0
  162. data/test/tc_entity.rb +20 -0
  163. data/test/tc_extent.rb +8 -0
  164. data/test/tc_featureCollection.rb +8 -0
  165. data/test/tc_featureProperties.rb +8 -0
  166. data/test/tc_format.rb +8 -0
  167. data/test/tc_funding.rb +8 -0
  168. data/test/tc_geographicElement.rb +12 -0
  169. data/test/tc_geographicExtent.rb +8 -0
  170. data/test/tc_geometryCollection.rb +8 -0
  171. data/test/tc_geometryFeature.rb +8 -0
  172. data/test/tc_geometryObject.rb +8 -0
  173. data/test/tc_georectifiedRepresentation.rb +8 -0
  174. data/test/tc_georeferencableRepresentation.rb +8 -0
  175. data/test/tc_graphic.rb +8 -0
  176. data/test/tc_gridRepresentation.rb +8 -0
  177. data/test/tc_identifier.rb +8 -0
  178. data/test/tc_imageDescription.rb +8 -0
  179. data/test/tc_jsonschema.rb +16 -0
  180. data/test/tc_keyword.rb +8 -0
  181. data/test/tc_lineage.rb +8 -0
  182. data/test/tc_maintInfo.rb +8 -0
  183. data/test/tc_measure.rb +8 -0
  184. data/test/tc_medium.rb +8 -0
  185. data/test/tc_metadata.rb +8 -0
  186. data/test/tc_metadataInfo.rb +8 -0
  187. data/test/tc_onlineResource.rb +8 -0
  188. data/test/tc_orderProcess.rb +8 -0
  189. data/test/tc_party.rb +8 -0
  190. data/test/tc_processStep.rb +8 -0
  191. data/test/tc_releasability.rb +8 -0
  192. data/test/tc_resourceInfo.rb +8 -0
  193. data/test/tc_responsibility.rb +8 -0
  194. data/test/tc_schema.rb +8 -0
  195. data/test/tc_scope.rb +8 -0
  196. data/test/tc_source.rb +8 -0
  197. data/test/tc_spatialReference.rb +8 -0
  198. data/test/tc_spatialRepresentation.rb +8 -0
  199. data/test/tc_spatialResolution.rb +8 -0
  200. data/test/tc_taxonomicClassification.rb +8 -0
  201. data/test/tc_taxonomicSystem.rb +8 -0
  202. data/test/tc_taxonomy.rb +8 -0
  203. data/test/tc_temporalExtent.rb +8 -0
  204. data/test/tc_timeInstant.rb +8 -0
  205. data/test/tc_timePeriod.rb +8 -0
  206. data/test/tc_transferOption.rb +8 -0
  207. data/test/tc_uri.rb +8 -0
  208. data/test/tc_usage.rb +8 -0
  209. data/test/tc_utils.rb +8 -11
  210. data/test/tc_vectorRepresentation.rb +13 -0
  211. data/test/tc_verticalExtent.rb +8 -0
  212. data/test/tc_voucher.rb +8 -0
  213. metadata +264 -57
  214. data/examples/contactRef.json +0 -12
  215. data/examples/coverageInfo.json +0 -148
  216. data/examples/dataDictionary.json +0 -549
  217. data/examples/dataQuality.json +0 -272
  218. data/examples/extent_linestring.json +0 -288
  219. data/examples/extent_point.json +0 -246
  220. data/examples/extent_polygon.json +0 -353
  221. data/examples/full_example.json +0 -3065
  222. data/examples/full_example2.json +0 -2325
  223. data/examples/geojson.json +0 -446
  224. data/examples/graphicOverview.json +0 -28
  225. data/examples/gridInfo.json +0 -23
  226. data/examples/hierarchyLevel.json +0 -90
  227. data/examples/keywords.json +0 -144
  228. data/examples/lcc_project_example.json +0 -326
  229. data/examples/legalConstraints.json +0 -17
  230. data/examples/maintInfo.json +0 -34
  231. data/examples/minimum_example.json +0 -35
  232. data/examples/resolution.json +0 -9
  233. data/examples/resourceMaintenance.json +0 -10
  234. data/examples/securityConstraints.json +0 -13
  235. data/examples/spatialRef.json +0 -14
  236. data/examples/temporalElement.json +0 -29
  237. data/schema/schema/contact.json +0 -262
  238. data/schema/schema/coverageInfo.json +0 -303
  239. data/schema/schema/dataDictionary.json +0 -335
  240. data/schema/schema/distributor.json +0 -216
  241. data/schema/schema/extent.json +0 -215
  242. data/schema/schema/geojson/crs.json +0 -99
  243. data/schema/schema/metadata.json +0 -188
  244. data/schema/schema/resolution.json +0 -51
  245. data/schema/schema/taxonomy.json +0 -122
  246. data/test/tc_schemas.rb +0 -243
  247. /data/schema/{schema/locale.json → locale.json} +0 -0
data/schema/scope.json ADDED
@@ -0,0 +1,55 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "scope.json#",
4
+ "type": "object",
5
+ "title": "",
6
+ "description": "The target resource and physical extent for which information is reported.",
7
+ "additionalProperties": true,
8
+ "required": ["scopeCode"],
9
+ "properties": {
10
+ "scopeCode": {
11
+ "type": "string",
12
+ "title": "",
13
+ "description": "Class of information to which the resource applies.",
14
+ "example": "",
15
+ "translation": {}
16
+ },
17
+ "scopeDescription": {
18
+ "type": "array",
19
+ "description": "Detailed description/listing of the items specified by the scope.",
20
+ "example": "",
21
+ "translation": {},
22
+ "items": {
23
+ "type": "object",
24
+ "required": ["type", "description"],
25
+ "additionalProperties": true,
26
+ "properties": {
27
+ "type": {
28
+ "type": "string",
29
+ "description": "The type of item described.",
30
+ "example": "",
31
+ "translation": {},
32
+ "minLength": 1,
33
+ "enum": ["dataset", "attribute", "feature", "other"]
34
+ },
35
+ "description": {
36
+ "type": "string",
37
+ "description": "Description of the scope item.",
38
+ "example": "",
39
+ "translation": {},
40
+ "minLength": 1
41
+ }
42
+ }
43
+ }
44
+ },
45
+ "timePeriod": {
46
+ "type": "array",
47
+ "description": "information about the temporal extent of the resource specified by the scope",
48
+ "example": "",
49
+ "translation": {},
50
+ "items": {
51
+ "$ref": "./timePeriod.json#"
52
+ }
53
+ }
54
+ }
55
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "spatialReference.json#",
4
+ "description": "Geospatial referencing system used in the the data resource. The reference can be provided by an EPSG number, a named reference, or providing the parameters in a well known text (WKT) format.",
5
+ "example": "",
6
+ "translation": {
7
+ "ISO 19115-2": ["MD_Metadata > referenceSystemInfo > MD_ReferenceSystem > referenceSystemIdentifier > RS_Identifier > code"]
8
+ },
9
+ "type": "object",
10
+ "required": ["systemIdentifier", "type"],
11
+ "additionalProperties": true,
12
+ "properties": {
13
+ "type": {
14
+ "type": "string",
15
+ "description": "Type of reference system used.",
16
+ "example": "",
17
+ "translation": {},
18
+ "minLength": 1
19
+ },
20
+ "systemIdentifier": {
21
+ "$ref" : "./identifier.json#",
22
+ "description" : "The reference system identifier or definition.",
23
+ "example": ""
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,83 @@
1
+ {
2
+ "id": "spatialRepresentation.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "example": "",
5
+ "description": "",
6
+ "translation": {},
7
+ "type": "object",
8
+ "required": [],
9
+ "additionalProperties": true,
10
+ "oneOf": [{
11
+ "type": "object",
12
+ "title": "gridRepresentation",
13
+ "example": "",
14
+ "required": ["type", "gridRepresentation"],
15
+ "additionalProperties": true,
16
+ "properties": {
17
+ "type": {
18
+ "type": "string",
19
+ "enum": ["grid"]
20
+ },
21
+ "gridRepresentation": {
22
+ "$ref": "./gridRepresentation.json#"
23
+ }
24
+ }
25
+ },
26
+ {
27
+ "type": "object",
28
+ "title": "vectorRepresentation",
29
+ "example": "",
30
+ "required": ["type", "vectorRepresentation"],
31
+ "additionalProperties": true,
32
+ "properties": {
33
+ "type": {
34
+ "type": "string",
35
+ "enum": ["vector"]
36
+ },
37
+ "gridRepresentation": {
38
+ "$ref": "./vectorRepresentation.json#"
39
+ }
40
+ }
41
+ },
42
+ {
43
+ "type": "object",
44
+ "title": "georectifiedRepresentation",
45
+ "example": "",
46
+ "required": ["type", "georectifiedRepresentation"],
47
+ "additionalProperties": true,
48
+ "properties": {
49
+ "type": {
50
+ "type": "string",
51
+ "enum": ["georectified"]
52
+ },
53
+ "gridRepresentation": {
54
+ "$ref": "./georectifiedRepresentation.json#"
55
+ }
56
+ }
57
+ },
58
+ {
59
+ "type": "object",
60
+ "title": "georeferencableRepresentation",
61
+ "example": "",
62
+ "required": ["type", "georeferencableRepresentation"],
63
+ "additionalProperties": true,
64
+ "properties": {
65
+ "type": {
66
+ "type": "string",
67
+ "enum": ["georeferencable"]
68
+ },
69
+ "georeferencableRepresentation": {
70
+ "$ref": "./georeferencableRepresentation.json#"
71
+ }
72
+ }
73
+ }
74
+ ],
75
+ "properties": {
76
+ "type": {
77
+ "type": "string",
78
+ "description": "Identifies the type of spatial representation defined for the object",
79
+ "example": "",
80
+ "enum": ["grid", "vector", "georectified", "georeferencable"]
81
+ }
82
+ }
83
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "id": "spatialResolution.json#",
3
+ "$schema": "http://json-schema.org/draft-04/schema#",
4
+ "description": "Information about the scale of the geographic extent.",
5
+ "example": "",
6
+ "translation": {
7
+ "ISO 19115-2": ["MD_Resolution"]
8
+ },
9
+ "oneOf": [{
10
+ "type": "object",
11
+ "title": "scaleFactor",
12
+ "required": ["scaleFactor"],
13
+ "properties": {
14
+ "scaleFactor": {
15
+ "type": "number",
16
+ "title": "scaleFactor",
17
+ "example": "",
18
+ "description": "Scale of geographic extent expressed in a hardcopy map scale fraction (denominator).",
19
+ "translation": {
20
+ "ISO 19115-2": ["MD_Resolution > equivalentScale > MD_RepresentativeFraction > denominator > Integer"]
21
+ }
22
+ }
23
+ }
24
+ }, {
25
+ "type": "object",
26
+ "title": "measure",
27
+ "required": ["measure"],
28
+ "properties": {
29
+ "measure": {
30
+ "type": "object",
31
+ "title": "measure",
32
+ "example": "",
33
+ "description": "Scale of geographic extent expressed in ground distance parameters or angle.",
34
+ "$ref": "./measure.json#"
35
+ }
36
+ }
37
+ },
38
+ {
39
+ "type": "object",
40
+ "title": "levelOfDetail",
41
+ "required": ["levelOfDetail"],
42
+ "properties": {
43
+ "levelOfDetail": {
44
+ "type": "string",
45
+ "title": "levelOfDetail",
46
+ "description": "A brief textual description of the spatial resolution of the resource",
47
+ "example": "",
48
+ "translation": {},
49
+ "minLength": 1
50
+ }
51
+ }
52
+ }
53
+ ]
54
+ }
@@ -0,0 +1,178 @@
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": "",
7
+ "translation": {
8
+ "ISO 19115-2": ["MD_TaxonSys"],
9
+ "FGDC CSDGM": ["idinfo > taxonomy"]
10
+ },
11
+ "required": ["taxonomicSystem", "identificationProcedure", "taxonomicClassification"],
12
+ "additionalProperties": true,
13
+ "properties": {
14
+ "taxonomicSystem": {
15
+ "type": "array",
16
+ "description": "Information about the taxonomic classification system used.",
17
+ "translation": {
18
+ "ISO 19115-2": ["MD_TaxonSys > classSys"],
19
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > classsys"]
20
+ },
21
+ "minItems": 1,
22
+ "items": {
23
+ "$ref": "#/definitions/taxonomicSystem"
24
+ }
25
+ },
26
+ "generalScope": {
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
+ "identificationReference": {
34
+ "type": "array",
35
+ "description": "Information on any non-authoritative materials (e.g. field guides) useful for reconstructing the actual process.",
36
+ "example": "",
37
+ "translation": {},
38
+ "minItems": 1,
39
+ "items": {}
40
+ },
41
+ "observer": {
42
+ "type": "array",
43
+ "description": "Information about the individual(s) responsible for the identification(s) of the specimens or sightings. etc.",
44
+ "translation": {
45
+ "ISO 19115-2": ["MD_TaxonSys > obs > CI_ResponsibleParty"]
46
+ },
47
+ "items": {
48
+ "$ref": "./responsibility.json#"
49
+ }
50
+ },
51
+ "identificationProcedure": {
52
+ "type": "string",
53
+ "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.",
54
+ "translation": {
55
+ "ISO 19115-2": ["MD_TaxonSys > taxonpro"],
56
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > taxonpro"]
57
+ }
58
+ },
59
+ "identificationCompleteness": {
60
+ "type": "string",
61
+ "description": "Information concerning the proportions and treatment of unidentified materials (i.e. materials sent to experts, and not yet determined); estimates of the importance, and identities of misidentifications, uncertain determinations, synonyms or other incorrect usages; taxa not well treated or requiring further work; and expertise of field workers.",
62
+ "translation": {}
63
+ },
64
+ "voucher": {
65
+ "type": "array",
66
+ "description": "Information on the types of specimen, the repository, and the individuals who identified the vouchers.",
67
+ "translation": {
68
+ "ISO 19115-2": ["MD_TaxonSys > voucher > MD_Vouchers"],
69
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers"]
70
+ },
71
+ "minItems": 1,
72
+ "items": {
73
+ "$ref": "#/definitions/voucher"
74
+ }
75
+ },
76
+ "taxonomicClassification": {
77
+ "$ref": "#/definitions/taxonomicClassification"
78
+ }
79
+ },
80
+ "definitions": {
81
+ "taxonomicSystem": {
82
+ "type": "object",
83
+ "required": ["citation"],
84
+ "additionalProperties": true,
85
+ "properties": {
86
+ "citation": {
87
+ "$ref": "citation.json",
88
+ "description": "Information about the classification system or authority used.",
89
+ "example": "",
90
+ "translation": {
91
+ "ISO 19115-2": ["MD_TaxonSys > classSys > CI_Citation"],
92
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > classsys"]
93
+ }
94
+ },
95
+ "modifications": {
96
+ "type": "string",
97
+ "description": "Description of any modifications or exceptions made to the classification system or authority used.",
98
+ "example": "",
99
+ "translation": {}
100
+ }
101
+ }
102
+ },
103
+ "taxonomicClassification": {
104
+ "type": "object",
105
+ "description": "Information about the range of taxa addressed in the data set or collection. NOTE 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.",
106
+ "example": "",
107
+ "translation": {
108
+ "ISO 19115-2": ["MD_TaxonSys > taxonCl > MD_TaxonCl"],
109
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl"]
110
+ },
111
+ "required": ["latinName", "taxonomicRank"],
112
+ "additionalProperties": true,
113
+ "properties": {
114
+ "taxonomicSystemId": {
115
+ "type": "string",
116
+ "description": "The ID assigned by the taxonomic system to the taxonomicRank.",
117
+ "minLength": 1
118
+ },
119
+ "taxonomicRank": {
120
+ "type": "string",
121
+ "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\".",
122
+ "translation": {
123
+ "ISO 19115-2": [" MD_TaxonCl > taxonrn"],
124
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl > taxonrn"]
125
+ }
126
+ },
127
+ "latinName": {
128
+ "type": "string",
129
+ "description": "Taxonomic rank value of the taxon being described.",
130
+ "translation": {
131
+ "ISO 19115-2": ["MD_TaxonCl > taxonrv"],
132
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl > taxonrv"]
133
+ }
134
+ },
135
+ "commonName": {
136
+ "type": "array",
137
+ "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.).",
138
+ "translation": {
139
+ "ISO 19115-2": ["MD_TaxonCl > common"],
140
+ "FGDC CSDGM": ["idinfo > taxonomy > taxoncl > common"]
141
+ },
142
+ "items": {
143
+ "type": "string"
144
+ }
145
+ }
146
+ }
147
+ },
148
+ "voucher": {
149
+ "type": "object",
150
+ "description": "Information on the types of specimen, the repository, and the individuals who identified the vouchers.",
151
+ "example": "",
152
+ "translation": {
153
+ "ISO 19115-2": ["MD_TaxonSys > voucher > MD_Vouchers"],
154
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers"]
155
+ },
156
+ "required": ["specimen", "repository"],
157
+ "properties": {
158
+ "specimen": {
159
+ "type": "string",
160
+ "description": "Word or phrase describing the type of specimen collected (e.g. 'herbarium specimens', 'blood samples', 'photographs', 'individuals', or 'batches').",
161
+ "translation": {
162
+ "ISO 19115-2": ["MD_Vouchers > specimen"],
163
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers > specimens"]
164
+ }
165
+ },
166
+ "repository": {
167
+ "description": "Information about the curator or contact person and/or agency responsible for the specimens.",
168
+ "example": "",
169
+ "translation": {
170
+ "ISO 19115-2": ["MD_Vouchers > reposit > CI_ResponsibleParty"],
171
+ "FGDC CSDGM": ["idinfo > taxonomy > taxonsys > vouchers > reposit"]
172
+ },
173
+ "$ref": "./responsibility.json#"
174
+ }
175
+ }
176
+ }
177
+ }
178
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "temporalExtent.json#",
4
+ "type": "object",
5
+ "title": "",
6
+ "description": "A temporal boundary comprising all or a portion of the resource.",
7
+ "required": ["type"],
8
+ "additionalProperties": true,
9
+ "properties": {
10
+ "type": {
11
+ "type": "string",
12
+ "description": "The type of temporal extent.",
13
+ "example": "",
14
+ "translation": {},
15
+ "enum": ["instant", "period"]
16
+ }
17
+ },
18
+ "oneOf": [{
19
+ "title": "Type is instant.",
20
+ "required": ["timeInstant"],
21
+ "properties": {
22
+ "type": {
23
+ "enum": ["instant"]
24
+ },
25
+ "timeInstant": {
26
+ "$ref": "./timeInstant.json#",
27
+ "description": "Represents an identifiable position in time."
28
+ }
29
+ }
30
+ }, {
31
+ "title": "Type is period.",
32
+ "required": ["timePeriod"],
33
+ "properties": {
34
+ "type": {
35
+ "enum": ["period"]
36
+ },
37
+ "timePeriod": {
38
+ "$ref": "./timePeriod.json#"
39
+ }
40
+ }
41
+ }]
42
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "timeInstant.json#",
4
+ "type": "object",
5
+ "example": "",
6
+ "required": ["dateTime"],
7
+ "additionalProperties": true,
8
+ "properties": {
9
+ "id": {
10
+ "type": "string",
11
+ "description": "A unique identifier for the timeInstant.",
12
+ "translation": {
13
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant @id"]
14
+ }
15
+ },
16
+ "identifier": {
17
+ "$ref": "./identifier.json#",
18
+ "description": "Identifier assigned to the timeInstant.",
19
+ "example": ""
20
+ },
21
+ "description": {
22
+ "type": "string",
23
+ "description": "A brief description providing relevant information about the date and time.",
24
+ "translation": {
25
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant > description"]
26
+ }
27
+ },
28
+ "instantName": {
29
+ "type": "array",
30
+ "title": "",
31
+ "description": "Name of the timeInstant",
32
+ "example": "",
33
+ "translation": {},
34
+ "items": {
35
+ "type": "string"
36
+ }
37
+ },
38
+ "dateTime": {
39
+ "translation": {
40
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimeInstant > timePosition"]
41
+ },
42
+ "$ref": "common.json#/definitions/date"
43
+ }
44
+ }
45
+
46
+ }
@@ -0,0 +1,126 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "timePeriod.json#",
4
+ "type": "object",
5
+ "description": "A span of time represented by a starting date-time and an ending date-time.",
6
+ "example": "",
7
+ "minProperties": 1,
8
+ "additionalProperties": true,
9
+
10
+ "properties": {
11
+ "id": {
12
+ "type": "string",
13
+ "description": "A unique identifier for a time period.",
14
+ "translation": {
15
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod @id"]
16
+ }
17
+ },
18
+ "description": {
19
+ "type": "string",
20
+ "description": "A brief description providing relevant information about the time period.",
21
+ "translation": {
22
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod > description "]
23
+ }
24
+ },
25
+ "identifier":{
26
+ "$ref" : "./identifier.json#",
27
+ "description" : "Identifier for the timePeriod.",
28
+ "example": ""
29
+ },
30
+ "periodName": {
31
+ "type": "array",
32
+ "description": "Names associated with the time period.",
33
+ "example": "",
34
+ "translation": {},
35
+ "minItems": 1,
36
+ "items": {
37
+ "type": "string"
38
+ }
39
+ },
40
+ "startDateTime": {
41
+ "description": "Starting date, or date and time.",
42
+ "translation": {
43
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod > beginPosition "],
44
+ "FGDC CSDGM": ["idinfo > timeperd > rngdates > begdate"]
45
+ },
46
+ "$ref": "common.json#/definitions/date"
47
+ },
48
+ "endDateTime": {
49
+ "description": "Ending date, or date and time.",
50
+ "translation": {
51
+ "ISO 19115-2": ["EX_TemporalExtent > extent > TimePeriod > endPosition"],
52
+ "FGDC CSDGM": ["idinfo > timeperd > rngdates > enddate"]
53
+ },
54
+ "$ref": "common.json#/definitions/date"
55
+ },
56
+ "timeInterval": {
57
+ "$ref": "#/definitions/timeInterval"
58
+ },
59
+ "duration": {
60
+ "$ref": "#/definitions/duration"
61
+ }
62
+ },
63
+ "anyOf": [{
64
+ "title": "startDateTime required",
65
+ "required": ["startDateTime"]
66
+ }, {
67
+ "title": "endDateTime required",
68
+ "required": ["endDateTime"]
69
+ }],
70
+ "definitions": {
71
+ "duration": {
72
+ "type": "object",
73
+ "description": "Object for collecting information about a duration or period of time.",
74
+ "example": "",
75
+ "translation": {},
76
+ "minProperties": 1,
77
+ "additionalProperties": true,
78
+ "properties": {
79
+ "years": {
80
+ "$ref": "#/definitions/durationPart"
81
+ },
82
+ "months": {
83
+ "$ref": "#/definitions/durationPart"
84
+ },
85
+ "days": {
86
+ "$ref": "#/definitions/durationPart"
87
+ },
88
+ "hours": {
89
+ "$ref": "#/definitions/durationPart"
90
+ },
91
+ "minutes": {
92
+ "$ref": "#/definitions/durationPart"
93
+ },
94
+ "seconds": {
95
+ "$ref": "#/definitions/durationPart"
96
+ }
97
+ }
98
+ },
99
+ "durationPart": {
100
+ "type": "integer"
101
+ },
102
+ "timeInterval": {
103
+ "type": "object",
104
+ "description": "Defines a length of time in sepcific units.",
105
+ "example": "",
106
+ "translation": {},
107
+ "required": ["interval", "units"],
108
+ "additionalProperties": true,
109
+ "properties": {
110
+ "interval": {
111
+ "type": "number",
112
+ "description": "The amount of time.",
113
+ "example": "",
114
+ "translation": {}
115
+ },
116
+ "units": {
117
+ "type": "string",
118
+ "description": "The unit of time for the interval.",
119
+ "example": "",
120
+ "translation": {},
121
+ "minLength": 1
122
+ }
123
+ }
124
+ }
125
+ }
126
+ }
@@ -0,0 +1,61 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "id": "transferOption.json#",
4
+ "type": "object",
5
+ "title": "transferOption",
6
+ "description": "Describes method and media by which a resource is obtained from the distributor.",
7
+ "translation": {
8
+ "ISO 19115-2": ["MD_Distributor > distributorTransferOptions > MD_DigitalTransferOptions"],
9
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt"]
10
+ },
11
+ "example": "",
12
+ "required": [],
13
+ "additionalProperties": true,
14
+ "properties": {
15
+ "transferSize": {
16
+ "type": "number",
17
+ "description": "Estimated size of a unit in the specified transfer format, expressed in megabytes."
18
+ },
19
+ "unitsOfDistribution": {
20
+ "type": "string",
21
+ "description": "The tiles, layers, geographic areas, etc., in which data are available."
22
+ },
23
+ "onlineOption": {
24
+ "type": "array",
25
+ "example": "",
26
+ "description": "Information about obtaining the resource on-line.",
27
+ "translation": {
28
+ "ISO 19115-2": ["MD_DigitalTransferOptions > online > CI_OnlineResource"],
29
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > onlinopt"]
30
+ },
31
+ "items": {
32
+ "$ref": "onlineResource.json#"
33
+ },
34
+ "uniqueItems": true
35
+ },
36
+ "offlineOption": {
37
+ "type": "array",
38
+ "example": "",
39
+ "description": "Information about obtaining the resource through off-line procedure.",
40
+ "translation": {
41
+ "ISO 19115-2": ["MD_DigitalTransferOptions > offline > MD_Medium"],
42
+ "FGDC CSDGM": ["distinfo > stdorder > digform > digtopt > offoptn"]
43
+ },
44
+ "additionalProperties": true,
45
+ "items": {
46
+ "$ref": "./medium.json#"
47
+ },
48
+ "distributionFormat": {
49
+ "type": "array",
50
+ "description": "Provides information about the format used by the distributor.",
51
+ "translation": {
52
+ "ISO 19115-2": ["MD_Distribution > distributor > MD_Distributor > distributorFormat > MD_Format"],
53
+ "FGDC CSDGM": ["distinfo > stdorder > digform"]
54
+ },
55
+ "items": {
56
+ "$ref": "#/definitions/format"
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }