@prefix : <https://w3id.org/riverbench/schema/metadata#> .
@prefix rb: <https://w3id.org/riverbench/schema/metadata#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix vann: <http://purl.org/vocab/vann/> .
@base <https://w3id.org/riverbench/schema/metadata> .

<https://w3id.org/riverbench/schema/metadata> rdf:type owl:Ontology ;
                                               owl:versionIRI <https://w3id.org/riverbench/schema/metadata/dev> ;
                                               <http://purl.org/dc/terms/creator> [ foaf:homepage <https://github.com/Ostrzyciel> ,
                                                                                                  <https://orcid.org/0000-0002-2543-9461> ;
                                                                                    foaf:name "Piotr Sowiński" ;
                                                                                    foaf:nick "Ostrzyciel"
                                                                                  ] ;
                                               <http://purl.org/dc/terms/license> <https://spdx.org/licenses/CC-BY-4.0> ;
                                               vann:preferredNamespacePrefix "rb" ;
                                               vann:preferredNamespaceUri "https://w3id.org/riverbench/schema/metadata" ;
                                               rdfs:comment "Ontology for describing datasets and profiles in the RiverBench benchmark suite."@en ;
                                               rdfs:label "RiverBench metadata ontology"@en .

#################################################################
#    Annotation properties
#################################################################

###  http://purl.org/dc/terms/created
<http://purl.org/dc/terms/created> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/creator
<http://purl.org/dc/terms/creator> rdf:type owl:AnnotationProperty .


###  http://purl.org/dc/terms/license
<http://purl.org/dc/terms/license> rdf:type owl:AnnotationProperty .


###  http://purl.org/vocab/vann/preferredNamespacePrefix
vann:preferredNamespacePrefix rdf:type owl:AnnotationProperty .


###  http://purl.org/vocab/vann/preferredNamespaceUri
vann:preferredNamespaceUri rdf:type owl:AnnotationProperty .


###  http://xmlns.com/foaf/0.1/homepage
foaf:homepage rdf:type owl:AnnotationProperty .


###  http://xmlns.com/foaf/0.1/name
foaf:name rdf:type owl:AnnotationProperty .


###  http://xmlns.com/foaf/0.1/nick
foaf:nick rdf:type owl:AnnotationProperty .


#################################################################
#    Object Properties
#################################################################

###  http://www.w3.org/ns/dcat#resource
dcat:resource rdf:type owl:ObjectProperty .


###  http://www.w3.org/ns/dcat#seriesMember
dcat:seriesMember rdf:type owl:ObjectProperty ;
                  rdfs:comment "Indicates which datasets are included in the profile"@en ;
                  rdfs:label "Includes dataset"@en .


###  https://w3id.org/riverbench/schema/metadata#hasDistributionType
rb:hasDistributionType rdf:type owl:ObjectProperty ;
                       rdfs:range rb:DistributionType ;
                       rdfs:comment "Indicates the type of RiverBench dataset distribution"@en ;
                       rdfs:label "Has distribution type"@en .


###  https://w3id.org/riverbench/schema/metadata#hasProfile
rb:hasProfile rdf:type owl:ObjectProperty ;
              rdfs:subPropertyOf dcat:resource ;
              rdfs:domain rb:RiverBench ;
              rdfs:range rb:Profile ;
              rdfs:comment "Indicates benchmark profiles that belong to this benchmark suite."@en ;
              rdfs:label "Has benchmark profile"@en .


###  https://w3id.org/riverbench/schema/metadata#hasRestriction
rb:hasRestriction rdf:type owl:ObjectProperty ;
                  rdfs:domain rb:Profile ;
                  rdfs:range rb:ProfileRestriction ;
                  rdfs:comment "Has profile restriction. The restrictions are joined with the AND operator."@en ;
                  rdfs:label "Has restriction"@en .


