This work is licensed under a Creative Commons Attribution 3.0 Unported License: http://creativecommons.org/licenses/by/3.0/.
This vocabulary defines generic constraints useful for expressing dependencies between source and target datasets in situations where a source dataset is to be merged with a target dataset and the target is particular with what data it is willing to accept. These constraints, are called bounds and are based on the graph-like triple structure of RDF graphs and draws ideas from of bisimulation from modal logic, conservative extensions of ontologies, and relational peer database exchange. Although simple and generic, bounds still have powerful and practical natural interpretations, and favorable computational properties. This vocabulary is designed to allow bounds to be specified, published, and re-used.
Information attainable through the Web is unique, not only in terms of its scale and diversity, but also in its manner of production, being, as it is, characterised by collaborative accumulation of data and a lack of central authority and editorial control. This open, distributed and flat nature of the Web is often the essential ingredient that ensures the liveness of a data hub, exemplified by community curated databases such as Wikipedia, Wikidata and Freebase. Nevertheless, it does have implications for trust, data-quality and interface design that may require data publishers to protect themselves from unwanted, independent third-party contributions. There is, of course, no answer to which amendments that ought to be considered harmful in general. Rather, harmfulness is in the eye of the beholder and will depend upon the intended uses of a dataset and/or its associated schema: it may concern the terminology that is used to encode the data or it may concern only the data itself. The following three examples illustrate both cases.
1. Ontology hijacking: Ontology hijacking is the contribution of statements about classes and/or properties from a non-authoritative publisher that affects the logical properties, and thus also the reasoning, of those classes and properties. A third-party contributor could, for instance, subsume the dcterms:subject property from the Dublin Core vocabulary, say, under its own concept of an ex:topic, but would then be 'hijacking' dcterms:subject. If subsequently reasoning were to be applied to the recipient of the data, this hijacking would reproduce all statements using the dcterms:subject into statements using ex:topic. Thus, ontology hijacking is harmful insofar as it can increase the amount of data that is inferred from the ontology of the recipient considerably. For the same reason, hijacking can affect inference over data provided by other parties -- parties that may be relying on the terminology of the recipient to stay fixed.
2. Ontology-driven faceted browsing: The idea behind faceted search is to analyse and index search items along multiple orthogonal taxonomies that are called subject facets. From the end-users viewpoint, searching is reduced to the selection of categories along these. In semantic faceted search, the facets are based on ontologies and may be generated by reasoning. This makes the design of an interface and the user-experience of interacting with the system highly vulnerable to terminological changes, whence prudence and predictiveness dictates that one does not allow just any third-party to make assertions about classes and properties in the ontology that generates the facets---even though they may be allowed to contribute data.
3. Closed topics: In recent years the concept of open government data has evolved into a febrile research area which has catalysed major public investments into data dissemination and reuse. The concept has even made its way into international law, e.g., the European Public Sector Information Directive. The access to open government data has been spearheaded by official government websites such as UK's http://data.gov.uk/ and its US analogue http://www.data.gov/. There are also notable examples such as http://openelectiondata.org/, which, although it is not a government initiative, has gained official endorsement. Now, government data often contains what may be called closed topics, that is, data that once it is published should not be altered or amended. Election results are a case in point. Thus, although a data hub serving government data may wish to remain distributed and collaborative, it may wish to 'seal off' certain subsets of the data in order to protect them from any kind of noise.
A prototype implementation which computes Exchanges according ExchangeSchemas is available at http://sws.ifi.uio.no/project/boundz/. This site also contains examples of use of this vocabularies and related information.
This ontology is documented according to the description found at http://www.essepuntato.it/lode. The documentation is generated using the URL http://www.essepuntato.it/lode/reasoner/http://sws.ifi.uio.no/vocab/boundz.
IRI: http://sws.ifi.uio.no/vocab/boundz#Bound
Note: Subclasses of Bound have localnames using Jan Łukasiewicz's prefix notation and 'K' for intersection (conjunction (koniunkcja)) and 'A' for union (disjunction (alternatywa)). This is to avoid parenthesis and funny characters like & in the URIs.
Overview of the subclasses of Bound:
IRI: http://sws.ifi.uio.no/vocab/boundz#AAKspKsoKpo
This Bound reads: The target accepts consuming new triples where the subject is new or the predicate is new; and the subject is new or the object is new; and the predicate is new or the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old and the predicate is old; or the subject is old and the object is old; or the predicate is old and the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#o
This Bound reads: The target accepts consuming new triples where the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#KoAsp
This Bound reads: The target accepts consuming new triples where the object is new; or the subject is new and the predicate is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the object is old; and the subject is old or the predicate is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#AoKsp
This Bound reads: The target accepts consuming new triples where the object is new; and the subject is new or the predicate is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the object is old; or the subject is old and the predicate is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#p
This Bound reads: The target accepts consuming new triples where the predicate is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the predicate is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#KpAso
This Bound reads: The target accepts consuming new triples where the predicate is new; or the subject is new and the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the predicate is old; and the subject is old or the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#Kpo
This Bound reads: The target accepts consuming new triples where the predicate is new or the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the predicate is old and the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#ApKso
This Bound reads: The target accepts consuming new triples where the predicate is new; and the subject is new or the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the predicate is old; or the subject is old and the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#Apo
This Bound reads: The target accepts consuming new triples where the predicate is new and the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the predicate is old or the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#s
This Bound reads: The target accepts consuming new triples where the subject is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#KsApo
This Bound reads: The target accepts consuming new triples where the subject is new; or the predicate is new and the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old; and the predicate is old or the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#Kso
This Bound reads: The target accepts consuming new triples where the subject is new or the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old and the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#Ksp
This Bound reads: The target accepts consuming new triples where the subject is new or the predicate is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old and the predicate is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#KKspo
This Bound reads: The target accepts consuming new triples where the subject is new or the predicate is new or the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old and the predicate is old and the object is old, where 'old' means that the element already exists in the target, i.e., it does not permit the target to consume triples which re-arrange elements in the target. This bound is the weakest of the proper bounds, i.e., disregarding the unbounded bound bz:F, and is the least requirement for securing a bounded extension of the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#AsKpo
This Bound reads: The target accepts consuming new triples where the subject is new; and the predicate is new or the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old; or the predicate is old and the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#Aso
This Bound reads: The target accepts consuming new triples where the subject is new and the object is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old or the object is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#AAspo
This Bound reads: The target accepts consuming new triples where the subject is new and the object is new and the predicate is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old or the object is old or the predicate is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#Asp
This Bound reads: The target accepts consuming new triples where the subject is new and the predicate is new, where 'new' means that the element or triple does not exist in the target, or equivalently: The target rejects consuming new triples where the subject is old or the predicate is old, where 'old' means that the element already exists in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#T
This Bound reads: The target rejects consuming new triples, where 'new' means that the element or triple does not exist in the target.
IRI: http://sws.ifi.uio.no/vocab/boundz#F
This Bound reads: The target accepts consuming any triple. This bound is only useful to explicitly indicate that (parts of) an Exchange is unbounded.
IRI: http://sws.ifi.uio.no/vocab/boundz#BoundedGraph
IRI: http://sws.ifi.uio.no/vocab/boundz#BoundSet
A BoundSet is a collection of one or more Bounds, and is useful for grouping together related Bounds, e.g., Bounds which restrict the consumption of triples from a specific namespace.
IRI: http://sws.ifi.uio.no/vocab/boundz#Exception
An Exception specifies how Violations to a Bound shall be handled. The different Exceptions are ignoreSources, ignoreSource and ignoreViolations, which all specify in different degree the size of the payload in the case of a violation on the Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#Exchange
An Exchange is an instance of a ExchangeSchema and represents an exchange of data from source(s) to the target specified in the ExchangeSchema. A Exchange has a payload graph which is a permissible extension of the target according to the bounds specified by the ExchangeSchema.
IRI: http://sws.ifi.uio.no/vocab/boundz#ExchangeSchema
An ExchangeSchema is a specification for Exchanges of data from a set of source graphs to a target graph. The payload of the exchange must adhere to the Bounds set by the ExchangeSchema.
IRI: http://sws.ifi.uio.no/vocab/boundz#Graph
An RDF graph; a set of RDF triples.
IRI: http://sws.ifi.uio.no/vocab/boundz#Violation
A Violation represents the violating triples of a Bound for a given Exchange (related by the hasViolation property) and a source (see hasSource), i.e., a Violation is a 4-ary relation which relates an Exchange, the unsatisfied Bound, the triples which does not satisfy the Bound, and the source Graph where the triples come from.
IRI: http://sws.ifi.uio.no/vocab/boundz#boundedExtension
A boundedExtension is a relation between the target and payload of an Exchange and indicates that the payload graph is a bounded extension of the target graph.
IRI: http://sws.ifi.uio.no/vocab/boundz#classRestriction
A classRestriction is a hasRestriction property that relates a Bound to a type resource, i.e., a class, and is used to restrict the triples to which the Bound applies to those which have an element of the given type. This restriction is interpreted conjunctively, i.e., if several class restrictions are specified, the element must be member of all the types. This property is 'abstract', please use one of its subproperties.
Example: If a Bound has a classRestriction on the object position requiring it to be of type ex:Bird, then the bound applies only to triples where the object is a ex:Bird.
IRI: http://sws.ifi.uio.no/vocab/boundz#hasBound
This property is used to assign Bounds to ExchangeSchemas, BoundSets or BoundedGraphs.
has characteristics: transitive
IRI: http://sws.ifi.uio.no/vocab/boundz#hasException
IRI: http://sws.ifi.uio.no/vocab/boundz#hasPayload
This property relates the payload graph, i.e., the data that is accepted by the target in an Exchange to the Exchange.
IRI: http://sws.ifi.uio.no/vocab/boundz#hasRestriction
This property restricts the applicability of a Bound to a specified resource, namespace or class. This property is 'abstract', please use one of its subproperties.
IRI: http://sws.ifi.uio.no/vocab/boundz#hasSource
IRI: http://sws.ifi.uio.no/vocab/boundz#hasTarget
IRI: http://sws.ifi.uio.no/vocab/boundz#hasTriple
This property relates a Graph to an triple/statement in the Graph.
IRI: http://sws.ifi.uio.no/vocab/boundz#hasViolation
IRI: http://sws.ifi.uio.no/vocab/boundz#namespaceRestriction
A namespaceRestriction is a hasRestriction property that relates a Bound to a namespace and is used to restrict the triples to which the Bound applies to those that belong to the given namespace. This restriction is interpreted disjunctively, i.e., if several class restrictions are specified, the element need only belong one of the namespaces. This property is 'abstract', please use one of its subproperties.
Example: If a Bound has a namespaceRestriction on the predicate position which specifies that the predication must belong to the RDF namespace, then the Bound applies only to triples where the predicate belongs to this namespace.
IRI: http://sws.ifi.uio.no/vocab/boundz#objectClass
Specifies a classRestriction on the object position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#objectNamespace
Specifies a namespaceRestriction on the object position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#objectRestriction
Specifies a restriction on the object position of a Bound. This property is 'abstract', please use one of its subproperties.
IRI: http://sws.ifi.uio.no/vocab/boundz#objectValue
Specifies a valueRestriction on the object position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#predicateClass
Specifies a classRestriction on the predicate position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#predicateNamespace
Specifies a namespaceRestriction on the predicate position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#predicateRestriction
Specifies a restriction on the predicate position of a Bound. This property is 'abstract', please use one of its subproperties.
IRI: http://sws.ifi.uio.no/vocab/boundz#predicateValue
Specifies a valueRestriction on the predicate position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#subjectClass
Specifies a classRestriction on the subject position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#subjectNamespace
Specifies a namespaceRestriction on the subject position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#subjectRestriction
Specifies a restriction on the subject position of a Bound. This property is 'abstract', please use one of its subproperties.
IRI: http://sws.ifi.uio.no/vocab/boundz#subjectValue
Specifies a valueRestriction on the subject position of a Bound.
IRI: http://sws.ifi.uio.no/vocab/boundz#valueRestriction
A valueRestriction is a hasRestriction property that relates a Bound to a resource and is used to restrict the triples to which the Bound applies to those equal to the given resource. This restriction is interpreted disjunctively, i.e., if several values restrictions are specified, the element need only be equal to one of the values. This property is 'abstract', please use one of its subproperties.
IRI: http://sws.ifi.uio.no/vocab/boundz#violationOnBound
IRI: http://sws.ifi.uio.no/vocab/boundz#violationOnSource
IRI: http://sws.ifi.uio.no/vocab/boundz#noOfTriples
Indicates the number of triples in the Graph.
has characteristics: functional
IRI: http://sws.ifi.uio.no/vocab/boundz#outputPayload
Specifies whether or not the payload graph (see hasPayload) should be included in the exchange. If the value is set to false, the payload is not included. If Graphs are large, then setting this to true may create considerable output.
has characteristics: functional
IRI: http://sws.ifi.uio.no/vocab/boundz#outputViolations
Specifies whether or not the violating triples (see hasViolation) should be included in the exchange. If the value is set to false, the violating triples are not included. If Graphs are large, then setting this to true may create considerable output.
has characteristics: functional
IRI: http://sws.ifi.uio.no/vocab/boundz#sourceReasoning
Specifies whether or not the source graphs are to be saturated before computing the Exchange.
has characteristics: functional
IRI: http://sws.ifi.uio.no/vocab/boundz#targetReasoning
Specifies whether or not the target graph are to be saturated before computing the Exchange.
has characteristics: functional
IRI: http://sws.ifi.uio.no/vocab/boundz#timestamp
IRI: http://sws.ifi.uio.no/vocab/boundz#ignoreSource
This Exception specifies that if the Bound with this exception is not satisfied, then the source Graph that contains the violation should be ignored altogether for the Exchange in question, i.e., no data from this source will be accepted by the target in this Exchange.
IRI: http://sws.ifi.uio.no/vocab/boundz#ignoreSources
This Exception specifies that if the Bound with this exception is not satisfied, then all source Graphs for the Exchange in question shall be ignored, i.e., no data in this exchange will be accepted by the target in this Exchange.
IRI: http://sws.ifi.uio.no/vocab/boundz#ignoreViolations
This Exception specifies that if the Bound with this exception is not satisfied, then the violating triples for the Exchange in question shall be ignored, i.e., the data that satisfies the Bound will be accepted by the target in this Exchange, but the violating triples will not be accepted.
IRI: http://purl.org/dc/elements/1.1/description
This HTML document was obtained by processing the OWL ontology source code through LODE, Live OWL Documentation Environment, developed by Silvio Peroni.
A Bound is used to express reservations about incoming data to a target Graph. A bound specifies the new triples a target is willing to accept in terms of a the pattern which can identify new and old elements, where 'new' means that the element or triple does not exist in the target and 'old' means that the element exists in the target. This class is 'abstract', please use a subclass. The subclasses are hierarchically related so that a superclass is more restrictive in terms of the kind of triple patterns it accepts than any of its subclasses, i.e., a Bound, in addition to accepting triples satisfying its own triple pattern, will accept triples satisfying the pattern of any of its superclasses.