diff --git a/hubs/ign/schema/geojson.yml b/hubs/ign/schema/geojson.yml new file mode 100644 index 0000000..7e263e8 --- /dev/null +++ b/hubs/ign/schema/geojson.yml @@ -0,0 +1,129 @@ +definitions: + + FeatureCollection: + type: object + description: Une `FeatureCollection` au sens GeoJSON + externalDocs: + url: http://geojson.org/geojson-spec.html#feature-collection-objects + description: La documentation officielle du type `FeatureCollection` de GeoJSON + properties: + type: + type: string + description: Le type d'objet GeoJSON (`FeatureCollection`) + features: + type: array + items: {} + + Feature: + type: object + description: Une `Feature` au sens GeoJSON + externalDocs: + url: http://geojson.org/geojson-spec.html#feature-objects + description: La documentation officielle du type `Feature` de GeoJSON + properties: + type: + type: string + description: Le type d'objet GeoJSON (`Feature`) + id: + type: string + properties: + type: object + geometry: + $ref: '#/definitions/Geometry' + + Geometry: + type: object + description: Une `Geometry` au sens GeoJSON + externalDocs: + url: http://geojson.org/geojson-spec.html#geometry-objects + description: La documentation officielle du type `Geometry` de GeoJSON + properties: + type: + type: string + description: Le type géométrique + enum: + - Point + - LineString + - Polygon + - MultiPoint + - MultiLineString + - MultiPolygon + coordinates: + type: array + items: {} + + + + Point: + type: object + description: Un `Point` au sens GeoJSON + properties: + type: + type: string + description: Le type géométrique (`Point`) + enum: + - Point + coordinates: + "$ref": "#/definitions/Coordinate" + + LineString: + type: object + description: Une `LineString` au sens GeoJSON + properties: + type: + type: string + description: Le type géométrique (`LineString`) + coordinates: + type: array + items: {} + + Polygon: + type: object + description: Un `Polygon` au sens GeoJSON + properties: + type: + type: string + description: Le type géométrique (`LineString`) + coordinates: + type: array + items: {} + + MultiPoint: + type: object + description: Un `MultiPoint` au sens GeoJSON + properties: + type: + type: string + description: Le type géométrique (`MultiPoint`) + coordinates: + type: array + items: {} + + MultiLineString: + type: object + description: Une `MultiLineString` au sens GeoJSON + properties: + type: + type: string + description: Le type géométrique (`MultiLineString`) + coordinates: + type: array + items: {} + + MultiPolygon: + type: object + description: Un `MultiPolygon` au sens GeoJSON + properties: + type: + type: string + description: Le type géométrique (`MultiPolygon`) + coordinates: + type: array + items: {} + + Coordinate: + type: array + items: + type: number + minItems: 2 + maxItems: 4