User:Rcygania2/RDF-With-Literals-Entailment

From RDF Working Group Wiki
< User:Rcygania2
Revision as of 17:43, 16 November 2012 by Rcygania2 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This page is an attempt at providing an informative expression of a minimal yet complete RDF entailment regime. It is intended to cover all data model features, including blank nodes and datatype support, but not any of the RDF or RDFS vocabulary. This has been called “RDF-With-Literals Entailment” in WG discussions, although that doesn't seem like a particularly good name.

This may eventually end up as an appendix to RDF Concepts.

Caveats/TODO

  • This presumes that the presence of an ill-typed literal is an inconsistency; a change to the current semantics that is currently under discussion.
  • I am not a logician, and this has not been checked by one.

Preliminaries

These would have to be informatively stated in RDF Concepts:

  • RDF triples are treated as logical expressions. An RDF triple is true if the corresponding RDF statement is true.
  • An RDF graph is the conjunction of its RDF triples.
  • The merge of two RDF graphs is equivalent to the union of their triples.
  • Definitions of “entailment”, “equivalence”, and “inconsistency” as per RDF Semantics
  • Definition of “entailment regime”—should be in RDF Semantics but isn't currently

These would perhaps be useful as normative definitions in RDF Concepts:

  • Definitions of “subgraph” and “graph merge”

RDF-With-Literals-Entailment

This section is informative.

RDF-With-Literals-Entailment is an entailment regime that describes the entailments, equivalencies and inconsistencies that hold over all RDF graphs before any vocabulary is taken into account. All other entailment regimes are extensions of this. This section is a concise and informative restatement of the normative model-theoretic definition given in [RDF-MT].

  • Subgraph rule: An RDF graph entails any of its subgraphs.
  • Blank node rule: An RDF graph entails a triple where a term is replaced with a blank node that is either fresh, or has been previously allocated under this rule by replacing the same term.
  • Literal value rule: Two RDF triples that share the same subject and predicate are equivalent if their objects are literals with the same literal value.
  • Literal consistency rule: An RDF graph containing an ill-typed literal is inconsistent.

Simple Entailment is equivalent to this entailment regime with an empty datatype map (or with a datatype map containing only xsd:string). In this case, the literal value rule and the literal consistency rule have no effect.

A useful additional rule can be derived from the subgraph rule and the blank node rule:

  • Isomorphism rule: Any two isomorphic RDF graphs are equivalent.

A triple that can be generated from an RDF graph under the blank node rule is called a redundancy. An RDF graph is lean if it does not contain any redundancies. These definitions give rise to:

  • Leanness rule: A non-lean graph is equivalent to any of its lean subgraphs from which it can be derived by adding redundancies.