###  https://w3id.org/riverbench/schema/metadata#hasStatistics
rb:hasStatistics rdf:type owl:ObjectProperty ;
                 rdfs:domain rb:Distribution ;
                 rdfs:range rb:Statistics ;
                 rdfs:comment "Has a dataset statistics object"@en ;
                 rdfs:label "Has statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#hasStreamElementSplit
rb:hasStreamElementSplit rdf:type owl:ObjectProperty ;
                         rdfs:subPropertyOf owl:topObjectProperty ;
                         rdfs:domain rb:Dataset ;
                         rdfs:range rb:StreamElementSplit ;
                         rdfs:label "Has stream element split"@en .


###  https://w3id.org/riverbench/schema/metadata#hasStreamElementType
rb:hasStreamElementType rdf:type owl:ObjectProperty ;
                        rdfs:range rb:StreamElementType ;
                        rdfs:comment "Indicates the type of contents of each stream element"@en ;
                        rdfs:label "Has stream element type"@en .


###  https://w3id.org/riverbench/schema/metadata#hasTemporalProperty
rb:hasTemporalProperty rdf:type owl:ObjectProperty ;
                       rdfs:domain rb:TimeStreamElementSplit ;
                       rdfs:comment "The IRI of the property that is used in the stream to denote time at which the event occured."@en ;
                       rdfs:label "Has temporal property"@en .


###  https://w3id.org/riverbench/schema/metadata#isSubsetOfProfile
rb:isSubsetOfProfile rdf:type owl:ObjectProperty ;
                     owl:inverseOf rb:isSupersetOfProfile ;
                     rdf:type owl:TransitiveProperty ;
                     rdfs:domain rb:Profile ;
                     rdfs:range rb:Profile ;
                     rdfs:comment "Indicates that this profile's datasets are all in the other profile"@en ;
                     rdfs:label "Is subset of profile"@en .


###  https://w3id.org/riverbench/schema/metadata#isSupersetOfProfile
rb:isSupersetOfProfile rdf:type owl:ObjectProperty ,
                                owl:TransitiveProperty ;
                       rdfs:domain rb:Profile ;
                       rdfs:range rb:Profile ;
                       rdfs:comment "Indicates that this profile contains all datasets of the other profile"@en ;
                       rdfs:label "Is superset of profile"@en .


###  https://w3id.org/riverbench/schema/metadata#usesOntology
rb:usesOntology rdf:type owl:ObjectProperty ;
                rdfs:domain rb:Dataset ;
                rdfs:comment "Indicates that the dataset uses an ontology. The object must be a resource, but it doesn't neccesarily have to be an OWL ontology."@en ;
                rdfs:label "Uses ontology"@en .


#################################################################
#    Data properties
#################################################################

###  https://w3id.org/riverbench/schema/metadata#conformanceProperty
rb:conformanceProperty rdf:type owl:DatatypeProperty ;
                       rdfs:subPropertyOf owl:topDataProperty ;
                       rdfs:range xsd:boolean ;
                       rdfs:comment "Base property for all conformance data properties"@en ;
                       rdfs:label "Conformance property"@en .


###  https://w3id.org/riverbench/schema/metadata#conformsToRdf11
rb:conformsToRdf11 rdf:type owl:DatatypeProperty ;
                   rdfs:subPropertyOf rb:conformanceProperty ;
                   rdfs:range xsd:boolean ;
                   rdfs:comment "Whether the dataset is RDF 1.1-compliant, i.e., does not use any non-standard features, like generalized triples."@en ;
                   rdfs:label "Conforms to W3C RDF 1.1 specification"@en ;
                   rdfs:seeAlso <https://www.w3.org/TR/rdf11-concepts/> .


###  https://w3id.org/riverbench/schema/metadata#conformsToRdfStarDraft_20211217
rb:conformsToRdfStarDraft_20211217 rdf:type owl:DatatypeProperty ;
                                   rdfs:subPropertyOf rb:conformanceProperty ;
                                   rdfs:range xsd:boolean ;
                                   rdfs:comment "Whether the dataset is RDF-star compliant, i.e., does not use any non-standard features. Note that all standard RDF 1.1 datasets also qualify, as RDF-star is a superset of RDF 1.1."@en ;
                                   rdfs:label "Conforms to W3C RDF-star draft specification as of December 17, 2021"@en ;
                                   rdfs:seeAlso <https://www.w3.org/2021/12/rdf-star.html> .


