Schema for a describing publications
This schema also incorporates the schemas
The schema is available as
URI: https://concepts.datalad.org/s/publications/unreleased
Name: publications-schema
Schema Diagram
erDiagram
Publication {
W3CISO8601 date_modified
W3CISO8601 date_published
string description
uriorcurieList about
uriorcurie same_as
string title
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Identifier {
uriorcurie creator
string notation
NodeUriOrCurie type
}
IssuedIdentifier {
string schema_agency
uriorcurie creator
string notation
NodeUriOrCurie type
}
ComputedIdentifier {
uriorcurie creator
string notation
NodeUriOrCurie type
}
Checksum {
uriorcurie creator
HexBinary notation
NodeUriOrCurie type
}
DOI {
string schema_agency
uriorcurie creator
string notation
NodeUriOrCurie type
}
InstantaneousEvent {
W3CISO8601 at_time
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
ThingMixin {
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
ValueSpecificationMixin {
uriorcurie range
string value
}
AttributeSpecification {
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
uriorcurie range
string value
}
Property {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Statement {
uriorcurie object
}
Thing {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
ValueSpecification {
uriorcurie range
string value
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Role {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Relationship {
uriorcurie object
}
Location {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Agent {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Activity {
W3CISO8601 ended_at
W3CISO8601 started_at
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Entity {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
SoftwareAgent {
uriorcurie id
uriorcurieList broad_mappings
uriorcurieList close_mappings
uriorcurieList exact_mappings
uriorcurieList narrow_mappings
uriorcurieList related_mappings
NodeUriOrCurie type
}
Publication ||--}o Identifier : "identifiers"
Publication ||--}o Relationship : "qualified_relations"
Publication ||--}o Agent : "attributed_to"
Publication ||--}o Entity : "derived_from"
Publication ||--}o Activity : "generated_by"
Publication ||--}o Thing : "relations"
Publication ||--}o AttributeSpecification : "attributes"
Publication ||--}o Statement : "characterized_by"
InstantaneousEvent ||--}o Identifier : "identifiers"
InstantaneousEvent ||--}o Relationship : "qualified_relations"
InstantaneousEvent ||--}o Thing : "relations"
InstantaneousEvent ||--}o AttributeSpecification : "attributes"
InstantaneousEvent ||--}o Statement : "characterized_by"
ThingMixin ||--}o AttributeSpecification : "attributes"
ThingMixin ||--}o Statement : "characterized_by"
AttributeSpecification ||--|| Property : "predicate"
AttributeSpecification ||--}o AttributeSpecification : "attributes"
AttributeSpecification ||--}o Statement : "characterized_by"
Property ||--}o Thing : "relations"
Property ||--}o AttributeSpecification : "attributes"
Property ||--}o Statement : "characterized_by"
Statement ||--|| Property : "predicate"
Thing ||--}o Thing : "relations"
Thing ||--}o AttributeSpecification : "attributes"
Thing ||--}o Statement : "characterized_by"
ValueSpecification ||--}o Thing : "relations"
ValueSpecification ||--}o AttributeSpecification : "attributes"
ValueSpecification ||--}o Statement : "characterized_by"
Role ||--}o Thing : "relations"
Role ||--}o AttributeSpecification : "attributes"
Role ||--}o Statement : "characterized_by"
Relationship ||--}| Role : "roles"
Location ||--}o Identifier : "identifiers"
Location ||--}o Relationship : "qualified_relations"
Location ||--}o Thing : "relations"
Location ||--}o AttributeSpecification : "attributes"
Location ||--}o Statement : "characterized_by"
Agent ||--}o Agent : "acted_on_behalf_of"
Agent ||--|o Location : "at_location"
Agent ||--}o Identifier : "identifiers"
Agent ||--}o Relationship : "qualified_relations"
Agent ||--}o Thing : "relations"
Agent ||--}o AttributeSpecification : "attributes"
Agent ||--}o Statement : "characterized_by"
Activity ||--|o Location : "at_location"
Activity ||--}o Identifier : "identifiers"
Activity ||--}o Relationship : "qualified_relations"
Activity ||--}o Agent : "associated_with"
Activity ||--}o Activity : "informed_by"
Activity ||--}o Thing : "relations"
Activity ||--}o AttributeSpecification : "attributes"
Activity ||--}o Statement : "characterized_by"
Entity ||--}o Identifier : "identifiers"
Entity ||--}o Relationship : "qualified_relations"
Entity ||--}o Agent : "attributed_to"
Entity ||--}o Entity : "derived_from"
Entity ||--}o Activity : "generated_by"
Entity ||--}o Thing : "relations"
Entity ||--}o AttributeSpecification : "attributes"
Entity ||--}o Statement : "characterized_by"
SoftwareAgent ||--}o Agent : "acted_on_behalf_of"
SoftwareAgent ||--|o Location : "at_location"
SoftwareAgent ||--}o Identifier : "identifiers"
SoftwareAgent ||--}o Relationship : "qualified_relations"
SoftwareAgent ||--}o Thing : "relations"
SoftwareAgent ||--}o AttributeSpecification : "attributes"
SoftwareAgent ||--}o Statement : "characterized_by"
Classes
Class | Description |
---|---|
AttributeSpecification | An attribute is conceptually a thing, but it requires no dedicated identifier (id ). Instead, it is linked to a Thing via its attributes slot and declares a predicate on the nature of the relationship. |
Identifier | An identifier is a label that uniquely identifies an item in a particular context. Some identifiers are globally unique. All identifiers are unique within their individual scope. |
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 file. Even small changes to the content of the file will change its checksum. This class allows the results of a variety of checksum and cryptographic message digest algorithms to be represented. |
IssuedIdentifier | An identifier that was issued by a particular agent with a notation that has no (or an undefined) relation to the nature of the identified entity. |
DOI | Digital Object Identifier (DOI; ISO 26324), an identifier system governed by the DOI Foundation, where individual identifiers are issued by one of several registration agencies. |
Relationship | An association class for characterizing the relation between two things with the role(s) the object had with respect to the subject. A relationship is always between two things only, but can be annotated with multiple roles (for example, a person having both an author role with respect to a dataset, and also being the person who is legally responsible contact for it). |
Statement | An RDF statement that links a predicate (a Property ) with an object (a Thing ) to the subject to form a triple. A Statement is used to qualify a relation to a Thing referenced by its identifier. For specifying a qualified relation to an attribute that has no dedicated identifier, use an AttributeSpecification . |
Thing | The most basic, identifiable item. In addition to the slots that are common between a Thing and an AttributeSpecification (see ThingMixin ), two additional slots are provided. The id slot takes the required identifier for a Thing . The relation slot allows for the inline specification of other Thing instances. Such a relation is unqualified (and symmetric), and should be further characterized via a Statement (see characterized_by ). From a schema perspective, the relation slots allows for building self-contained, structured documents (e.g., a JSON object) with arbitrarily complex information on a Thing . |
Activity | An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities. |
Agent | Something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity. |
SoftwareAgent | Running software. |
Entity | A physical, digital, conceptual, or other kind of thing with some fixed aspects; entities may be real or imaginary. |
Publication | A document that is the output of a publishing process. This can printed or electronic work offered for distribution, and may have been made available by a publisher. |
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 also be a non-geographic place such as a directory, row, or column. As such, there are numerous ways in which location can be expressed, such as by a coordinate, address, landmark, and so forth. |
Property | An RDF property, a Thing used to define a predicate , for example in a Statement . |
Role | A role is the function of a resource or agent with respect to a subject, in the context of resource attribution or relationships. |
ValueSpecification | A Thing that is a value of some kind. This class can be used to describe an outcome of a measurement, a factual value or constant, or other qualitative or quantitative information with an associated identifier. If no identifier is available, an AttributeSpecification can be used within the context of an associated Thing (attributes ). |
ThingMixin | Mix-in with the common interface of Thing and AttributeSpecification . This interface enables type specifications (rdf:type ) for things and attributes via a type designator slot to indicate specialized schema classes for validation where a slot's range is too generic. A thing or attribute can be further describe with statements on qualified relations to other things (characterized_by ), or inline attributes (attributes ). A set of mappings slots enables the alignment for arbitrary external schemas and terminologies. |
ValueSpecificationMixin | Mix-in for a (structured) value specification. Two slots are provided to define a (literal) value (value ) and its type (range ). |
Slots
Slot | Description |
---|---|
about | A relation of an information artifact to the subject, such as a URL identifyi... |
acted_on_behalf_of | Assign the authority and responsibility for carrying out a specific activity ... |
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... |
conforms_to | An established standard to which the subject conforms |
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 | Derivation is a transformation of an entity into another, an update of an ent... |
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... |
generated_by | Generation is the completion of production of a new entity by an activity |
id | Globally unique identifier of a metadata object, such as a Thing |
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... |
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 |
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 `... |
same_as | Declares that the subject and an object are equal |
schema_agency | Name of the agency that issued an identifier |
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 |
type | State that the subject is an instance of a particular RDF class |
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 |
---|---|