Schema for a generic (data) provenance annotation
This schema builds on the PROV schema,
and diversifies its Agent
concept to cover aspects of social
relations and concepts.
With Person
, and Organization
, two
essential Agent
types included in PROV
are provided here.
A custom CURIE prefix email:
is defined and emitted to allow for using
emails as suitable schema identifiers for an email address (e.g.,
email:me@example.org
).
This schema also incorporates the schemas
The schema definition is available as
URI: https://concepts.datalad.org/s/social/unreleased
Name: social-schema
Schema Diagram
erDiagram Activity { W3CISO8601 ended_at W3CISO8601 started_at uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Agent { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Annotation { string annotation_value } AttributeSpecification { uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type uriorcurie range string value } Checksum { uriorcurie creator HexBinary notation NodeUriOrCurie schema_type } ComputedIdentifier { uriorcurie creator string notation NodeUriOrCurie schema_type } DOI { string schema_agency uriorcurie creator string notation NodeUriOrCurie schema_type } Entity { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Group { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Identifier { uriorcurie creator string notation NodeUriOrCurie schema_type } InstantaneousEvent { W3CISO8601 at_time uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } IssuedIdentifier { string schema_agency uriorcurie creator string notation NodeUriOrCurie schema_type } Location { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Organization { string name string short_name uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Person { stringList additional_names string family_name string given_name string honorific_name_prefix string honorific_name_suffix string formatted_name uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Project { string short_name string title W3CISO8601 ended_at W3CISO8601 started_at uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Property { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Relationship { NodeUriOrCurie schema_type } Role { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } SoftwareAgent { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Statement { } Thing { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } ThingMixin { uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } TransientRelationship { W3CISO8601 started_at W3CISO8601 ended_at NodeUriOrCurie schema_type } ValueSpecification { uriorcurie range string value uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } ValueSpecificationMixin { uriorcurie range string value } Activity ||--|o Location : "at_location" Activity ||--}o Activity : "informed_by" Activity ||--}o Agent : "associated_with" Activity ||--}o Annotation : "annotations" Activity ||--}o AttributeSpecification : "attributes" Activity ||--}o Identifier : "identifiers" Activity ||--}o Relationship : "qualified_relations" Activity ||--}o Statement : "characterized_by" Activity ||--}o Thing : "relations" Agent ||--|o Location : "at_location" Agent ||--}o Agent : "acted_on_behalf_of" Agent ||--}o Annotation : "annotations" Agent ||--}o AttributeSpecification : "attributes" Agent ||--}o Identifier : "identifiers" Agent ||--}o Relationship : "qualified_relations" Agent ||--}o Statement : "characterized_by" Agent ||--}o Thing : "relations" Annotation ||--|o Thing : "annotation_tag" AttributeSpecification ||--|| Property : "predicate" AttributeSpecification ||--}o Annotation : "annotations" AttributeSpecification ||--}o AttributeSpecification : "attributes" AttributeSpecification ||--}o Statement : "characterized_by" Entity ||--}o Activity : "generated_by" Entity ||--}o Agent : "attributed_to" Entity ||--}o Annotation : "annotations" Entity ||--}o AttributeSpecification : "attributes" Entity ||--}o Entity : "derived_from" Entity ||--}o Identifier : "identifiers" Entity ||--}o Relationship : "qualified_relations" Entity ||--}o Statement : "characterized_by" Entity ||--}o Thing : "relations" Group ||--|o Location : "at_location" Group ||--}o Agent : "acted_on_behalf_of" Group ||--}o Annotation : "annotations" Group ||--}o AttributeSpecification : "attributes" Group ||--}o Identifier : "identifiers" Group ||--}o Relationship : "qualified_relations" Group ||--}o Statement : "characterized_by" Group ||--}o Thing : "relations" InstantaneousEvent ||--}o Annotation : "annotations" InstantaneousEvent ||--}o AttributeSpecification : "attributes" InstantaneousEvent ||--}o Identifier : "identifiers" InstantaneousEvent ||--}o Relationship : "qualified_relations" InstantaneousEvent ||--}o Statement : "characterized_by" InstantaneousEvent ||--}o Thing : "relations" Location ||--}o Annotation : "annotations" Location ||--}o AttributeSpecification : "attributes" Location ||--}o Identifier : "identifiers" Location ||--}o Relationship : "qualified_relations" Location ||--}o Statement : "characterized_by" Location ||--}o Thing : "relations" Organization ||--|o Location : "at_location" Organization ||--}o Agent : "acted_on_behalf_of" Organization ||--}o Annotation : "annotations" Organization ||--}o AttributeSpecification : "attributes" Organization ||--}o Identifier : "identifiers" Organization ||--}o Relationship : "qualified_relations" Organization ||--}o Statement : "characterized_by" Organization ||--}o Thing : "relations" Person ||--|o Location : "at_location" Person ||--}o Agent : "acted_on_behalf_of" Person ||--}o Annotation : "annotations" Person ||--}o AttributeSpecification : "attributes" Person ||--}o Identifier : "identifiers" Person ||--}o Relationship : "qualified_relations" Person ||--}o Statement : "characterized_by" Person ||--}o Thing : "relations" Project ||--|o Location : "at_location" Project ||--}o Activity : "informed_by" Project ||--}o Agent : "associated_with" Project ||--}o Annotation : "annotations" Project ||--}o AttributeSpecification : "attributes" Project ||--}o Identifier : "identifiers" Project ||--}o Relationship : "qualified_relations" Project ||--}o Statement : "characterized_by" Project ||--}o Thing : "relations" Property ||--}o Annotation : "annotations" Property ||--}o AttributeSpecification : "attributes" Property ||--}o Statement : "characterized_by" Property ||--}o Thing : "relations" Relationship ||--|| Thing : "object" Relationship ||--}o Role : "roles" Role ||--}o Annotation : "annotations" Role ||--}o AttributeSpecification : "attributes" Role ||--}o Statement : "characterized_by" Role ||--}o Thing : "relations" SoftwareAgent ||--|o Location : "at_location" SoftwareAgent ||--}o Agent : "acted_on_behalf_of" SoftwareAgent ||--}o Annotation : "annotations" SoftwareAgent ||--}o AttributeSpecification : "attributes" SoftwareAgent ||--}o Identifier : "identifiers" SoftwareAgent ||--}o Relationship : "qualified_relations" SoftwareAgent ||--}o Statement : "characterized_by" SoftwareAgent ||--}o Thing : "relations" Statement ||--|| Property : "predicate" Statement ||--|| Thing : "object" Thing ||--}o Annotation : "annotations" Thing ||--}o AttributeSpecification : "attributes" Thing ||--}o Statement : "characterized_by" Thing ||--}o Thing : "relations" ThingMixin ||--}o Annotation : "annotations" ThingMixin ||--}o AttributeSpecification : "attributes" ThingMixin ||--}o Statement : "characterized_by" TransientRelationship ||--|| Thing : "object" TransientRelationship ||--}o Role : "roles" ValueSpecification ||--}o Annotation : "annotations" ValueSpecification ||--}o AttributeSpecification : "attributes" ValueSpecification ||--}o Statement : "characterized_by" ValueSpecification ||--}o Thing : "relations"
Classes
Class | Description |
---|---|
Annotation | A tag/value pair with the semantics of OWL Annotation |
AttributeSpecification | An attribute is conceptually a thing, but it requires no dedicated identifier... |
Identifier | An identifier is a label that uniquely identifies an item in a particular con... |
ComputedIdentifier | An identifier that has been derived from information on the identified entity |
Checksum | A Checksum is a value that allows to check the integrity of the contents of a... |
IssuedIdentifier | An identifier that was issued by a particular agent with a notation that has ... |
DOI | Digital Object Identifier (DOI; ISO 26324), an identifier system governed by ... |
Relationship | An association class for characterizing the relation between two things with ... |
TransientRelationship | A relationship that is valid or remains in place for a limited time |
Statement | An RDF statement that links a predicate (a Property ) with an object (a ... |
Thing | The most basic, identifiable item |
Activity | An activity is something that occurs over a period of time and acts upon or w... |
Project | A collective endeavour of some kind |
Agent | Something that bears some form of responsibility for an activity taking place... |
Group | A collection of individual agents |
Organization | A social or legal instititution such as a company, a society, or a university |
Person | Person agents are people, alive, dead, or fictional |
SoftwareAgent | Running software |
Entity | A physical, digital, conceptual, or other kind of thing with some fixed aspec... |
InstantaneousEvent | A moment of a transition from one particular state of the world to another |
Location | A location can be an identifiable geographic place (ISO 19112), but it can al... |
Property | An RDF property, a Thing used to define a predicate , for example in a `St... |
Role | A role is the function of a resource or agent with respect to a subject, in t... |
ValueSpecification | A Thing that is a value of some kind |
ThingMixin | Mix-in with the common interface of Thing and AttributeSpecification |
ValueSpecificationMixin | Mix-in for a (structured) value specification |
Slots
Slot | Description |
---|---|
acted_on_behalf_of | Assign the authority and responsibility for carrying out a specific activity ... |
additional_names | Additional name(s) associated with the subject, such as one or more middle na... |
annotation_tag | A tag identifying an annotation |
annotation_value | The actual annotation |
annotations | A record of properties of the metadata record on a subject, a collection of t... |
associated_with | An activity association is an assignment of responsibility to an agent for an... |
at_location | Associate the subject with a location |
at_time | Time at which an instanteneous event takes place or took place |
attributed_to | Attribution is the ascribing of an entity to an agent |
attributes | Declares a relation that associates a Thing (or another attribute) with an ... |
broad_mappings | A list of terms from different schemas or terminology systems that have broad... |
characterized_by | Qualifies relationships between a subject Thing and an object Thing with ... |
close_mappings | A list of terms from different schemas or terminology systems that have close... |
creator | An agent responsible for making an entity |
date_modified | Timepoint at which the subject was (last) changed, updated or modified |
date_published | Timepoint at which the subject was (last) published |
derived_from | A entity from which the subject was created through some kind of process |
description | A free-text account of the subject |
ended_at | End is when an activity is deemed to have been ended by some trigger |
exact_mappings | A list of terms from different schemas or terminology systems that have ident... |
family_name | The (inherited) family name of the subject |
formatted_name | A formatted text corresponding to the name of the subject |
generated_by | Identification of the process that led to the production of the subject entit... |
given_name | The given (non-inherited) name of the subject |
honorific_name_prefix | The honorific prefix(es) of the subject's name |
honorific_name_suffix | The honorific suffix(es) of the subject's name |
identifiers | An unambiguous reference to the subject within a given context |
informed_by | Communication is the exchange of an entity by two activities, one activity us... |
keywords | One or more keywords or tags describing the subject |
locator | A descriptive identifier that locates a resource within a containing resource |
mappings | A list of terms from different schemas or terminology systems that have compa... |
name | Name of the subject |
narrow_mappings | A list of terms from different schemas or terminology systems that have narro... |
notation | String of characters such as "T58:5" or "30:4833" used to uniquely identify a... |
object | Reference to a Thing within a Statement |
pid | Persistent and globally unique identifier of a Thing |
predicate | Reference to a Property within a Statement |
qualified_relations | Characterizes the relationship or role of an entity with respect to the subje... |
range | Declares that the value of a Thing or AttributeSpecification are instance... |
related_mappings | A list of terms from different schemas or terminology systems that have relat... |
relations | Declares an unqualified relation of the subject Thing to another Thing |
roles | Describes the function of an entity or agent (object) within the scope of a `... |
schema_agency | Name of the agency that issued an identifier |
schema_type | State that the subject is an instance of a particular schema class |
short_name | A shortened name for the subject |
started_at | Start is when an activity is deemed to have been started by some trigger |
title | A summarily description of the subject |
value | Value of a thing |
Enumerations
Enumeration | Description |
---|---|
Types
Type | Description |
---|---|
Boolean | A binary (true or false) value |
Curie | a compact URI |
Date | a date (year, month and day) in an idealized calendar |
DateOrDatetime | Either a date or a datetime |
Datetime | The combination of a date and time |
Decimal | A real number with arbitrary precision that conforms to the xsd:decimal speci... |
Double | A real number that conforms to the xsd:double specification |
EmailAddress | RFC 5322 compliant email address |
Float | A real number that conforms to the xsd:float specification |
HexBinary | hex-encoded binary data |
Integer | An integer |
Jsonpath | A string encoding a JSON Path |
Jsonpointer | A string encoding a JSON Pointer |
Ncname | Prefix part of CURIE |
Nodeidentifier | A URI, CURIE or BNODE that represents a node in a model |
NodeUriOrCurie | A type referencing an graph node |
NonNegativeInteger | An integer |
Objectidentifier | A URI or CURIE that represents an object in the model |
Sparqlpath | A string encoding a SPARQL Property Path |
String | A character string |
Time | A time object represents a (local) time of day, independent of any particular... |
Uri | a complete URI |
Uriorcurie | a URI or a CURIE |
W3CISO8601 | W3C variant/subset of IS08601 for specifying date(times) |
Subsets
Subset | Description |
---|---|