###  https://w3id.org/riverbench/schema/metadata#hasFileName
rb:hasFileName rdf:type owl:DatatypeProperty ;
               rdfs:domain rb:Distribution ;
               rdfs:range xsd:string ;
               rdfs:comment "Canonical file name of this distribution"@en ;
               rdfs:label "Has file name"@en .


###  https://w3id.org/riverbench/schema/metadata#hasStreamElementCount
rb:hasStreamElementCount rdf:type owl:DatatypeProperty ;
                         rdfs:subPropertyOf owl:topDataProperty ;
                         rdfs:comment "Number of elements in the stream"@en ;
                         rdfs:label "Has stream element count"@en .


###  https://w3id.org/riverbench/schema/metadata#hasVersion
rb:hasVersion rdf:type owl:DatatypeProperty ;
              rdfs:range xsd:string ;
              rdfs:comment "Version tag of an artifact"@en ;
              rdfs:label "Has version"@en .


###  https://w3id.org/riverbench/schema/metadata#maximum
rb:maximum rdf:type owl:DatatypeProperty ;
           rdfs:subPropertyOf rb:statisticalProperty ;
           rdfs:range xsd:decimal ;
           rdfs:comment "Maximum value of a distribution"@en ;
           rdfs:label "Maximum"@en .


###  https://w3id.org/riverbench/schema/metadata#mean
rb:mean rdf:type owl:DatatypeProperty ;
        rdfs:subPropertyOf rb:statisticalProperty ;
        rdfs:range xsd:decimal ;
        rdfs:comment "Arithmetic mean of a distribution"@en ;
        rdfs:label "Mean"@en .


###  https://w3id.org/riverbench/schema/metadata#minimum
rb:minimum rdf:type owl:DatatypeProperty ;
           rdfs:subPropertyOf rb:statisticalProperty ;
           rdfs:range xsd:decimal ;
           rdfs:comment "Minimum value of a distribution"@en ;
           rdfs:label "Minimum"@en .


###  https://w3id.org/riverbench/schema/metadata#standardDeviation
rb:standardDeviation rdf:type owl:DatatypeProperty ;
                     rdfs:subPropertyOf rb:statisticalProperty ;
                     rdfs:range xsd:decimal ;
                     rdfs:comment "Standard deviation of a distribution"@en ;
                     rdfs:label "Standard deviation"@en .


###  https://w3id.org/riverbench/schema/metadata#statisticalProperty
rb:statisticalProperty rdf:type owl:DatatypeProperty ;
                       rdfs:domain rb:Statistics ;
                       rdfs:label "Statistical property"@en .


###  https://w3id.org/riverbench/schema/metadata#sum
rb:sum rdf:type owl:DatatypeProperty ;
       rdfs:subPropertyOf rb:statisticalProperty ;
       rdfs:range xsd:decimal ;
       rdfs:comment "Sum of all values in the distribution. In statistics about counts, this corresponds to the total number of given elements in the dataset."@en ;
       rdfs:label "Sum"@en .


###  https://w3id.org/riverbench/schema/metadata#uniqueCount
rb:uniqueCount rdf:type owl:DatatypeProperty ;
               rdfs:subPropertyOf rb:statisticalProperty ;
               rdfs:range xsd:integer ;
               rdfs:comment "Only used for count statistics. Indicates how many unique elements are in the entire dataset. The value is estimated with a Bloom filter and is accurate to ~1%."@en ;
               rdfs:label "Unique count (estimated)"@en .


