Skip to content

Commit

Permalink
clarify typing and update bblock import refs.
Browse files Browse the repository at this point in the history
  • Loading branch information
rob-metalinkage committed Feb 14, 2024
1 parent 570db65 commit 883efb4
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 21 deletions.
18 changes: 16 additions & 2 deletions _sources/description.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,20 @@
## Provenance chain

A schema defining objects that may be referenced or nested as a chain of activities.
A JSON schema defining objects that may be referenced or nested as a chain of Activities, Entities or Agents (or subclasses thereof)

This schema implements the PROV vocabulary semantics.
This schema implements the PROV vocabulary semantics (through JSON-LD mapping directly to the PROV-O RDF model.)

## Object typing

Object typing needs to be explicit to support effective semantic mapping to the PROV vocabulary, and to support schema validation scope clarity (using the right sub-schema for objects in a collection representing the directed graph model of PROV).

`provType` may be used to map to the subClasses of the Provenance vocabulary.

Custom application object types are explicit (`activityType`, `agentType`, `entityType` to support schema validation clarity).



Note that entityType is optional and may be replaced by `featureType` for compatibility with the OGC Feature implementation (implicitly always an Entity)

likewise the use of the property `type` is not specified to allow compatibility with GeoJSON features that must have this property with a constant value ("Feature" or "FeatureCollection").

35 changes: 16 additions & 19 deletions _sources/schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,10 @@
"$defs": {
"objectref": {
"$anchor": "objectref",
"$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/ogc-utils/iri-or-curie/schema.json"
"$ref": "bblocks://ogc.ogc-utils.iri-or-curie"
},
"oneOrMoreObjectref": {
"$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/ogc-utils/iri-or-curie/schema.json#/$defs/MultipleOrObject"
},
"curie": {
"$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/ogc-utils/iri-or-curie/schema.json"
"$ref": "bblocks://ogc.ogc-utils.iri-or-curie#/$defs/MultipleOrObject"
},
"oneOrMoreActivitiesOrRefIds": {
"oneOf": [
Expand Down Expand Up @@ -85,7 +82,7 @@
]
},
"externalLink": {
"$ref": "https://opengeospatial.github.io/bblocks/annotated-schemas/ogc-utils/json-link/schema.json"
"$ref": "bblocks://ogc.ogc-utils.json-link"
},
"influenced": {
"type": "object",
Expand Down Expand Up @@ -132,7 +129,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"featureType": {
"$ref": "#/$defs/oneOrMoreObjectref"
Expand Down Expand Up @@ -389,7 +386,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"activityType": {
"$ref": "#/$defs/oneOrMoreObjectref"
Expand Down Expand Up @@ -559,7 +556,7 @@
"type": "string"
},
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"actedOnBehalfOf": {
"$ref": "#/$defs/oneOrMoreAgentsOrRefIds"
Expand Down Expand Up @@ -655,7 +652,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -698,7 +695,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -730,7 +727,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -762,7 +759,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -801,7 +798,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -894,7 +891,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -964,7 +961,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -1010,7 +1007,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -1046,7 +1043,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"type": {
"oneOf": [
Expand Down Expand Up @@ -1088,7 +1085,7 @@
"type": "object",
"properties": {
"id": {
"$ref": "#/$defs/curie"
"$ref": "#/$defs/objectref"
},
"influencer": {
"anyOf": [
Expand Down
2 changes: 2 additions & 0 deletions bblocks-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@ description: |
![](https://www.w3.org/TR/prov-o/diagrams/starting-points.svg)
imports:
- default

0 comments on commit 883efb4

Please sign in to comment.