.
This commit is contained in:
@@ -28,6 +28,7 @@ pub static PREFIXES: LazyLock<BTreeMap<String, String>> = LazyLock::new(|| {
|
|||||||
("premis3", "http://www.loc.gov/premis/rdf/v3/"),
|
("premis3", "http://www.loc.gov/premis/rdf/v3/"),
|
||||||
("dcterms", "http://purl.org/dc/terms/"),
|
("dcterms", "http://purl.org/dc/terms/"),
|
||||||
("fedora", "http://fedora.info/definitions/v4/repository#"),
|
("fedora", "http://fedora.info/definitions/v4/repository#"),
|
||||||
|
("lrmer", "http://iflastandards.info/ns/lrm/lrmer/"),
|
||||||
("rdaa", "http://rdaregistry.info/Elements/a/"),
|
("rdaa", "http://rdaregistry.info/Elements/a/"),
|
||||||
("rdac", "http://rdaregistry.info/Elements/c/"),
|
("rdac", "http://rdaregistry.info/Elements/c/"),
|
||||||
("rdae", "http://rdaregistry.info/Elements/e/"),
|
("rdae", "http://rdaregistry.info/Elements/e/"),
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f ldp.ttl -
|
|||||||
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f owl.ttl --graph http://www.w3.org/2002/07/owl
|
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f owl.ttl --graph http://www.w3.org/2002/07/owl
|
||||||
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f skos.rdf --graph https://www.w3.org/TR/skos-reference/skos.rdf
|
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f skos.rdf --graph https://www.w3.org/TR/skos-reference/skos.rdf
|
||||||
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f prov.ttl --graph http://www.w3.org/ns/prov
|
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f prov.ttl --graph http://www.w3.org/ns/prov
|
||||||
|
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f premis-1-0-0.rdf --graph https://id.loc.gov/ontologies/premis-1-0-0.rdf
|
||||||
|
oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology -f premis-3-0-0.rdf --graph https://id.loc.gov/ontologies/premis-3-0-0.rdf
|
||||||
|
|
||||||
# https://github.com/RDARegistry/RDA-Vocabularies/archive/v5.4.13.tar.gz
|
# https://github.com/RDARegistry/RDA-Vocabularies/archive/v5.4.13.tar.gz
|
||||||
find Elements -type f -name '*.xml' -exec oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology --graph http://rdaregistry.info/Elements -f {} \;
|
find Elements -type f -name '*.xml' -exec oxigraph load -l ~/.local/share/org.graphofliberty.desktop/ontology --graph http://rdaregistry.info/Elements -f {} \;
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,578 @@
|
|||||||
|
<rdf:RDF xml:base="http://www.loc.gov/premis/rdf/v3/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:bf="http://id.loc.gov/ontologies/bibframe/" xmlns:bflc="http://id.loc.gov/ontologies/bflc/" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cc="http://creativecommons.org/ns#" xmlns:foaf="http://xmlns.com/foaf/0.1/">
|
||||||
|
<owl:Ontology rdf:about="">
|
||||||
|
<rdfs:label xml:lang="en">PREMIS 3 Ontology</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Ontology for PREMIS 3, the international standard
|
||||||
|
for metadata to support the preservation of digital objects and ensure their
|
||||||
|
long-term usability.</rdfs:comment>
|
||||||
|
<dcterms:modified rdf:datatype="http://www.w3.org/2001/XMLSchema#date">2018-10-12</dcterms:modified>
|
||||||
|
<!-- Replaced long note and version variation mechanism with actual bonafide conclusion to version debate. -->
|
||||||
|
<owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string">3.0.0</owl:versionInfo>
|
||||||
|
<owl:versionIRI rdf:resource="https://id.loc.gov/ontologies/premis-3-0-0"/>
|
||||||
|
<owl:priorVersion rdf:resource="https://id.loc.gov/ontologies/premis-1-0-0"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://www.loc.gov/standards/premis/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="https://github.com/PREMIS-OWL-Revision-Team/revise-premis-owl/"/>
|
||||||
|
<owl:imports rdf:resource="http://www.w3.org/ns/prov-o-20130430"/>
|
||||||
|
</owl:Ontology>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Action" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Action</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Operation type to perform on an Object. Effectively performing this action may produce an Event.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/actionsGranted"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Agent" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Agent</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Actor (human, machine, or software) associated with one or more Event and/or Rights
|
||||||
|
statement associated with a digital object.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.w3.org/ns/prov#Agent"/>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://xmlns.com/foaf/0.1/Agent"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Bitstream" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Bitstream</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Contiguous or non-contiguous data within a file that has meaningful properties for
|
||||||
|
preservation purposes.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/IntellectualEntity"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Representation"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Copyright" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Copyright</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Copyright law.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/InstitutionalPolicy"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/License"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Statute"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/copyrightStatus"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Dependency" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Dependency</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Relationship where one Object requires another Object to support its function, delivery, or
|
||||||
|
the coherence of its content.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/EnvironmentCharacteristic" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Environment characteristic</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">An assessment of the extent to which the described environment supports its
|
||||||
|
purpose.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/environmentCharacteristic"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Event" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Event</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Action performed within or outside the repository that affects its capability to preserve Objects over the long term.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.w3.org/ns/prov#Activity"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/eventType"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">File</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Named and ordered sequence of bytes that is known to an operating system.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/IntellectualEntity"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Representation"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Fixity" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Fixity</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Information used to verify whether an object has been altered in an undocumented or
|
||||||
|
unauthorized way.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/cryptographicHashFunctions"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/HardwareAgent" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Hardware agent</rdfs:label>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Agent"/>
|
||||||
|
<owl:sameAs rdf:resource="http://id.loc.gov/vocabulary/preservation/agentType/har"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Organization"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Person"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/SoftwareAgent"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Identifier" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Identifier</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">An unambiguous reference to the PREMIS entity within the preservation
|
||||||
|
repository.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Inhibitor" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Inhibitor</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Feature of a Digital Object intended to inhibit access, copying, dissemination, or
|
||||||
|
migration. Common Inhibitors are encryption and password protection.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/inhibitorType"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/InstitutionalPolicy" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Institutional policy</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">A policy decision made by an organization.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Copyright"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/License"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Statute"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/IntellectualEntity" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Intellectual entity</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">A set of content that is considered a single intellectual unit for purposes of management and
|
||||||
|
description: for example, a particular book, map, photograph, database, or piece of hardware or
|
||||||
|
software. An Intellectual Entity can include other Intellectual Entities; for example, a web site can
|
||||||
|
include a web page; a web page can include an image. An Intellectual Entity may have one or more digital
|
||||||
|
representations. An Intellectual Entity may also describe an environment, defined as technology
|
||||||
|
supporting a digital object in some way (e.g. by rendering or executing it). Environments can consist of
|
||||||
|
software, hardware, or a combination of both.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Representation"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/environmentFunctionType"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/License" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">License</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">A license agreement or other legal document that grants rights.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Copyright"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/InstitutionalPolicy"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Statute"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Object" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Object</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Discrete unit of information subject to digital preservation. Subclasses of Object are
|
||||||
|
Intellectual Entity, Representation, File and Bitstream.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.w3.org/ns/prov#Entity"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Organization" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Organization</rdfs:label>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Agent"/>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://xmlns.com/foaf/0.1/Organization"/>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.w3.org/ns/prov#Organization"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/HardwareAgent"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Person"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/SoftwareAgent"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/OutcomeStatus" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Outcome status</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Overall result of the Event in terms of success, partial success, or failure.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/eventOutcome"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Person" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Person</rdfs:label>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Agent"/>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.w3.org/ns/prov#Person"/>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://xmlns.com/foaf/0.1/Person"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/HardwareAgent"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Organization"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/SoftwareAgent"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/PreservationPolicy" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Preservation policy</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Information indicating the decision or policy on the set of preservation functions to be
|
||||||
|
applied to an object and the context in which the decision or policy was made. Note that in addition to
|
||||||
|
subclasses declared at presLevType, SignificantProperties is also a subclass of PreservationPolicy.
|
||||||
|
Implementers may also wish to create locally-defined subclasses.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://purl.org/dc/terms/Policy"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/preservationLevelRole"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Representation" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Representation</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Digital or physical Object instantiating or embodying an Intellectual Entity. A digital
|
||||||
|
representation is the set of stored digital files and structural metadata needed to provide a complete
|
||||||
|
and reasonable rendition of the Intellectual Entity. A physical representation is an item such as a
|
||||||
|
manuscript, video cassette, or printed document.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/IntellectualEntity"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/RightsBasis" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Rights basis</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Designation of the basis for the right or permission governing the Object.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/rightsBasis"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/RightsStatus" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Rights status</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Information about how a RightsBasis applies to a particular object.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Rule" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Rule</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Statement about the Actions an Agent is permitted to undertake or prohibited from
|
||||||
|
undertaking with respect to an Object.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Signature" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Signature</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Mathematical technique used to validate the authenticity and integrity of a message,
|
||||||
|
software or digital document.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/signatureMethod"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/SignatureEncoding" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Signature encoding</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Encoding used for the signature value and key information.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/signatureEncoding"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/SignificantProperties" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Significant properties</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Characteristics of a particular object subjectively determined to be important to maintain
|
||||||
|
through preservation actions.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/PreservationPolicy"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/SoftwareAgent" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Software agent</rdfs:label>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/Agent"/>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.w3.org/ns/prov#SoftwareAgent"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/HardwareAgent"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Organization"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Person"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Statute" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Statute</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">A law that grants or revokes rights, such as laws governing privacy or orphan
|
||||||
|
works.</rdfs:comment>
|
||||||
|
<rdfs:subClassOf rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/Copyright"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/License"/>
|
||||||
|
<owl:disjointWith rdf:resource="http://www.loc.gov/premis/rdf/v3/InstitutionalPolicy"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/StorageLocation" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Storage location</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Information needed to retrieve a physical item from its physical storage location or a file
|
||||||
|
from the storage system, or to access a bitstream within a file.</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/contentLocationType"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/StorageMedium" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">Storage medium</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">The physical medium on which the Object is stored (e.g., magnetic tape, hard disk, CD-ROM,
|
||||||
|
DVD).</rdfs:comment>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/storageMedium"/>
|
||||||
|
</owl:Class>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/act" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">act</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Rule"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Action"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/allows" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">allows</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Rule"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/governs" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">governs</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/basis" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has basis</rdfs:label>
|
||||||
|
<rdfs:comment xml:lang="en">Links from a RightsStatus to the RightsBasis instance that supports or documents
|
||||||
|
it.</rdfs:comment>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsStatus"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/characteristic" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has characteristic</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Dependency"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/EnvironmentCharacteristic"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/dependency" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has dependency</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Dependency"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/documentation" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has documentation</rdfs:label>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/encoding" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has encoding</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Signature"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/SignatureEncoding"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/fixity" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has fixity</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Fixity"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/identifier" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has identifier</rdfs:label>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Identifier"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/jurisdiction" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has jurisdiction</rdfs:label>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/medium" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has medium</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/StorageLocation"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/StorageMedium"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/outcome" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has outcome</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Event"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/OutcomeStatus"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/policy" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has policy</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/PreservationPolicy"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/preservationLevelRole"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/purpose" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has purpose</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Dependency"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Action"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/relationship" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has relationship</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Agent"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<rdfs:seeAlso rdf:resource="http://id.loc.gov/vocabulary/preservation/relationshipSubType"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/rightsStatus" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has rights status</rdfs:label>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/rights"/>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Object"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsStatus"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/signature" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has signature</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Signature"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/inhibitedBy" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">inhibited by</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Inhibitor"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/inhibits" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">inhibits</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Inhibitor"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Action"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/prohibits" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">prohibits</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/Rule"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:ObjectProperty rdf:about="http://www.loc.gov/premis/rdf/v3/storedAt" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">stored at</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Representation"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.loc.gov/premis/rdf/v3/StorageLocation"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:ObjectProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/endDate" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">end date</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/RightsStatus"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Rule"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://purl.org/dc/terms/date"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/citation" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has citation</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/compositionLevel" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has composition level</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/determinationDate" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has determination date</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsStatus"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#date"/>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://purl.org/dc/terms/date"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/key" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has key</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Inhibitor"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Signature"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/note" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has note</rdfs:label>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://purl.org/dc/terms/description"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/originalName" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has original name</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/IntellectualEntity"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Representation"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/outcomeNote" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has outcome note</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Event"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://www.loc.gov/premis/rdf/v3/note"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/rationale" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has rationale</rdfs:label>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://www.loc.gov/premis/rdf/v3/note"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/restriction" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has restriction</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Rule"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/size" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has size</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Bitstream"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/File"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#nonNegativeInteger"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
<skos:narrowMatch rdf:resource="http://www.ebu.ch/metadata/ontologies/ebucore/ebucore#fileSize"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/terms" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has terms</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/RightsBasis"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://www.loc.gov/premis/rdf/v3/note"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/validationRules" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has validation rules</rdfs:label>
|
||||||
|
<rdfs:domain rdf:resource="http://www.loc.gov/premis/rdf/v3/Signature"/>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://www.loc.gov/premis/rdf/v3/note"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/version" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">has version</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://purl.org/dc/terms/FileFormat"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/HardwareAgent"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/IntellectualEntity"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/SoftwareAgent"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:range rdf:resource="http://www.w3.org/2000/01/rdf-schema#Literal"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
<owl:DatatypeProperty rdf:about="http://www.loc.gov/premis/rdf/v3/startDate" xmlns="http://www.loc.gov/premis/rdf/v3/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:prov="http://www.w3.org/ns/prov#">
|
||||||
|
<rdfs:label xml:lang="en">start date</rdfs:label>
|
||||||
|
<rdfs:domain>
|
||||||
|
<owl:Class>
|
||||||
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/RightsStatus"/>
|
||||||
|
<owl:Class rdf:about="http://www.loc.gov/premis/rdf/v3/Rule"/>
|
||||||
|
</owl:unionOf>
|
||||||
|
</owl:Class>
|
||||||
|
</rdfs:domain>
|
||||||
|
<rdfs:subPropertyOf rdf:resource="http://purl.org/dc/terms/date"/>
|
||||||
|
<rdfs:isDefinedBy rdf:resource="http://www.loc.gov/premis/rdf/v3/"/>
|
||||||
|
</owl:DatatypeProperty>
|
||||||
|
</rdf:RDF>
|
||||||
+47
-102
@@ -22,7 +22,7 @@ use ldp::reqwest_middleware::{ClientBuilder, ClientWithMiddleware};
|
|||||||
use ldp::{RdfSource, RdfSourceUpdateResponse, ResourceRequestBuilder, SerializationOptions};
|
use ldp::{RdfSource, RdfSourceUpdateResponse, ResourceRequestBuilder, SerializationOptions};
|
||||||
use oxigraph::io::RdfFormat;
|
use oxigraph::io::RdfFormat;
|
||||||
use oxigraph::model::{BaseDirection, Graph, NamedNode, NamedOrBlankNode, NamedOrBlankNodeRef, Quad, Term, TermRef, Triple, TripleRef};
|
use oxigraph::model::{BaseDirection, Graph, NamedNode, NamedOrBlankNode, NamedOrBlankNodeRef, Quad, Term, TermRef, Triple, TripleRef};
|
||||||
use tracing::{error, trace};
|
use tracing::{debug, error, trace};
|
||||||
use gl_graph::class::Class;
|
use gl_graph::class::Class;
|
||||||
use gl_graph::ontology::{ConnectedOntology, OntologyBuilder, ReadOnlyEntity, ResourceDescription};
|
use gl_graph::ontology::{ConnectedOntology, OntologyBuilder, ReadOnlyEntity, ResourceDescription};
|
||||||
use gl_search::tantivy::schema::Value;
|
use gl_search::tantivy::schema::Value;
|
||||||
@@ -74,10 +74,9 @@ pub(crate) enum Message {
|
|||||||
NavigateBack,
|
NavigateBack,
|
||||||
NavigateForward,
|
NavigateForward,
|
||||||
ResetState,
|
ResetState,
|
||||||
SetShowReadOnly(bool),
|
|
||||||
SetShowInferredTriples(bool),
|
|
||||||
RunInference,
|
RunInference,
|
||||||
SetInferredTriples(Graph),
|
SetInferredTriples(Graph),
|
||||||
|
ShowInferencesWindow,
|
||||||
Event(Event),
|
Event(Event),
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -110,13 +109,12 @@ pub(crate) struct Publisher {
|
|||||||
abbreviated_datatypes: Vec<String>,
|
abbreviated_datatypes: Vec<String>,
|
||||||
resource_descriptions: HashMap<NamedNode, ResourceDescription>,
|
resource_descriptions: HashMap<NamedNode, ResourceDescription>,
|
||||||
window_id: window::Id,
|
window_id: window::Id,
|
||||||
|
inference_window_id: Option<window::Id>,
|
||||||
url_input: String,
|
url_input: String,
|
||||||
url_input_valid: bool,
|
url_input_valid: bool,
|
||||||
navigator: Navigator<Url>,
|
navigator: Navigator<Url>,
|
||||||
document: RdfSource<KeyedDataset<RowState>>,
|
document: RdfSource<KeyedDataset<RowState>>,
|
||||||
inferred_triples: Graph,
|
inferred_triples: Graph,
|
||||||
show_read_only: bool,
|
|
||||||
show_inferred_triples: bool,
|
|
||||||
hovered_row: Option<QuadKey>,
|
hovered_row: Option<QuadKey>,
|
||||||
search_state: Option<SearchState>,
|
search_state: Option<SearchState>,
|
||||||
index: SearchIndex,
|
index: SearchIndex,
|
||||||
@@ -168,13 +166,12 @@ impl Publisher {
|
|||||||
abbreviated_datatypes: Vec::new(),
|
abbreviated_datatypes: Vec::new(),
|
||||||
resource_descriptions: HashMap::new(),
|
resource_descriptions: HashMap::new(),
|
||||||
window_id: id,
|
window_id: id,
|
||||||
|
inference_window_id: None,
|
||||||
url_input: starting_url.to_string(),
|
url_input: starting_url.to_string(),
|
||||||
url_input_valid: true,
|
url_input_valid: true,
|
||||||
navigator,
|
navigator,
|
||||||
document,
|
document,
|
||||||
inferred_triples: Graph::new(),
|
inferred_triples: Graph::new(),
|
||||||
show_read_only: false,
|
|
||||||
show_inferred_triples: false,
|
|
||||||
hovered_row: None,
|
hovered_row: None,
|
||||||
search_state: None,
|
search_state: None,
|
||||||
index,
|
index,
|
||||||
@@ -574,13 +571,19 @@ impl Publisher {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
Message::NavigateToObject(key) => {
|
Message::NavigateToObject(key) => {
|
||||||
if let Some(quad) = self.document.dataset_mut().quads.get_mut(key)
|
if let Some(quad) = self.document.dataset_mut().quads.get_mut(key) {
|
||||||
&& let Term::NamedNode(node) = &quad.object {
|
let url = if let Term::NamedNode(node) = &quad.object {
|
||||||
let url = Url::parse(node.as_str()).expect("Invalid URL");
|
Url::parse(node.as_str()).ok()
|
||||||
|
} else if let Term::Literal(literal) = &quad.object {
|
||||||
|
Url::parse(literal.value()).ok()
|
||||||
|
} else { None };
|
||||||
|
|
||||||
|
if let Some(url) = url {
|
||||||
task = Task::done(Message::URLInputChanged(url.to_string()))
|
task = Task::done(Message::URLInputChanged(url.to_string()))
|
||||||
.chain(Task::done(Message::URLInputSubmitted));
|
.chain(Task::done(Message::URLInputSubmitted));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
Message::NavigateBack => {
|
Message::NavigateBack => {
|
||||||
let url = self.navigator.back().clone();
|
let url = self.navigator.back().clone();
|
||||||
task = Task::done(Message::URLInputChanged(url.to_string()))
|
task = Task::done(Message::URLInputChanged(url.to_string()))
|
||||||
@@ -591,12 +594,6 @@ impl Publisher {
|
|||||||
task = Task::done(Message::URLInputChanged(url.to_string()))
|
task = Task::done(Message::URLInputChanged(url.to_string()))
|
||||||
.chain(Task::done(Message::NavigateTo(url)));
|
.chain(Task::done(Message::NavigateTo(url)));
|
||||||
}
|
}
|
||||||
Message::SetShowReadOnly(value) => {
|
|
||||||
self.show_read_only = value;
|
|
||||||
}
|
|
||||||
Message::SetShowInferredTriples(value) => {
|
|
||||||
self.show_inferred_triples = value;
|
|
||||||
}
|
|
||||||
Message::RunInference => {
|
Message::RunInference => {
|
||||||
if let Some(ontology) = &mut self.ontology {
|
if let Some(ontology) = &mut self.ontology {
|
||||||
let graph = self.document
|
let graph = self.document
|
||||||
@@ -627,6 +624,15 @@ impl Publisher {
|
|||||||
|
|
||||||
self.inferred_triples = graph;
|
self.inferred_triples = graph;
|
||||||
}
|
}
|
||||||
|
Message::ShowInferencesWindow => {
|
||||||
|
if let Some(id) = self.inference_window_id {
|
||||||
|
task = window::gain_focus(id);
|
||||||
|
} else {
|
||||||
|
let (id, window_task) = window::open(Settings::default());
|
||||||
|
self.inference_window_id = Some(id);
|
||||||
|
task = window_task.map(|_| Message::None);
|
||||||
|
}
|
||||||
|
}
|
||||||
Message::Event(Event::KeyPressed {
|
Message::Event(Event::KeyPressed {
|
||||||
key: keyboard::Key::Named(key::Named::Tab),
|
key: keyboard::Key::Named(key::Named::Tab),
|
||||||
modifiers,
|
modifiers,
|
||||||
@@ -643,9 +649,15 @@ impl Publisher {
|
|||||||
task
|
task
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn title(&self, _window: window::Id) -> String {
|
pub(crate) fn title(&self, window: window::Id) -> String {
|
||||||
|
if let Some(inference_window_id) = self.inference_window_id && window == inference_window_id {
|
||||||
|
"Graph of Liberty Publisher - Inferences".to_string()
|
||||||
|
} else if let Some(search_state) = &self.search_state && window == search_state.window_id {
|
||||||
|
"Graph of Liberty Publisher - Search".to_string()
|
||||||
|
} else {
|
||||||
"Graph of Liberty Publisher".to_string()
|
"Graph of Liberty Publisher".to_string()
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub(crate) fn subscription(&self) -> Subscription<Message> {
|
pub(crate) fn subscription(&self) -> Subscription<Message> {
|
||||||
Subscription::batch([
|
Subscription::batch([
|
||||||
@@ -727,17 +739,10 @@ impl Publisher {
|
|||||||
})
|
})
|
||||||
.unwrap_or(Horizontal::Left);
|
.unwrap_or(Horizontal::Left);
|
||||||
|
|
||||||
// If the datatype is something, then it's not a named node, and we should use a plain
|
/* If the object is not a valid URL (either as a literal string or as a named node), then
|
||||||
// text_input as opposed to an iri_input.
|
* use a normal text input instead of an iri_input.
|
||||||
let object_input: Element<Message> = if term.datatype().is_some() {
|
*/
|
||||||
let base = text_input("Object", value.clone());
|
let object_input: Element<Message> = if term.is_named_node() || Url::parse(term.value()).is_ok() {
|
||||||
if state.read_only {
|
|
||||||
base.into()
|
|
||||||
} else {
|
|
||||||
base.on_input(move |value| Message::ObjectUpdated(key, value))
|
|
||||||
.into()
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
let base = iri_input(&self.curie_helper, "Object", Some(base), value.as_str())
|
let base = iri_input(&self.curie_helper, "Object", Some(base), value.as_str())
|
||||||
.on_shift_click(Message::NavigateToObject(key));
|
.on_shift_click(Message::NavigateToObject(key));
|
||||||
if state.read_only {
|
if state.read_only {
|
||||||
@@ -750,6 +755,14 @@ impl Publisher {
|
|||||||
)))
|
)))
|
||||||
.into()
|
.into()
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
let base = text_input("Object", value.clone());
|
||||||
|
if state.read_only {
|
||||||
|
base.into()
|
||||||
|
} else {
|
||||||
|
base.on_input(move |value| Message::ObjectUpdated(key, value))
|
||||||
|
.into()
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
let selected_datatype = term
|
let selected_datatype = term
|
||||||
@@ -888,6 +901,11 @@ impl Publisher {
|
|||||||
return self.view_search_window(search_state);
|
return self.view_search_window(search_state);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if let Some(inference_window_id) = self.inference_window_id && window == inference_window_id {
|
||||||
|
return crate::window::inferences::view_inference_window(&self.resource_descriptions, self.document.origin(), &self.curie_helper, &self.inferred_triples);
|
||||||
|
}
|
||||||
|
|
||||||
|
let show_inferences_button = button("\u{1f9e0}").on_press(Message::ShowInferencesWindow);
|
||||||
let back_button = button("\u{1f870}").on_press(Message::NavigateBack);
|
let back_button = button("\u{1f870}").on_press(Message::NavigateBack);
|
||||||
let forward_button = button("\u{1f872}").on_press(Message::NavigateForward);
|
let forward_button = button("\u{1f872}").on_press(Message::NavigateForward);
|
||||||
let new_document_button = button("New Document").on_press(Message::ShowNewDocumentButtons);
|
let new_document_button = button("New Document").on_press(Message::ShowNewDocumentButtons);
|
||||||
@@ -905,7 +923,6 @@ impl Publisher {
|
|||||||
rows = self.document
|
rows = self.document
|
||||||
.dataset()
|
.dataset()
|
||||||
.iter_both()
|
.iter_both()
|
||||||
.filter(|(_, _, state)| self.show_read_only || !state.read_only)
|
|
||||||
.map(|(key, quad, state)| self.view_row(key, quad, state))
|
.map(|(key, quad, state)| self.view_row(key, quad, state))
|
||||||
.collect();
|
.collect();
|
||||||
|
|
||||||
@@ -928,63 +945,6 @@ impl Publisher {
|
|||||||
column(rows).into()
|
column(rows).into()
|
||||||
};
|
};
|
||||||
|
|
||||||
let inference_table = if self.show_inferred_triples {
|
|
||||||
let subject_column = table::column("Subject", |triple: TripleRef| {
|
|
||||||
let curie = if let NamedOrBlankNodeRef::NamedNode(subject) = triple.subject {
|
|
||||||
Some(self.curie_helper
|
|
||||||
.abbreviate(Some(self.document.origin()), subject.as_str())
|
|
||||||
.unwrap_or_else(|| subject.as_str().to_string()))
|
|
||||||
} else {
|
|
||||||
None
|
|
||||||
};
|
|
||||||
|
|
||||||
curie.map(text)
|
|
||||||
});
|
|
||||||
|
|
||||||
let predicate_column = table::column("Predicate", |triple: TripleRef| {
|
|
||||||
let curie = self.curie_helper
|
|
||||||
.abbreviate(None, triple.predicate.as_str())
|
|
||||||
.unwrap_or_else(|| triple.predicate.as_str().to_string());
|
|
||||||
|
|
||||||
let label = self.resource_descriptions
|
|
||||||
.get(&triple.predicate.into_owned())
|
|
||||||
.and_then(|description| description.label.clone());
|
|
||||||
|
|
||||||
if let Some(label) = label {
|
|
||||||
text(format!("{curie} ({label})"))
|
|
||||||
} else {
|
|
||||||
text(curie)
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
let object_column = table::column("Object", |triple: TripleRef| {
|
|
||||||
match triple.object {
|
|
||||||
TermRef::NamedNode(node) => {
|
|
||||||
let curie = self.curie_helper
|
|
||||||
.abbreviate(Some(self.document.origin()), node.as_str())
|
|
||||||
.unwrap_or_else(|| node.as_str().to_string());
|
|
||||||
|
|
||||||
let label = self.resource_descriptions
|
|
||||||
.get(&node.into_owned())
|
|
||||||
.and_then(|description| description.label.clone());
|
|
||||||
|
|
||||||
if let Some(label) = label {
|
|
||||||
text(format!("{curie} ({label})"))
|
|
||||||
} else {
|
|
||||||
text(curie)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
_ => text(triple.object.to_string()),
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Some(table(
|
|
||||||
[subject_column, predicate_column, object_column],
|
|
||||||
self.inferred_triples.iter(),
|
|
||||||
))
|
|
||||||
} else {
|
|
||||||
None
|
|
||||||
};
|
|
||||||
|
|
||||||
let save_button_base = button(text("\u{1f4be}"));
|
let save_button_base = button(text("\u{1f4be}"));
|
||||||
let save_button = if self.modified {
|
let save_button = if self.modified {
|
||||||
save_button_base.on_press(Message::SaveGraph(false))
|
save_button_base.on_press(Message::SaveGraph(false))
|
||||||
@@ -992,22 +952,9 @@ impl Publisher {
|
|||||||
save_button_base
|
save_button_base
|
||||||
};
|
};
|
||||||
|
|
||||||
let inferred_triples_toggle =
|
|
||||||
toggler(self.show_inferred_triples).on_toggle(Message::SetShowInferredTriples);
|
|
||||||
|
|
||||||
let read_only_toggle = toggler(self.show_read_only).on_toggle(Message::SetShowReadOnly);
|
|
||||||
|
|
||||||
let footer = row![
|
|
||||||
space::horizontal(),
|
|
||||||
text("Show Inferred Triples"),
|
|
||||||
inferred_triples_toggle,
|
|
||||||
space::horizontal(),
|
|
||||||
text("Show Read Only Triples"),
|
|
||||||
read_only_toggle
|
|
||||||
];
|
|
||||||
|
|
||||||
let content = navigation_area(column![
|
let content = navigation_area(column![
|
||||||
row![
|
row![
|
||||||
|
show_inferences_button,
|
||||||
new_document_button,
|
new_document_button,
|
||||||
add_row_button,
|
add_row_button,
|
||||||
back_button,
|
back_button,
|
||||||
@@ -1015,9 +962,7 @@ impl Publisher {
|
|||||||
address_input,
|
address_input,
|
||||||
save_button,
|
save_button,
|
||||||
],
|
],
|
||||||
footer,
|
|
||||||
scrollable(body),
|
scrollable(body),
|
||||||
scrollable(inference_table),
|
|
||||||
])
|
])
|
||||||
.on_back_click(Message::NavigateBack)
|
.on_back_click(Message::NavigateBack)
|
||||||
.on_forward_click(Message::NavigateForward);
|
.on_forward_click(Message::NavigateForward);
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ mod rdf;
|
|||||||
mod theme;
|
mod theme;
|
||||||
mod widget;
|
mod widget;
|
||||||
mod tasks;
|
mod tasks;
|
||||||
|
pub mod window;
|
||||||
|
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use crate::app::Publisher;
|
use crate::app::Publisher;
|
||||||
|
|||||||
@@ -0,0 +1,106 @@
|
|||||||
|
use std::collections::{BTreeMap, BTreeSet, HashMap};
|
||||||
|
use iced::{font, Element, Font};
|
||||||
|
use iced::widget::{column, scrollable, span, table, text};
|
||||||
|
use oxigraph::model::{Graph, NamedNode, NamedNodeRef, NamedOrBlankNodeRef, TermRef, TripleRef};
|
||||||
|
use url::Url;
|
||||||
|
use gl_graph::{vocab, CurieHelper};
|
||||||
|
use gl_graph::ontology::ResourceDescription;
|
||||||
|
use crate::app::Message;
|
||||||
|
|
||||||
|
pub(crate) fn view_inference_window<'a>(resource_descriptions: &HashMap<NamedNode, ResourceDescription>, origin: &Url, curie_helper: &CurieHelper, inferences: &'a Graph) -> Element<'a, Message> {
|
||||||
|
let bold = |t| text(t).font(Font { weight: font::Weight::Bold, ..Font::default() });
|
||||||
|
|
||||||
|
let inferred_class_subject_column = table::column(bold("Subject"), |(subject, _): (NamedNodeRef, _)| {
|
||||||
|
text(curie_helper
|
||||||
|
.abbreviate(Some(origin), subject.as_str())
|
||||||
|
.unwrap_or_else(|| subject.as_str().to_string()))
|
||||||
|
});
|
||||||
|
|
||||||
|
let inferred_class_class_column = table::column(bold("Classes"), |(_, classes): (_, BTreeSet<NamedNodeRef>)| {
|
||||||
|
let textual_classes = classes.iter()
|
||||||
|
.map(|class| {
|
||||||
|
let curie = curie_helper
|
||||||
|
.abbreviate(Some(origin), class.as_str())
|
||||||
|
.unwrap_or_else(|| class.as_str().to_string());
|
||||||
|
|
||||||
|
let label = resource_descriptions
|
||||||
|
.get(&class.into_owned())
|
||||||
|
.and_then(|description| description.label.clone());
|
||||||
|
|
||||||
|
if let Some(label) = label {
|
||||||
|
format!("{curie} ({label})")
|
||||||
|
} else {
|
||||||
|
curie
|
||||||
|
}
|
||||||
|
}).collect::<Vec<_>>()
|
||||||
|
.join("\n");
|
||||||
|
|
||||||
|
text(textual_classes)
|
||||||
|
});
|
||||||
|
|
||||||
|
let mut inferred_classes: BTreeMap<NamedNodeRef, BTreeSet<NamedNodeRef>> = BTreeMap::new();
|
||||||
|
for triple in inferences.triples_for_predicate(vocab::rdf::TYPE) {
|
||||||
|
if let NamedOrBlankNodeRef::NamedNode(subject) = triple.subject && let TermRef::NamedNode(class) = triple.object {
|
||||||
|
inferred_classes.entry(subject)
|
||||||
|
.and_modify(|classes| { classes.insert(class); })
|
||||||
|
.or_insert(BTreeSet::from_iter([class]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let inferred_class_table = table([inferred_class_subject_column, inferred_class_class_column], inferred_classes);
|
||||||
|
|
||||||
|
let subject_column = table::column(bold("Subject"), |triple: TripleRef| {
|
||||||
|
let curie = if let NamedOrBlankNodeRef::NamedNode(subject) = triple.subject {
|
||||||
|
Some(curie_helper
|
||||||
|
.abbreviate(Some(origin), subject.as_str())
|
||||||
|
.unwrap_or_else(|| subject.as_str().to_string()))
|
||||||
|
} else {
|
||||||
|
None
|
||||||
|
};
|
||||||
|
|
||||||
|
curie.map(text)
|
||||||
|
});
|
||||||
|
|
||||||
|
let predicate_column = table::column(bold("Predicate"), |triple: TripleRef| {
|
||||||
|
let curie = curie_helper
|
||||||
|
.abbreviate(None, triple.predicate.as_str())
|
||||||
|
.unwrap_or_else(|| triple.predicate.as_str().to_string());
|
||||||
|
|
||||||
|
let label = resource_descriptions
|
||||||
|
.get(&triple.predicate.into_owned())
|
||||||
|
.and_then(|description| description.label.clone());
|
||||||
|
|
||||||
|
if let Some(label) = label {
|
||||||
|
text(format!("{curie} ({label})"))
|
||||||
|
} else {
|
||||||
|
text(curie)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
let object_column = table::column(bold("Object"), |triple: TripleRef| {
|
||||||
|
match triple.object {
|
||||||
|
TermRef::NamedNode(node) => {
|
||||||
|
let curie = curie_helper
|
||||||
|
.abbreviate(Some(origin), node.as_str())
|
||||||
|
.unwrap_or_else(|| node.as_str().to_string());
|
||||||
|
|
||||||
|
let label = resource_descriptions
|
||||||
|
.get(&node.into_owned())
|
||||||
|
.and_then(|description| description.label.clone());
|
||||||
|
|
||||||
|
if let Some(label) = label {
|
||||||
|
text(format!("{curie} ({label})"))
|
||||||
|
} else {
|
||||||
|
text(curie)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_ => text(triple.object.to_string()),
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
let all_inferences_table = table([subject_column, predicate_column, object_column], inferences);
|
||||||
|
|
||||||
|
column![
|
||||||
|
inferred_class_table,
|
||||||
|
scrollable(all_inferences_table),
|
||||||
|
].into()
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
pub(crate) mod inferences;
|
||||||
Reference in New Issue
Block a user