@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix databus: <https://dataid.dbpedia.org/databus#> .
@prefix dataid: <http://dataid.dbpedia.org/ns/core#> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix sh: <http://www.w3.org/ns/shacl#> .

<https://dataid.dbpedia.org/databus#>
    dc:contributor "Jan Forberg", "Sebastian Hellmann" ;
    dc:creator "Milan Dojchinovski" ;
    dc:description """
    The Databus Ontology provides description of classes and properties used to model information in the DBpedia Databus platform.
    The Databus Ontology is aligned and meant to be used in combination with the DataID ontology.

    * Databus Model Overview *
    The Databus ontology implements a version-centric model. 
    The Version is the concept which describes a particular version of an Artifact.
    Each Artifact belongs to a particular group of artifacts.
    The Version is associated with one or more distributions.
    Each Distribution represents exactly one file, modeled using the Part concept.
    Each Distribution (i.e Part) then adds to the dataset (i.e. Version), which is the sum of information.

    * Feedback *
    If you'd like to leave feedback, please open an issue on GitHub (https://github.com/dbpedia/databus/issues)."""@en ;
    dc:publisher "DBpedia Association, The Institute for Applied Informatics (InfAI)"@en ;
    dc:rights "This ontology is licensed under Apache 2.0 (http://www.apache.org/licenses/LICENSE-2.0) and CC-BY (http://creativecommons.org/licenses/by/3.0/)"@en ;
    dcterms:license <http://creativecommons.org/licenses/by/3.0/>, <http://www.apache.org/licenses/LICENSE-2.0> ;
    dcterms:title "Databus Ontology"@en ;
    <http://purl.org/vocab/vann/changes> <https://github.com/dbpedia/DataId-Ontology/commits/master> ;
    <http://purl.org/vocab/vann/preferredNamespacePrefix> "databus" ;
    <http://purl.org/vocab/vann/preferredNamespaceUri> "https://dataid.dbpedia.org/databus#" ;
    a owl:Ontology ;
    rdfs:label "Databus Ontology"@en ;
    owl:versionInfo "Versioning done on resource level."@en ;
    sh:shapesGraph <https://raw.githubusercontent.com/dbpedia/databus/master/model/generated/shacl/artifact.shacl>, <https://raw.githubusercontent.com/dbpedia/databus/master/model/generated/shacl/dataid.shacl>, <https://raw.githubusercontent.com/dbpedia/databus/master/model/generated/shacl/group.shacl>, <https://raw.githubusercontent.com/dbpedia/databus/master/model/generated/shacl/version.shacl> .

databus:Artifact
    a owl:Class ;
    rdfs:comment "A Databus Artifact represents a logical dataset in the DBpedia Databus platform, akin to the role that artifacts play in Maven. However, instead of software libraries, it encompasses datasets. Each artifact has an abstract identity, meaning it maintains a stable reference across different versions and variants of the dataset. The abstract identity facilitates tracking and retrieval of various versions of the dataset."@en ;
    rdfs:isDefinedBy <http://dataid.dbpedia.org/databus#> ;
    rdfs:label "Databus Artifact"@en ;
    rdfs:subClassOf prov:Entity .

databus:Collection
    a owl:Class ;
    rdfs:comment "A Databus Collection aggregates and logically groups a set of datasets."@en ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Collection"@en ;
    rdfs:subClassOf prov:Entity .

databus:Databus
    a owl:Class ;
    rdfs:comment "Defines an instance of a Databus platform."@en ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Databus"@en ;
    rdfs:subClassOf prov:Entity .

databus:DatabusTractateV1
    a owl:Class ;
    rdfs:comment "Defines the proof method for the dataset."@en ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "DatabusTractateV1"@en ;
    rdfs:subClassOf prov:Entity .

databus:Group
    a owl:Class ;
    rdfs:comment "A Databus Group is a container owned by a Databus user that bundles Databus Artifacts intended to form a meaningful unit."@en ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Databus Group"@en ;
    rdfs:subClassOf prov:Entity .

databus:Part
    a owl:Class ;
    rdfs:comment """A Part represents a single file (i.e. distribution) which is referenced from a particular Version.
    Typically a dataset consists of several files, e.g. same (or similar) files but in multiple serializations that may differ in various ways, including natural language, media-type or format, schematic organization, temporal and spatial resolution, level of detail. Artifacts are packaged compositionally, i.e. each Part adds to the dataset, which is the sum of information."""@en ;
    rdfs:isDefinedBy <http://dataid.dbpedia.org/databus#> ;
    rdfs:label "Part"@en ;
    rdfs:subClassOf dcat:Distribution .

databus:Version
    a owl:Class ;
    rdfs:comment "Dataset Version"@en ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Version"@en ;
    rdfs:subClassOf dataid:Dataset, dcat:Dataset .

databus:account
    a owl:ObjectProperty ;
    rdfs:comment "Relates a dataset to an account on the Databus platform."@en ;
    rdfs:domain dataid:Dataset ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Account"@en ;
    rdfs:range foaf:OnlineAccount .

databus:artifact
    a rdf:ObjectProperty ;
    rdfs:comment "Specifies an artifact associated with a dataset in the DataID vocabulary."@en ;
    rdfs:domain databus:Version ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "artifact"@en ;
    rdfs:range databus:Artifact .

databus:attribution
    a owl:DatatypeProperty ;
    rdfs:comment "Attribution for a specific Version."@en ;
    rdfs:domain databus:Version ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "attribution"@en ;
    rdfs:range xsd:string .

databus:collectionContent
    a owl:DatatypeProperty ;
    rdfs:comment "The content of a Databus Collection in JSON format. Note that JSON-LD was considered and declined in the code."@en ;
    rdfs:domain databus:Collection ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "content"@en .

databus:compression
    a owl:DatatypeProperty ;
    rdfs:comment "Specifies the compression algorithm used for the file or none, if uncompressed."@en ;
    rdfs:domain dcat:Distribution, databus:Part ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "compression"@en ;
    rdfs:range xsd:string .

databus:contentVariant
    a owl:DatatypeProperty ;
    rdfs:comment "Specifies the variant of the content of a file."@en ;
    rdfs:domain databus:Part ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Content Variant"@en ;
    rdfs:range xsd:string .

databus:file
    a owl:ObjectProperty ;
    rdfs:comment "The file associated with a data resource."@en ;
    rdfs:domain databus:Part ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "file"@en ;
    rdfs:range dcat:Distribution .

databus:formatExtension
    a owl:DatatypeProperty ;
    rdfs:comment "The file format extension of a data file."@en ;
    rdfs:domain databus:Part ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "Format Extension"@en ;
    rdfs:range xsd:String .

databus:group
    a owl:ObjectProperty ;
    rdfs:comment "Refers to a group or collection of resources."@en ;
    rdfs:domain databus:Version ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "group"@en ;
    rdfs:range databus:Group .

databus:sha256sum
    a owl:DatatypeProperty ;
    rdfs:comment "The SHA256 hash sum of a file content."@en ;
    rdfs:domain databus:Part ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "SHA256 Sum"@en ;
    rdfs:range xsd:string .

databus:version
    a owl:ObjectProperty ;
    rdfs:comment "Indicates the version of the resource."@en ;
    rdfs:domain dataid:Dataset ;
    rdfs:isDefinedBy <https://dataid.dbpedia.org/databus#> ;
    rdfs:label "version"@en ;
    rdfs:range databus:Version .

