diff --git a/_sources/features/topo-arc/examples.yaml b/_sources/features/topo-arc/examples.yaml index 83f5410..ebc86b9 100644 --- a/_sources/features/topo-arc/examples.yaml +++ b/_sources/features/topo-arc/examples.yaml @@ -55,5 +55,17 @@ base-uri: http://www.example.com/features/ ref: examples/spline.json # this is a "closure" of objects required to perform SHACL validation of logical constraints. + shacl-closure: + - ../topo-feature/examples/points.ttl + +- title: Example GeoJSON feature using Cubic Spline topology with start and end tangents + content: |- + Cubic Spline with Tangents example. + + snippets: + - language: json + base-uri: http://www.example.com/features/ + ref: examples/spline_with_tangents.json + # this is a "closure" of objects required to perform SHACL validation of logical constraints. shacl-closure: - ../topo-feature/examples/points.ttl \ No newline at end of file diff --git a/_sources/features/topo-arc/examples/spline_with_tangents.json b/_sources/features/topo-arc/examples/spline_with_tangents.json new file mode 100644 index 0000000..10312bb --- /dev/null +++ b/_sources/features/topo-arc/examples/spline_with_tangents.json @@ -0,0 +1,27 @@ +{ + "id": "1853004", + "type": "Feature", + "featureType": "my:SplineFeature", + "geometry": null, + "topology": { + "type": "CubicSpline", + "x-description": "References is an ordered list of features with point geometries, with tangent vectors defining entry and exit angles", + "startTangentVector": { + "references": [ + "PVS", + "P1" + ] + }, + "endTangentVector": { + "references": [ + "P2", + "PVE" + ] + }, + "references": [ + "P1", + "P2" + ] + }, + "properties": null +} \ No newline at end of file diff --git a/_sources/features/topo-arc/schema.json b/_sources/features/topo-arc/schema.json index 8d3f692..1a17375 100644 --- a/_sources/features/topo-arc/schema.json +++ b/_sources/features/topo-arc/schema.json @@ -74,13 +74,19 @@ "references": { "minItems": 3 } + }, + "not": { + "required": [ + "startTangentVector", + "endTangentVector" + ] } }, { "properties": { "type": { "type": "string", - "const": "CubicSplineWithTangents" + "const": "CubicSpline" }, "references": { "minItems": 2 @@ -92,14 +98,18 @@ } } }, - "endTangentVector": { + "endTangentVector": { "properties": { "references": { "minItems": 2 } } } - } + }, + "required": [ + "startTangentVector", + "endTangentVector" + ] } ] } diff --git a/_sources/features/topo-feature/examples/points.ttl b/_sources/features/topo-feature/examples/points.ttl index a43f275..066a464 100644 --- a/_sources/features/topo-feature/examples/points.ttl +++ b/_sources/features/topo-feature/examples/points.ttl @@ -28,6 +28,14 @@ geojson:geometry [ a geojson:Point ; geojson:coordinates ( 13 15 ) ] . + a geojson:Feature ; + geojson:geometry [ a geojson:Point ; + geojson:coordinates ( 9 10 ) ] . + + a geojson:Feature ; + geojson:geometry [ a geojson:Point ; + geojson:coordinates ( 20 21 ) ] . + [] geojson:features , .