###  https://w3id.org/riverbench/schema/metadata#usesGeneralizedRdfDatasets
rb:usesGeneralizedRdfDatasets rdf:type owl:DatatypeProperty ;
                              rdfs:subPropertyOf rb:conformanceProperty ;
                              rdfs:range xsd:boolean ;
                              rdfs:comment "Whether the dataset uses the non-standard generalized datasets feature. A \"dataset\" here is used in the same meaning as in the RDF 1.1 specification."@en ;
                              rdfs:label "Uses generalized RDF datasets"@en ;
                              rdfs:seeAlso <https://www.w3.org/TR/rdf11-concepts/#section-generalized-rdf> .


###  https://w3id.org/riverbench/schema/metadata#usesGeneralizedTriples
rb:usesGeneralizedTriples rdf:type owl:DatatypeProperty ;
                          rdfs:subPropertyOf rb:conformanceProperty ;
                          rdfs:range xsd:boolean ;
                          rdfs:comment "Whether the dataset uses the non-standard generalized triples feature"@en ;
                          rdfs:label "Uses generalized triples"@en ;
                          rdfs:seeAlso "https://www.w3.org/TR/rdf11-concepts/#section-generalized-rdf"@en .


###  https://w3id.org/riverbench/schema/metadata#usesRdfStar
rb:usesRdfStar rdf:type owl:DatatypeProperty ;
               rdfs:subPropertyOf rb:conformanceProperty ;
               rdfs:range xsd:boolean ;
               rdfs:comment "Whether the dataset uses RDF-star features."@en ;
               rdfs:label "Uses RDF-star"@en ;
               rdfs:seeAlso "https://www.w3.org/2021/12/rdf-star.html"@en .


#################################################################
#    Classes
#################################################################

###  http://www.w3.org/ns/dcat#Catalog
dcat:Catalog rdf:type owl:Class .


###  http://www.w3.org/ns/dcat#Dataset
dcat:Dataset rdf:type owl:Class .


###  http://www.w3.org/ns/dcat#DatasetSeries
dcat:DatasetSeries rdf:type owl:Class ;
                   rdfs:label "Dataset series"@en .


###  http://www.w3.org/ns/dcat#Distribution
dcat:Distribution rdf:type owl:Class .


###  https://w3id.org/riverbench/schema/metadata#BlankNodeCountStatistics
rb:BlankNodeCountStatistics rdf:type owl:Class ;
                            rdfs:subClassOf rb:Statistics ;
                            rdfs:comment "Statistics about the number of blank nodes in the dataset."@en ;
                            rdfs:label "Blank node count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#Dataset
rb:Dataset rdf:type owl:Class ;
           rdfs:subClassOf dcat:Dataset ;
           rdfs:comment "A dataset in the RiverBench benchmark suite"@en ;
           rdfs:label "RiverBench dataset"@en .


###  https://w3id.org/riverbench/schema/metadata#DatatypeLiteralCountStatistics
rb:DatatypeLiteralCountStatistics rdf:type owl:Class ;
                                  rdfs:subClassOf rb:Statistics ;
                                  rdfs:comment "Statistics about the number of datatype literals (NOT of type rdf:langString) in the dataset."@en ;
                                  rdfs:label "Datatype literal count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#Distribution
rb:Distribution rdf:type owl:Class ;
                rdfs:subClassOf dcat:Distribution ;
                rdfs:comment "A distribution of a dataset in the RiverBench benchmark suite."@en ;
                rdfs:label "RiverBench dataset distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#DistributionType
rb:DistributionType rdf:type owl:Class ;
                    rdfs:comment "Type of dataset distribution, indicating the corresponding streaming task formulation."@en ;
                    rdfs:label "RiverBench distribution type"@en .


###  https://w3id.org/riverbench/schema/metadata#GraphCountStatistics
rb:GraphCountStatistics rdf:type owl:Class ;
                        rdfs:subClassOf rb:Statistics ;
                        rdfs:comment "Statistics about the number of RDF graphs in the dataset, including the default graph."@en ;
                        rdfs:label "Graph count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#IriCountStatistics
