Biblio now includes all references. "-D" terminology changed to "recognizing D" terminology. Several small typos, editorial rewordings.
authorPat Hayes <phayes@ihmc.us>
Mon, 20 May 2013 02:56:56 -0500
changeset 820 892cf48a643c
parent 819 99a82a53a41b
child 821 86127ddc0f3d
Biblio now includes all references. "-D" terminology changed to "recognizing D" terminology. Several small typos, editorial rewordings.
rdf-mt/index.html
--- a/rdf-mt/index.html	Wed May 15 02:09:33 2013 -0500
+++ b/rdf-mt/index.html	Mon May 20 02:56:56 2013 -0500
@@ -11,6 +11,10 @@
       var respecConfig = {
           // specification status (e.g. WD, LCWD, NOTE, etc.). If in doubt use ED.
           specStatus:           "ED",
+
+localBiblio:{
+"EXTRDFS":"Herman J. ter Horst, Extending the RDFS Entailment Lemma, in S.A. McIlraith et al. (Eds.), The Semantic Web - ISWC2004, Proceedings of the Third International Semantic Web Conference, Hiroshima, Japan, November 2004, Springer, LNCS 3298, pp. 77-91.",
+"CDCENTAILMENT":"Herman J. ter Horst, Completeness, Decidability and Complexity of Entailment for RDF Schema and a Semantic Extension Involving the OWL Vocabulary, Journal of Web Semantics 3 (2005) 79-115." },
           
           // the specification's short name, as in http://www.w3.org/TR/short-name/
           shortName:            "rdf11-mt",
@@ -275,7 +279,7 @@
 <p> The final condition implies that the empty graph (the empty set of triples) is always true.</p>
 <p>The sets IP and IR may overlap, indeed IP can be a subset of IR. Because of the domain conditions on IEXT, the denotation of the subject and object of any true triple will be in IR; so any IRI which occurs in a graph both as a predicate and as a subject or object will denote something in the intersection of IP and IR.</p>
 
-<p><a>semantic extension</a>s may impose further constraints upon interpretation mappings by requiring some IRIs to refer in particular ways. For example, D-interpretations, described below, require some IRIs, understood as <a>identify</a>ing and referring to datatypes, to have a fixed interpretation. </p>
+<p><a>Semantic extension</a>s may impose further constraints upon interpretation mappings by requiring some IRIs to refer in particular ways. For example, D-interpretations, described below, require some IRIs, understood as <a>identify</a>ing and referring to datatypes, to have a fixed interpretation. </p>
 
 <section>
   <h3 id="blank_nodes">Blank Nodes</h3>
@@ -461,11 +465,11 @@
 
 
 
-<p>If the literal is <a>ill-typed</a> then the L2V(I(aaa)) mapping has no value, and so the literal cannot denote anything. In this case, any triple containing the literal must be false. Thus, any triple, and hence any graph, containing an <a>ill-typed</a> literal will be  <a>D-unsatisfiable</a>, i.e. false in every D-interpretation. This applies only to datatype IRIs in D; literals with "unknown" datatypes are not <a>ill-typed</a> and cannot be <a>D-unsatisfiable</a>. </p>
+<p>If the literal is <a>ill-typed</a> then the L2V(I(aaa)) mapping has no value, and so the literal cannot denote anything. In this case, any triple containing the literal must be false. Thus, any triple, and hence any graph, containing an <a>ill-typed</a> literal will be  <a>D-unsatisfiable</a>, i.e. false in every D-interpretation. This applies only to literals typed with recognized datatype IRIs in D; literals with an unrecognized type IRI are not <a>ill-typed</a> and cannot give rise to a <a>D-unsatisfiable</a> graph. </p>
 
-<p>The built-in RDF datatype <code>rdf:langString</code> has no <a>ill-typed</a> literals. Any syntactically legal literal with this type will denote a value in every RDF interpretation. The required datatype <code>xsd:string</code> can have an ill-formed string, for example one containing the Unicode null character \u0000. However, such ill-formed strings cannot be written in most surface syntactic notations for RDF. </p>
+<p>The built-in RDF datatype <code>rdf:langString</code> has no <a>ill-typed</a> literals. Any syntactically legal literal with this type will denote a value in every RDF interpretation. The only ill-typed literals of type <code>xsd:string</code> are those containing a Unicode code point which does not match the <em>Char</em> production in [[!XML10]]. Such strings cannot be written in an XML-compatible surface syntax. 
 
-<p class="issue">Blech. This is very weak. Can't we do better than just saying this?</p>
+</p>
 
 
 
@@ -479,7 +483,7 @@
 <section>
 <h3 id="D_entailment">Datatype entailment</h3>
 
-<p>A graph is (simply) <dfn>D-satisfiable</dfn> when it has the value true in some D-interpretation, and a set S of graphs (simply) <dfn>D-entails</dfn> a graph G when every D-interpretation which makes S true also D-satisfies G.</p>
+<p>A graph is (simply) <dfn>D-satisfiable</dfn> or <dfn>satisfiable recognizing D</dfn> when it has the value true in some D-interpretation, and a set S of graphs (simply) <dfn>D-entails</dfn> or <dfn>entails recognizing D</dfn> a graph G when every D-interpretation which makes S true also D-satisfies G.</p>
 
 <p> Unlike the case with <a>simple interpretation</a>s, it is possible for a graph to have no satisfying D-interpretations, i.e. to be <dfn>D-unsatisfiable</dfn>. RDF processors MAY treat an unsatisfiable graph as signaling an error condition, but this is not required.</p>
 
@@ -487,7 +491,7 @@
 
 <p class="technote">The fact that an unsatisfiable statement entails any other statement has been known since antiquity. It is called the principle of <em>ex falso quodlibet</em>. It should not be interpreted to mean that it is necessary, or even permissible, to actually draw any conclusion from an inconsistency.</p>
 
-<p>In all of this language, 'D' is being used as a parameter to represent some set of datatype IRIs, and different D sets will yield different notions of satisfiability and entailment. The more datatypes are <a>recognize</a>d, the stronger is the entailment, so that if D &subset; E and S E-entails G then S must D-entail G. Simple entailment is { } entailment, i.e. D-entailment when D is the empty set, so if S D-entails G then S simply entails G. </p>
+<p>In all of this language, 'D' is being used as a parameter to represent some set of datatype IRIs, and different D sets will yield different notions of satisfiability and entailment. The more datatypes are <a>recognize</a>d, the stronger is the entailment, so that if D &subset; E and S E-entails G then S must D-entail G. Simple entailment is { }-entailment, i.e. D-entailment when D is the empty set, so if S D-entails G then S simply entails G. </p>
 
 
 
@@ -512,11 +516,11 @@
 </section>
 
 </section>
-<section><h2 id="rdf_d_interpretations">RDF-D Interpretations</h2>
-    <p >RDF-D interpretations impose extra semantic conditions on <code>xsd:string</code> and part of the infinite 
+<section><h2 id="rdf_d_interpretations">RDF Interpretations</h2>
+    <p >RDF interpretations impose extra semantic conditions on <code>xsd:string</code> and part of the infinite 
   set of IRIs in the <code>rdf:</code> namespace.  
 
-<p>An <dfn>rdf-D-interpretation</dfn>  I is a D-interpretation where D includes <code>rdf:langString</code> and <code>xsd:string</code>, and which satisfies:</p>    
+<p>An <dfn>RDF interpretation</dfn> <strong>recognizing D</strong> is a <a>D-interpretation</a> I where D includes <code>rdf:langString</code> and <code>xsd:string</code>, and which satisfies:</p>    
 <div class="tabletitle">RDF semantic conditions.</div> 
 <table  border="1">
   <tbody>
@@ -551,34 +555,32 @@
     </tr>
   </table>
 
-<p>No other semantic constraints are imposed upon <a>rdf-D-interpretation</a>s, so RDF imposes no particular normative meanings on the rest of the RDF vocabulary. Some consequences of this are described in Appendix D.</p>
+<p>RDF imposes no particular normative meanings on the rest of the RDF vocabulary. Some consequences of this are described in Appendix D.</p>
 
 
-<p id="rdfinterpdef">An <dfn>rdf-interpretation</dfn>, or <dfn>RDF interpretation</dfn>, is an rdf-{<code>rdf:langString</code>, <code>xsd:string</code> } interpretation, i.e. an rdf-D-Interpretation with a minimal set D. The datatype IRIs <code>rdf:langString</code> and <code>xsd:string</code> MUST be <a>recognize</a>d by all RDF-D interpretations. </p>
+<p>The datatype IRIs <code>rdf:langString</code> and <code>xsd:string</code> MUST be <a>recognize</a>d by all RDF interpretations. </p>
 
 <p>Two datatypes in the rdf: namespace <code>rdf:XMLLiteral</code> and <code>rdf:HTML</code> are defined in [[!RDF11-CONCEPTS]]. RDF-D interpretations MAY fail to <a>recognize</a> these datatypes. </p>
 </section>
 <section>
 
-<h3><a id="rdf_entail"></a>RDF-D entailment</h3>
+<h3><a id="rdf_entail"></a>RDF entailment</h3>
 
-<p>S <dfn>rdf-D-entail</dfn><strong>s</strong> E when every <a>rdf-D-interpretation</a> which satisfies every 
-  member of S also satisfies E, and <dfn>rdf-entail</dfn><strong>s</strong> E when every <a>rdf-interpretation</a> of S also satisfies E. </p>
+<p>S <dfn>RDF entail</dfn><strong>s</strong> E <strong>recognizing D</strong> when every <a>RDF interpretation recognizing D</a> which satisfies  S also satisfies E. When D is {<code>rdf:langString</code>, <code>xsd:string</code>} then we simply say S <strong>RDF entails</strong> E. </p>
 
-<p>The properties of <a>simple entailment</a> described earlier do not all apply to <a>rdf-D-entail</a>ment. For example, all the RDF axioms are true in every <a>rdf-interpretation</a>, so are <a>rdf-D-entail</a>ed by the empty graph, 
-  contradicting <a>interpolation</a> for rdf-D entailment. </p>
+<p>The properties of <a>simple entailment</a> described earlier do not all apply to <a>RDF entail</a>ment. For example, all the RDF axioms are true in every <a>RDF interpretation</a>, so are <a>RDF entail</a>ed by the empty graph, contradicting <a>interpolation</a> for RDF entailment. </p>
 
 
-<section><h4>Patterns of RDF-D entailment</h4>
+<section><h4>Patterns of RDF entailment</h4>
 <p> The last semantic condition in the above table gives the following entailment pattern for <a>recognize</a>d datatype IRIs: </p> 
 
-<div class="tabletitle">RDF-D entailment pattern.</div> 
+<div class="tabletitle">RDF entailment pattern.</div> 
 <table  border="1" >
   <tbody>
     <tr> 
       <th > </th>
       <th ><strong>if S contains</strong></th>
-      <th ><strong>then S rdf-D-entails</strong></th>
+      <th ><strong>then S RDF entails, recognizing D</strong></th>
     </tr>
     <tr > 
       <td class="othertable">rdfD1</td>
@@ -595,7 +597,7 @@
 <p>For example,</p>
 <p> <code>ex:a ex:p "123"^^xsd:integer .</code></p>
 
-<p>rdf-{<code>xsd:integer</code>}-entails</p>
+<p>RDF entails recognizing {<code>xsd:integer</code>}</p>
 
 <code>ex:a ex:p _:x . <br/>
  _:x rdf:type xsd:integer . </code></p>
@@ -607,7 +609,7 @@
     <tr> 
       <th > </th>
       <th ><strong>if S contains</strong></th>
-      <th ><strong>then S rdf-D-entails</strong></th>
+      <th ><strong>then S RDF entails, recognizing D</strong></th>
     </tr>
    
     <tr>
@@ -621,20 +623,22 @@
 </table>
 
 
-<p>So that the above example also rdf-{<code>xsd:integer</code>}-entails</p><p><code>ex:p rdf:type rdf:Property .</code></p>
+<p>So that the above example also RDF entails</p><p><code>ex:p rdf:type rdf:Property .</code></p><p> recognizing {<code>xsd:integer</code>}.</p>
 
 
-<p>Some datatypes support idiosyncratic RDF-D-entailment patterns which do not hold for other datatypes. For example, </p>
+<p>Some datatypes support idiosyncratic entailment patterns which do not hold for other datatypes. For example, </p>
 
 <p><code> ex:a ex:p "true"^^xsd:boolean . <br/>
 ex:a ex:p "false"^^xsd:boolean .<br/>
 ex:v rdf:type xsd:boolean .</code></p>
 
-together rdf-{<code>xsd:boolean</code>}-entail</p>
+together RDF entail</p>
 
 <p><code>ex:a ex:p ex:v .</code></p>
 
-<p>In addition, the semantic conditions on value spaces may produce other unsatisfiable graphs. For example, when D contains <code>xsd:integer</code> and <code>xsd:boolean</code>, then the following is <a>rdf-D-unsatisfiable</a>:</p>
+<p> recognizing {<code>xsd:boolean</code>}.</p>
+
+<p>In addition, the semantic conditions on value spaces may produce other unsatisfiable graphs. For example, when D contains <code>xsd:integer</code> and <code>xsd:boolean</code>, then the following is <a>RDF unsatisfiable</a> recognizing D:</p>
 
 <p><code>_:x rdf:type xsd:boolean .<br/>
 _:x rdf:type xsd:integer . </code></p>
@@ -681,8 +685,8 @@
 </p>
 
     
-<p> An <dfn>rdfs-D-interpretation</dfn> is an <a>rdf-D-interpretation</a> I 
-   which satisfies the semantic conditions in the following table, and all the triples in the subsequent table of RDFS axiomatic triples. As before, an <dfn>rdfs-interpretation</dfn>, or <dfn>RDFS interpretation</dfn>, is an <a>rdfs-D-interpretation</a> with D= {<code>xsd:string</code>, <code>rdf:langString</code> }.</p>
+<p> An <dfn>RDFS interpretation</dfn> (<strong>recognizing D</strong>) is an <a>RDF interpretation</a> (recognizing D) I 
+   which satisfies the semantic conditions in the following table, and all the triples in the subsequent table of RDFS axiomatic triples. </p>
   
 <div class="tabletitle">RDFS semantic conditions.</div>
   <table  border="1">
@@ -821,14 +825,15 @@
 <p class="changenote">In the 2004 RDF 1.0 semantics, LV was defined as part of a simple interpretation structure, and the definition given here was a constraint. </p>
 
 
-<p>Since I is an <a>rdf-interpretation</a>, the first condition implies that IP 
+<p>Since I is an <a>RDF interpretation</a>, the first condition implies that IP 
   = ICEXT(I(<code>rdf:Property</code>)).</p>
- <p>The semantic conditions on <a>rdf-D-interpretation</a>s, together with the RDFS conditions on ICEXT, mean that every <a>recognize</a>d datatype can be treated as a class whose extension is the value space of the datatype, and every literal with that datatype either fails to refer, or refers to a value in that class.</p>
-<p>When using RDFS semantics, the class <code>rdfs:Datatype</code> can be considered to contain exactly the referents of <a>recognize</a>d datatype IRIs. </p>
+ <p>The semantic conditions on <a>RDF interpretation</a>s, together with the RDFS conditions on ICEXT, mean that every <a>recognize</a>d datatype can be treated as a class whose extension is the value space of the datatype, and every literal with that datatype either fails to refer, or refers to a value in that class.</p>
+<p>When using RDFS semantics, the <a>class</a> <code>rdfs:Datatype</code> can be considered to contain exactly the referents of <a>recognize</a>d datatype IRIs. </p>
 <p>The axioms and conditions listed above have some redundancy. For example, all but one 
   of the RDF axiomatic triples can be derived from the RDFS axiomatic triples 
-  and the semantic conditions on ICEXT,<code> rdfs:domain</code> and <code>rdfs:range</code>. 
-  Other triples which must be true in all rdfs-interpretations 
+  and the semantic conditions on ICEXT,<code> rdfs:domain</code> and <code>rdfs:range</code>. </p>
+
+<p>  Other triples which must be true in all rdfs-interpretations 
   include the following. This is not a complete set.</p>
   <div class="tabletitle">Some rdfs-valid triples.</div>
 <table  border="1">
@@ -872,20 +877,20 @@
 
     <p>is consistent even though its subject is an IRI rather
     than a literal. It says that the IRI '<code>ex:a</code>'
-    refers to a literal value, which is quite possible since literal values are things in the universe. Similarly, blank nodes may range over literal values. </p>
+    refers to a literal value, which is quite possible since literal values are things in the universe. Blank nodes may range over literal values, for the same reason. </p>
 </section>
 </section>
 <section>
 
 <h3 id="rdfs_entailment">RDFS Entailment</h3>
-<p>S <dfn>rdfs-D-entails</dfn> E when every <a>rdfs-D-interpretation</a>
-  which satisfies every member of S also satisfies E. <dfn>RDFS entailment</dfn> is rdfs-{<code>rdf:langString</code>, <code>xsd:string</code> } entailment, i.e. <a title="rdfs-D-entails">rdfs-D-entailment</a> with a minimal D.  </p>
-<p> Since every <a>rdfs-D-interpretation</a> is an <a>rdf-D-interpretation</a>, if S <a>rdfs-D-entails</a> 
-  E then S also <a>rdf-D-entail</a>s E; but rdfs-entailment is stronger than rdf-entailment. 
-  Even the empty graph has a large number of rdfs-entailments which are not rdf-entailments, 
+<p>S <dfn>RDFS entails</dfn> E <strong>recognizing D</strong> when every <a>RDFS interpretation</a> recognizing D
+  which satisfies S also satisfies E.</p>
+<p> Since every <a>RDFS interpretation</a> is an <a>RDF interpretation</a>, if S <a>RDFS entails</a> 
+  E then S also <a>RDF entail</a>s E; but RDFS entailment is stronger than RDF entailment. 
+  Even the empty graph has a large number of RDFS entailments which are not RDF entailments, 
   for example all triples of the form </p>
 <p> aaa <code>rdf:type rdfs:Resource .</code></p>
-<p>where aaa is an IRI, are true in all rdfs-interpretations.</p>
+<p>where aaa is an IRI, are true in all RDFS interpretations.</p>
 
 <section> <h4>Patterns of RDFS entailment.</h4>
 
@@ -897,7 +902,7 @@
     <tr > 
       <th ></th>
       <th >If S contains:</th>
-      <th >then S RDFS-D-entails:</th>
+      <th >then S RDFS entails recognizing D:</th>
     </tr>
     <tr >
      <td class="othertable"><dfn>rdfs1</dfn></td>
@@ -979,7 +984,7 @@
 </table>
 
 
-<p>RDFS provides for several new ways to be RDFS-D unsatisfiable. For example, the following graph is RDFS-{<code>xsd:integer</code>, <code>xsd:boolean</code>} unsatisfiable:</p>
+<p>RDFS provides for several new ways to be unsatisfiable recognizing D. For example, the following graph is RDFS unsatisfiable recognizing {<code>xsd:integer</code>, <code>xsd:boolean</code>}:</p>
 
 <p><code>ex:p rdfs:domain xsd:boolean .<br/>
 ex:a rdf:type xsd:integer .<br/>
@@ -993,29 +998,31 @@
 
 <p>Although the IRIs are called "graph names", they may refer to something other than the graph they are paired with. This allows IRI referring to other kinds of entities, such as persons, to be used in a dataset to <a>identify</a> graphs of information relevant to the entity <a>denote</a>d by the graph name IRI.</p>
 
-<p>This has the consequence that when a graph name IRI is used inside RDF triples in a dataset it may or may not refer to the graph it names. The semantics does not require, nor should RDF engines presume without some external reason to do so, that graph name IRIs used in RDF triples refer to the graph they name.</p>
+<p>When a graph name IRI is used inside RDF triples in a dataset it may or may not refer to the graph it names. The semantics does not require, nor should RDF engines presume without some external reason to do so, that graph name IRIs used in RDF triples refer to the graph they name.</p>
 
 <p>Graphs in a single dataset may share blank nodes. This is the only case where distinct RDF graphs may share a blank node. Graphs in distinct datasets cannot share blank nodes. </p>
 
 </section>
 
+<h2>Appendices</h2>
+
 <section class="appendix"><h3>Entailment rules (Informative)</h3>
 
-<p>This section is based on work described more fully in [[terHorst1]], [[terHorst2]], which should be consulted for technical details and proofs. </p>
-<p> The RDF and RDFS entailment patterns listed in the above tables can be viewed as left-to-right rules which add the entailed conclusion to a graph. These rule sets can be used to check RDF- (or RDFS-) entailment between graphs S and E, by the following sequence of operations:</p>
+<p>This section is based on work described more fully in [[EXTRDFS]], [[CDCENTAILMENT]], which should be consulted for technical details and proofs. </p>
+<p> The RDF and RDFS entailment patterns listed in the above tables can be viewed as left-to-right rules which add the entailed conclusion to a graph. These rule sets can be used to check RDF (or RDFS) entailment between graphs S and E, by the following sequence of operations:</p>
 <p>1. Add to S all the RDF (or RDF and RDFS) axiomatic triples except those containing the container membership property IRIs <code>rdf:_1, rdf:_2, ...</code>.<br/>
 2. For every container membership property IRI which occurs in E, add the RDF (or RDF and RDFS) axiomatic triples which contain that IRI.<br/>
 3. Apply the RDF (or RDF and RDFS) inference patterns as rules, adding each conclusion to the graph, to exhaustion; that is, until they generate no new triples. <br/>
 4. Determine if E has an instance which is a subset of the set, i.e. whether the enlarged set simply entails E.</p>
 
-This process is clearly <a>correct</a>, in that if it gives a positive result then indeed S does RDF-(RDFS-) entail E. It is not, however, <a>complete</a>: there are cases of S entailing E which are not detectable by this process. Examples include:</p>
+This process is clearly <a>correct</a>, in that if it gives a positive result then indeed S does RDF (RDFS) entail E. It is not, however, <a>complete</a>: there are cases of S entailing E which are not detectable by this process. Examples include:</p>
 
 <table  border="1" >
   <tbody>
     <tr> 
       
       <th > </th>
-      <th >RDF-entails</th>
+      <th >RDF entails</th>
     </tr>
    
     <tr>
@@ -1030,7 +1037,7 @@
  <tr> 
       
       <th > </th>
-      <th >RDFS-entails</th>
+      <th >RDFS entails</th>
     </tr>
 <tr>
        
@@ -1043,7 +1050,7 @@
   </tbody>
 </table>
 <p> Both of these can be handled by allowing the rules to apply to a generalization of the RDF syntax in which literals may occur in subject position and blank nodes may occur in predicate position. </p>
-<p>Define a <dfn>generalized RDF triple</dfn> to be a triple &lt;x, y, z&gt; where x and z can be an IRI, a blank node or a literal, and y can be an IRI or a blank node; and extend this to the rest of RDF, so that a generalized RDF graph is a set of generalized RDF triples. (This extends the generalization used in [[terHorst1]] and follows exactly the terms used in [[OWL2-SYNTAX]].) The semantics described in this document applies to the generalized syntax without change, so that the notions of interpretation, satisfiability and entailment can be used freely. Then we can replace the first RDF entailment pattern with the simpler and more direct</p>
+<p>Define a <dfn>generalized RDF triple</dfn> to be a triple &lt;x, y, z&gt; where x and z can be an IRI, a blank node or a literal, and y can be an IRI or a blank node; and extend this to the rest of RDF, so that a generalized RDF graph is a set of generalized RDF triples. (This extends the generalization used in [[EXTRDFS]] and follows exactly the terms used in [[!OWL2-SYNTAX]].) The semantics described in this document applies to the generalized syntax without change, so that the notions of interpretation, satisfiability and entailment can be used freely. Then we can replace the first RDF entailment pattern with the simpler and more direct</p>
 
 <div class="tabletitle">G-RDF-D entailment pattern.</div> 
 <table  border="1" >
@@ -1051,7 +1058,7 @@
     <tr> 
       <th > </th>
       <th ><strong>if S contains</strong></th>
-      <th ><strong>then S RDF-D-entails</strong></th>
+      <th ><strong>then S RDF entails, recognizing D</strong></th>
     </tr>
     <tr > 
       <td class="othertable">GrdfD1</td>
@@ -1086,22 +1093,22 @@
 4. Apply the rules GrdfD1 and rdfD2 (and the rules rdfs1 through rdfs13), with D={<code>rdf:langString</code>, <code>xsd:string</code>), to the set in all possible ways, to exhaustion. </p>
 
 <p>Then we have the completeness result:</p>
-<p class="fact">If S is RDF-(RDFS-)consistent, then S RDF-entails (RDFS-entails) E just when the <a>generalized RDF (RDFS) closure</a> of S towards E simply entails E.</em> </p> 
+<p class="fact">If S is RDF (RDFS)consistent, then S RDF entails (RDFS entails) E just when the <a>generalized RDF (RDFS) closure</a> of S towards E simply entails E.</em> </p> 
 
-<p>Since the closures are finite, the generation process is decideable, and of polynomial complexity. Detecting simple entailment is NP-complete in general, but of low polynomial order when E contains no blank nodes. </p>
+<p>The closures are finite. The generation process is decidable and of polynomial complexity. Detecting simple entailment is NP-complete in general, but of low polynomial order when E contains no blank nodes. </p>
 
 <p>Every RDF(S) closure, even starting with the empty graph, will contain all RDF(S) tautologies. In practice there is little utility in re-deriving these, and a subset of the rules can be used to establish most entailments of practical interest. </p>
 
 <p>If it is important to stay within legal RDF syntax, rule rdfD1 may be used instead of GrdfD1, and the introduced blank node can be used as a substitute for the literal in subsequent derivations. The resulting set of rules will not however be complete.</p>
 
-<p>As noted earlier, detecting D-entailment for larger sets of datatype IRIs requires attention to idiosyncratic properties of the particular datatypes.</p>
+<p>As noted earlier, detecting datatype entailment for larger sets of datatype IRIs requires attention to idiosyncratic properties of the particular datatypes.</p>
 
 </section>
  
 <section class="appendix"><h2  id="proofs">Finite interpretations (Informative)</h2>
 <p>To keep the exposition simple, the RDF semantics has been phrased in a way which requires interpretations to be larger than absolutely necessary. For example, all interpretations are required to interpret the whole IRI vocabulary, and the universes of all D-interpretations must contain all possible strings and therefore be infinite. This appendix sketches, without proof, how to re-state the semantics using smaller semantic structures, without changing any entailments. </p>
 <p>Basically, it is only necessary for an interpretation structure to interpret the <a>name</a>s actually used in the graphs whose entailment is being considered, and to have a universe which contains referents for all the <a>name</a>s, plus a random member of each nonempty class or type, in order to provide for the truth of existential assertions made using blank nodes. Formally, we can define a <dfn>pre-interpretation</dfn> over a <a>vocabulary</a> V to be a structure I similar to a <a>simple interpretation</a> but with a mapping only from V to its universe IR, and when considering whether G entails E, consider only pre-interpretations over the finite vocabulary of <a>name</a>s actually used in G union E. Clearly, any such pre-interpretation may be extended to <a>simple interpretation</a>s all of which which will give the same truthvalues for any triples in G or E. Satisfiability, entailment and so on can then be defined with respect to these finite pre-interpretations, and shown to be identical to the ideas defined in the body of the specification.</p>
-<p>When considering D-entailment, pre-interpretations may be kept finite by weakening the semantic conditions for datatyped literals so that IR need contain literal values only for literals which actually occur in G or E, or a single value in the value space if there are no such literals in the vocabulary. For RDF-D entailment, only the finite part of the RDF vocabulary which include those container membership properties which actually occur in the graphs need to be interpreted, and the second RDF semantic condition is weakened to apply only to values which are values of literals which actually occur in the vocabulary. For RDFS interpretations, again only that finite part of the infinite container membership property vocabulary which actually occurs in the graphs under consideration needs to be interpreted. In all these cases, a pre-interpretation of the vocabulary of a set of graphs may be extended to a full interpretation of the appropriate type without changing the truthvalues of any triples in the graphs.</p>
+<p>When considering D-entailment, pre-interpretations may be kept finite by weakening the semantic conditions for datatyped literals so that IR need contain literal values only for literals which actually occur in G or E, or a single value in the value space if there are no such literals in the vocabulary. For RDF entailment, only the finite part of the RDF vocabulary which include those container membership properties which actually occur in the graphs need to be interpreted, and the second RDF semantic condition is weakened to apply only to values which are values of literals which actually occur in the vocabulary. For RDFS interpretations, again only that finite part of the infinite container membership property vocabulary which actually occurs in the graphs under consideration needs to be interpreted. In all these cases, a pre-interpretation of the vocabulary of a set of graphs may be extended to a full interpretation of the appropriate type without changing the truthvalues of any triples in the graphs.</p>
 <p>The whole semantics could be stated in terms of pre-interpretations, yielding the same entailments, and allowing finite RDF graphs to be interpreted in finite structures, if this <em>finite model property</em> is considered important.
 
 </section>
@@ -1141,7 +1148,7 @@
 <p>IF S entails E then a subgraph of S is an instance of E, so every IRI in E must occur in that subgraph, so must occur in S. QED.</p>
 
 <p class="fact">For any graph H, if sk(G) entails H there there is a graph H' such that G entails H' and H=sk(H').</p>
-<p>The skolemization mapping sk substitutes a unique new IRI for each blank node, so it is 1:1, so has an inverse. Define ks to be the inverse mapping which replaces each skolem IRI by a unique blank node, different from all other blank nodes. Since sk(G) entails H, a subgraph of sk(G) is an instance of H, say A(H) for some instance mapping A on the blank nodes in H. Then ks(A(H)) is a subgraph of G; and ks(A(H))=A(ks(H)) since the domains of A and ks are disjoint. So ks(H) has an instance which is a subgraph of G, so is entailed by G; and H=sk(ks(H)). QED.</p>
+<p>The skolemization mapping sk substitutes a unique new IRI for each blank node, so it is 1:1, so has an inverse. Define ks to be the inverse mapping which replaces each skolem IRI by the blank node it replaced. Since sk(G) entails H, a subgraph of sk(G) is an instance of H, say A(H) for some instance mapping A on the blank nodes in H. Then ks(A(H)) is a subgraph of G; and ks(A(H))=A(ks(H)) since the domains of A and ks are disjoint. So ks(H) has an instance which is a subgraph of G, so is entailed by G; and H=sk(ks(H)). QED.</p>
 
 <p class="fact">For any graph H which does not contain any of the "new" IRIs introduced into sk(G), sk(G) simply entails H if and only if G simply entails H.</p>
 <p>Using the terminology in the previous proof: if H does not contain any skolem IRIs, then H=ks(H). So if sk(G) entails H then G entails ks(H)=H; and if G entails H then sk(G) entails G entails H, so sk(G) entails H. QED.</p>
@@ -1384,7 +1391,7 @@
 <br/><br/>
   _:c1 rdf:first ex:aaa .<br/>
   _:c1 rdf:rest _:c2 .<br/>
-  <span > _:c2 rdf:first</span> ex:bbb .<br/>
+  _:c2 rdf:first ex:bbb .<br/>
   _:c2 rdf:rest rdf:nil . </code></p>
   <p>does not entail</p>
   
@@ -1405,7 +1412,7 @@
   _:666 rdf:rest rdf:nil . </code></p>
 
     
-<p>It is also possible to write a set of triples which underspecify a collection 
+<p>It is also possible to write a set of triples which under-specify a collection 
   by failing to specify its <code>rdf:rest</code> property value.</p>
 
     
@@ -1428,7 +1435,7 @@
 <h3><a id="rdfValue"></a>rdf:value</h3>
 <p>The intended use for <code>rdf:value</code> is explained 
   intuitively in the RDF Primer
-  document [[RDF-PRIMER]]. It is typically 
+  document [[!RDF-PRIMER]]. It is typically 
   used to identify a 'primary' or 'main' value of a property which has several 
   values, or has as its value a complex entity with several facets or properties 
   of its own.</p>