Skip to content

Commit

Permalink
Further adopt externally defined classes
Browse files Browse the repository at this point in the history
  • Loading branch information
mih committed Feb 29, 2024
1 parent e985f49 commit 07f6961
Show file tree
Hide file tree
Showing 3 changed files with 62 additions and 20 deletions.
12 changes: 9 additions & 3 deletions src/linkml/ontology/checksumming.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,23 +36,27 @@ enums:

slots:
checksum:
slot_uri: spdx:checksum
slot_uri: dlco:checksum
description: >-
The checksum property provides a mechanism that can be used to verify
that the contents of a file or package have not changed.
range: Checksum
exact_mappings:
- spdx:checksum

digest:
slot_uri: spdx:checksumValue
slot_uri: dlco:checksumValue
description: >-
Lower case hexadecimal encoded checksum digest value produced using a
specific algorithm.
range: HexBinary
exact_mappings:
- spdx:checksumValue


classes:
Checksum:
class_uri: spdx:Checksum
class_uri: dlco:Checksum
description: >-
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
Expand All @@ -66,3 +70,5 @@ classes:
slot_uri: spdx:algorithm
description: >-
Identifies the algorithm used to produce the subject `Checksum`.
exact_mappings:
- spdx:Checksum
10 changes: 8 additions & 2 deletions src/linkml/ontology/properties.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,13 @@ slots:
range: EmailAddress

has_part:
slot_uri: dcterms:hasPart
slot_uri: dlco:hasPart
description: >-
A related resource that is included either physically
or logically in the described resource.
exact_mappings:
- dcterms:hasPart


name:
slot_uri: dlco:name
Expand All @@ -57,12 +60,15 @@ slots:
range: string

relation:
slot_uri: dcterms:relation
slot_uri: dlco:relation
description: >-
The resource related to the source resource.
relational_role: OBJECT
exact_mappings:
- dcterms:relation

uuid:
slot_uri: dlco:uuid
description: >-
Associated UUID identifier.
range: UUID
Expand Down
60 changes: 45 additions & 15 deletions src/linkml/ontology/provenance.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,54 +17,64 @@ default_prefix: dlco
slots:
# Commit was_generated_by CommitActivity
was_generated_by:
slot_uri: prov:wasGeneratedBy
slot_uri: dlco:wasGeneratedBy
description: >-
A generation is the completion of production of a new entity by an
activity. This entity did not exist before generation and becomes
available for usage after this generation.
domain: Entity
range: Activity
exact_mappings:
- prov:wasGeneratedBy

# Commit was_derived_from Commit
was_derived_from:
slot_uri: prov:wasDerivedFrom
slot_uri: dlco:wasDerivedFrom
description: >-
A derivation is a transformation of an entity into another, an update
of an entity resulting in a new one, or the construction of a new
entity based on a pre-existing entity.
domain: Entity
range: Entity
exact_mappings:
- prov:wasDerivedFrom

# Commit was_attributed_to Author
was_attributed_to:
slot_uri: prov:wasAttributedTo
slot_uri: dlco:wasAttributedTo
description: >-
Attribution is the ascribing of an entity to an agent.
domain: Entity
range: Agent
exact_mappings:
- prov:wasAttributedTo

# Commit was_associated_with Committer
was_associated_with:
slot_uri: prov:wasAssociatedWith
slot_uri: dlco:wasAssociatedWith
description: >-
An activity association is an assignment of responsibility to an agent
for an activity, indicating that the agent had a role in the activity.
It further allows for a plan to be specified, which is the plan intended
by the agent to achieve some goals in the context of this activity.
domain: Activity
range: Agent
exact_mappings:
- prov:wasAssociatedWith

was_informed_by:
slot_uri: prov:wasInformedBy
slot_uri: dlco:wasInformedBy
description: >-
Communication is the exchange of an entity by two activities, one activity
using the entity generated by the other.
domain: Activity
range: Activity
exact_mappings:
- prov:wasInformedBy

# CommitActivity ended_at DateTime
ended_at:
slot_uri: prov:endedAtTime
slot_uri: dlco:endedAtTime
description: >-
End is when an activity is deemed to have been ended by an entity,
known as trigger. The activity no longer exists after its end.
Expand All @@ -73,89 +83,109 @@ slots:
domain: Activity
#range: datetime
range: string
exact_mappings:
- prov:endedAtTime
notes:
- successful validation with `datetime` as a range and linkml-jsonschema-validate` depends on a patched linkml, see https://github.com/linkml/linkml/issues/1806
- a related problem also exists for `linkml-validate`, we cannot have a more specific range right now

# Commit generated_at DateTime (committer time)
generated_at:
slot_uri: prov:generatedAtTime
slot_uri: dlco:generatedAtTime
description: >-
(Date and) time at which the generation of an entity took place or was
completed.
domain: Entity
range: datetime
exact_mappings:
- prov:generatedAtTime

# Commit was_revision_of Dataset(unversioned concept)
was_revision_of:
slot_uri: prov:wasRevisionOf
slot_uri: dlco:wasRevisionOf
description: >-
A revision is a derivation for which the resulting entity is a revised
version of some original. The implication here is that the resulting
entity contains substantial content from the original. Revision is a
particular case of derivation.
domain: Entity
range: Entity
exact_mappings:
- prov:wasRevisionOf

# DataladRun acted_on_behalf_of Author
acted_on_behalf_of:
slot_uri: prov:actedOnBehalfOf
slot_uri: dlco:actedOnBehalfOf
description: >-
Delegation is the assignment of authority and responsibility to an
agent (by itself or by another agent) to carry out a specific activity
as a delegate or representative, while the agent it acts on behalf of
retains some responsibility for the outcome of the delegated work.
domain: Agent
range: Agent
exact_mappings:
- prov:actedOnBehalfOf

at_location:
slot_uri: prov:atLocation
slot_uri: dlco:atLocation
description: >-
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.
range: Location
exact_mappings:
- prov:atLocation


classes:
Entity:
mixin: true
class_uri: prov:Entity
class_uri: dlco:Entity
description: >-
A physical, digital, conceptual, or other kind of thing with some
fixed aspects; entities may be real or imaginary.
exact_mappings:
- prov:Entity

Activity:
mixin: true
class_uri: prov:Activity
class_uri: dlco:Activity
description: >-
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.
exact_mappings:
- prov:Activity

Agent:
mixin: true
class_uri: prov:Agent
class_uri: dlco:Agent
description: >-
Something that bears some form of responsibility for an activity
taking place, for the existence of an entity, or for another
agent's activity.
exact_mappings:
- prov:Agent

SoftwareAgent:
mixin: true
is_a: Agent
class_uri: prov:SoftwareAgent
class_uri: dlco:SoftwareAgent
description: >-
Running software.
exact_mappings:
- prov:SoftwareAgent

Location:
mixin: true
class_uri: prov:Location
class_uri: dlco:Location
description: >-
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.
exact_mappings:
- prov:Location

0 comments on commit 07f6961

Please sign in to comment.