rb:IriCountStatistics rdf:type owl:Class ;
                      rdfs:subClassOf rb:Statistics ;
                      rdfs:comment "Statistics about the number of IRIs in the dataset."@en ;
                      rdfs:label "IRI count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#LanguageLiteralCountStatistics
rb:LanguageLiteralCountStatistics rdf:type owl:Class ;
                                  rdfs:subClassOf rb:Statistics ;
                                  rdfs:comment "Statistics about the number of language literals in the dataset."@en ;
                                  rdfs:label "Language string count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#LiteralCountStatistics
rb:LiteralCountStatistics rdf:type owl:Class ;
                          rdfs:subClassOf rb:Statistics ;
                          rdfs:comment "Statistics about the number of literals in the dataset."@en ;
                          rdfs:label "Literal count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#ObjectCountStatistics
rb:ObjectCountStatistics rdf:type owl:Class ;
                         rdfs:subClassOf rb:Statistics ;
                         rdfs:comment "Statistics about the number of objects in the dataset."@en ;
                         rdfs:label "Object count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#PredicateCountStatistics
rb:PredicateCountStatistics rdf:type owl:Class ;
                            rdfs:subClassOf rb:Statistics ;
                            rdfs:comment "Statistics about the number of predicates in the dataset."@en ;
                            rdfs:label "Predicate count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#Profile
rb:Profile rdf:type owl:Class ;
           rdfs:subClassOf dcat:DatasetSeries ;
           rdfs:comment "Benchmark profile grouping several datasets in RiverBench"@en ;
           rdfs:label "Benchmark profile"@en .


###  https://w3id.org/riverbench/schema/metadata#ProfileRestriction
rb:ProfileRestriction rdf:type owl:Class ;
                      rdfs:comment "Resource with properties that specify conditions for datasets to be included in the profile. The conditions are joined with the OR operator."@en ;
                      rdfs:label "Profile restriction"@en .


###  https://w3id.org/riverbench/schema/metadata#QuotedTripleCountStatistics
rb:QuotedTripleCountStatistics rdf:type owl:Class ;
                               rdfs:subClassOf rb:Statistics ;
                               rdfs:comment "Statistics about the number of quoted triples in the dataset."@en ;
                               rdfs:label "Quoted triple count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#RiverBench
rb:RiverBench rdf:type owl:Class ;
              rdfs:subClassOf dcat:Catalog ;
              rdfs:comment "RiverBench – RDF streaming benchmark suite"@en ;
              rdfs:label "RiverBench suite"@en .


###  https://w3id.org/riverbench/schema/metadata#SimpleLiteralCountStatistics
rb:SimpleLiteralCountStatistics rdf:type owl:Class ;
                                rdfs:subClassOf rb:Statistics ;
                                rdfs:comment "Statistics about the number of simple literals (of type xsd:string) in the dataset."@en ;
                                rdfs:label "Simple literal count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#StatementCountStatistics
rb:StatementCountStatistics rdf:type owl:Class ;
                            rdfs:subClassOf rb:Statistics ;
                            rdfs:comment "Statistics about the number of RDF statements in the dataset."@en ;
                            rdfs:label "Statement count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#StatementCountStreamElementSplit
rb:StatementCountStreamElementSplit rdf:type owl:Class ;
                                    rdfs:subClassOf rb:StreamElementSplit ;
                                    rdfs:label "Stream elements split by statement count"@en .


###  https://w3id.org/riverbench/schema/metadata#Statistics
rb:Statistics rdf:type owl:Class ;
              rdfs:comment "Class for statistics objects about distributions"@en ;
              rdfs:label "Statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#StreamElementSplit
rb:StreamElementSplit rdf:type owl:Class ;
                      rdfs:comment "Describes how was the stream split into individual elements."@en ;
                      rdfs:label "Stream element split"@en .


###  https://w3id.org/riverbench/schema/metadata#StreamElementType
rb:StreamElementType rdf:type owl:Class ;
                     rdfs:comment "Indicates the type of the contents of stream elements"@en ;
                     rdfs:label "Stream element type"@en .


