# Copyright 2022 OASIS Open
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# RDF Vocabulary document for OSLC Core Tracked Resource Set
@prefix dcterms: .
@prefix ldp: .
@prefix owl: .
@prefix rdf: .
@prefix rdfs: .
@prefix vann: .
@prefix trs: .
@prefix trspatch: .
# the vocabulary
trs:
a owl:Ontology ;
dcterms:title "OSLC Core Tracked Resource Set vocabulary" ;
rdfs:label "OSLC Core Tracked Resource Set vocabulary" ;
dcterms:description "The OSLC Core Tracked Resource Set vocabulary defines terms used in describing Tracked Resource Sets." ;
dcterms:source ;
dcterms:isPartOf ;
dcterms:hasVersion "PS" ;
dcterms:license ;
dcterms:issued "2022-11-24"^^ ;
dcterms:dateCopyrighted "2012-2022" ;
vann:preferredNamespacePrefix "trs" .
# Classes
trs:TrackedResourceSet
a rdfs:Class ;
rdfs:isDefinedBy trs: ;
rdfs:label "Tracked Resource Set" ;
rdfs:comment "A Tracked Resource Set provides a representation of the current state of a Resource Set." .
trs:ChangeLog
a rdfs:Class ;
rdfs:isDefinedBy trs: ;
rdfs:label "Change Log" ;
rdfs:comment "A Change Log describes what resources have been created, modified or deleted, and when." .
trs:Base
a rdfs:Class ;
rdfs:isDefinedBy trs: ;
rdfs:subClassOf ldp:DirectContainer ;
rdfs:label "Base" ;
rdfs:comment "A Base identifies the initial set of resources in a Tracked Resource Set." .
trs:Creation
a rdfs:Class ;
rdfs:isDefinedBy trs: ;
rdfs:label "Creation" ;
rdfs:comment "Represents a resource creation or modification change event." .
trs:Modification
a rdfs:Class ;
rdfs:isDefinedBy trs: ;
rdfs:label "Modification" ;
rdfs:comment "Represents a resource creation or modification change event." .
trs:Deletion
a rdfs:Class ;
rdfs:isDefinedBy trs: ;
rdfs:label "Deletion" ;
rdfs:comment "Represents a resource deletion change event." .
# Properties
trs:base
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "base" ;
rdfs:range trs:Base ;
rdfs:comment "An enumeration of the Resources in the Resource Set." .
trs:changeLog
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "changeLog" ;
rdfs:range trs:ChangeLog ;
rdfs:comment "A Change Log providing an order series of incremental adjustments to the Resource Set." .
trs:cutoffEvent
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "cutoffEvent" ;
rdfs:comment "The most recent Change Log entry that is accounted for in this Base. When rdf:nil, the Base is an enumeration at the start of time." .
trs:change
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "change" ;
rdfs:comment "The Change Event entries." .
trs:previous
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "previous" ;
rdfs:range trs:ChangeLog ;
rdfs:comment "The continuation of the Change Log, containing the next group of chronologically earlier Change Events." .
trs:changed
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "changed" ;
rdfs:comment "The Resource that has changed." .
trs:order
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "order" ;
rdfs:comment "The sequence in time of the Change Event." .
trs:trackedResourceSet
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "trackedResourceSet" ;
rdfs:range trs:TrackedResourceSet ;
rdfs:comment "A Tracked Resource Set." .
# TRS Patch properties for change events
trspatch:createdFrom
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "createdFrom" ;
rdfs:comment "URI of antecedent resource for trs:Creation Change Events." .
trspatch:rdfPatch
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "rdfPatch" ;
rdfs:comment "Patch directives describing a modification to the resource's RDF representation." .
trspatch:beforeETag
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "beforeETag" ;
rdfs:comment "HTTP entity tag of resource immediately before this change." .
trspatch:afterETag
a rdf:Property ;
rdfs:isDefinedBy trs: ;
rdfs:label "afterETag" ;
rdfs:comment "HTTP entity tag of resource immediately after this change." .