###  https://w3id.org/riverbench/schema/metadata#SubjectCountStatistics
rb:SubjectCountStatistics rdf:type owl:Class ;
                          rdfs:subClassOf rb:Statistics ;
                          rdfs:comment "Statistics about the number of subjects in the dataset."@en ;
                          rdfs:label "Subject count statistics"@en .


###  https://w3id.org/riverbench/schema/metadata#TimeStreamElementSplit
rb:TimeStreamElementSplit rdf:type owl:Class ;
                          rdfs:subClassOf rb:StreamElementSplit ;
                          rdfs:label "Stream elements split by time"@en .


###  https://w3id.org/riverbench/schema/metadata#TopicStreamElementSplit
rb:TopicStreamElementSplit rdf:type owl:Class ;
                           rdfs:subClassOf rb:StreamElementSplit ;
                           rdfs:label "Stream elements split by topic"@en .


#################################################################
#    Individuals
#################################################################

###  https://w3id.org/riverbench/schema/metadata#flatDistribution
rb:flatDistribution rdf:type owl:NamedIndividual ,
                             rb:DistributionType ;
                    rdfs:comment "The dataset is distributed as a single flat file."@en ;
                    rdfs:label "Flat distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#fullDistribution
rb:fullDistribution rdf:type owl:NamedIndividual ,
                             rb:DistributionType ;
                    rdfs:comment "A full distribution, including all data in the dataset."@en ;
                    rdfs:label "Full distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#graphStreamDistribution
rb:graphStreamDistribution rdf:type owl:NamedIndividual ,
                                    rb:DistributionType ;
                           rdfs:comment "The dataset is distributed as a stream of named RDF graphs."@en ;
                           rdfs:label "Graph stream distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#graphs
rb:graphs rdf:type owl:NamedIndividual ,
                   rb:StreamElementType ;
          rdfs:comment "Graph streams are a special case of quad streams, where each element contains exactly one named RDF graph."@en ;
          rdfs:label "Graphs"@en .


###  https://w3id.org/riverbench/schema/metadata#partialDistribution
rb:partialDistribution rdf:type owl:NamedIndividual ,
                                rb:DistributionType ;
                       rdfs:comment "A partial distribution, including only a subset of the data in the dataset. The rb:hasStreamElementCount property indicates the length of this distribution."@en ;
                       rdfs:label "Partial distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#quadStreamDistribution
rb:quadStreamDistribution rdf:type owl:NamedIndividual ,
                                   rb:DistributionType ;
                          rdfs:comment "The dataset is distributed as a stream of RDF quads."@en ;
                          rdfs:label "Quad stream distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#quads
rb:quads rdf:type owl:NamedIndividual ,
                  rb:StreamElementType ;
         rdfs:comment "Quad streams consist of elements, where each element is an RDF dataset."@en ;
         rdfs:label "Quads"@en .


###  https://w3id.org/riverbench/schema/metadata#tripleStreamDistribution
rb:tripleStreamDistribution rdf:type owl:NamedIndividual ,
                                     rb:DistributionType ;
                            rdfs:comment "The dataset is distributed as a stream of RDF triples."@en ;
                            rdfs:label "Triple stream distribution"@en .


###  https://w3id.org/riverbench/schema/metadata#triples
rb:triples rdf:type owl:NamedIndividual ,
                    rb:StreamElementType ;
           rdfs:comment "Triple streams consist of elements, where each element is an RDF graph."@en ;
           rdfs:label "Triples"@en .


[ foaf:homepage <https://github.com/Ostrzyciel> ,
                <https://orcid.org/0000-0002-2543-9461> ;
  foaf:name "Piotr Sowiński" ;
  foaf:nick "Ostrzyciel"
] .

###  Generated by the OWL API (version 4.5.9.2019-02-01T07:24:44Z) https://github.com/owlcs/owlapi
