http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/main/resources/etc/owl.rules ---------------------------------------------------------------------- diff --git a/jena-core/src/main/resources/etc/owl.rules b/jena-core/src/main/resources/etc/owl.rules index 20e589a..2eb3282 100644 --- a/jena-core/src/main/resources/etc/owl.rules +++ b/jena-core/src/main/resources/etc/owl.rules @@ -1,305 +1,305 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -#------------------------------------------------------------------ -# OWL rule set v0.1 -# This rule set is design to implement owl(f)lite using pure -# forward chaining. It is sufficient to pass the working group tests -# for this OWL subset but some of the bug fixes applied to owl-fb -# have may not yet have migrated back here. -# $Id: $ -#------------------------------------------------------------------ - -#------------------------------------------------------------------ -# RDFS Axioms -#------------------------------------------------------------------ - --> (rdf:type rdfs:range rdfs:Class). --> (rdfs:Resource rdf:type rdfs:Class). --> (rdfs:Literal rdf:type rdfs:Class). --> (rdf:Statement rdf:type rdfs:Class). --> (rdf:nil rdf:type rdf:List). --> (rdf:subject rdf:type rdf:Property). --> (rdf:object rdf:type rdf:Property). --> (rdf:predicate rdf:type rdf:Property). --> (rdf:first rdf:type rdf:Property). --> (rdf:rest rdf:type rdf:Property). - --> (rdfs:subPropertyOf rdfs:domain rdf:Property). --> (rdfs:subClassOf rdfs:domain rdfs:Class). --> (rdfs:domain rdfs:domain rdf:Property). --> (rdfs:range rdfs:domain rdf:Property). --> (rdf:subject rdfs:domain rdf:Statement). --> (rdf:predicate rdfs:domain rdf:Statement). --> (rdf:object rdfs:domain rdf:Statement). --> (rdf:first rdfs:domain rdf:List). --> (rdf:rest rdfs:domain rdf:List). - --> (rdfs:subPropertyOf rdfs:range rdf:Property). --> (rdfs:subClassOf rdfs:range rdfs:Class). --> (rdfs:domain rdfs:range rdfs:Class). --> (rdfs:range rdfs:range rdfs:Class). --> (rdf:type rdfs:range rdfs:Class). --> (rdfs:comment rdfs:range rdfs:Literal). --> (rdfs:label rdfs:range rdfs:Literal). --> (rdf:rest rdfs:range rdf:List). - --> (rdf:Alt rdfs:subClassOf rdfs:Container). --> (rdf:Bag rdfs:subClassOf rdfs:Container). --> (rdf:Seq rdfs:subClassOf rdfs:Container). --> (rdfs:ContainerMembershipProperty rdfs:subClassOf rdf:Property). - --> (rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso). - --> (rdf:XMLLiteral rdf:type rdfs:Datatype). --> (rdfs:Datatype rdfs:subClassOf rdfs:Class). - -#------------------------------------------------------------------ -# RDFS Closure rules -#------------------------------------------------------------------ - -# This one could be omitted since the results are not really very interesting! -# [rdf1and4: (?x ?p ?y) -> (?p rdf:type rdf:Property), (?x rdf:type rdfs:Resource), (?y rdf:type rdfs:Resource)] -# [rdfs7b: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf rdfs:Resource)] - -[rdfs2: (?x ?p ?y), (?p rdfs:domain ?c) -> (?x rdf:type ?c)] -[rdfs3: (?x ?p ?y), (?p rdfs:range ?c) -> (?y rdf:type ?c)] -[rdfs5a: (?a rdfs:subPropertyOf ?b), (?b rdfs:subPropertyOf ?c) -> (?a rdfs:subPropertyOf ?c)] -[rdfs5b: (?a rdf:type rdf:Property) -> (?a rdfs:subPropertyOf ?a)] -[rdfs6: (?a ?p ?b), (?p rdfs:subPropertyOf ?q) -> (?a ?q ?b)] -[rdfs7: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf ?a)] -[rdfs8: (?a rdfs:subClassOf ?b), (?b rdfs:subClassOf ?c) -> (?a rdfs:subClassOf ?c)] -[rdfs9: (?x rdfs:subClassOf ?y), (?a rdf:type ?x) -> (?a rdf:type ?y)] -[rdfs10: (?x rdf:type rdfs:ContainerMembershipProperty) -> (?x rdfs:subPropertyOf rdfs:member)] - -#------------------------------------------------------------------ -# RDFS iff extensions needed for OWL -#------------------------------------------------------------------ -[rdfs2a: (?x rdfs:domain ?y), (?y rdfs:subClassOf ?z) -> (?x rdfs:domain ?z)] -[rdfs3a: (?x rdfs:range ?y), (?y rdfs:subClassOf ?z) -> (?x rdfs:range ?z)] - -#------------------------------------------------------------------ -# OWL axioms -#------------------------------------------------------------------ - --> (rdf:first rdf:type owl:FunctionalProperty). --> (rdf:rest rdf:type owl:FunctionalProperty). - --> (rdfs:domain owl:SymmetricProperty owl:ObjectProperty). --> (rdfs:domain owl:TransitiveProperty owl:ObjectProperty). --> (rdfs:domain owl:InverseFunctionalProperty owl:ObjectProperty). - --> (rdfs:range owl:ObjectProperty owl:Thing). --> (rdfs:domain owl:ObjectProperty owl:Thing). - --> (owl:Class rdfs:subClassOf rdfs:Class). --> (owl:Restriction rdfs:subClassOf owl:Class). - -# This is true in OWL-full but does lead to rather a lot of additional conclusions that -# are not helpful for the practical test cases, explore consequences of retricting -# closer to OWL/DL -#-> (rdfs:Class rdfs:subClassOf owl:Class). - --> (owl:Thing rdf:type owl:Class). - -# These might need to be pre-expanded in the initial rule set --> (owl:equivalentProperty rdf:type owl:SymmetricProperty). --> (owl:equivalentProperty rdf:type owl:TransitiveProperty). --> (owl:equivalentClass rdf:type owl:SymmetricProperty). --> (owl:equivalentClass rdf:type owl:TransitiveProperty). --> (owl:sameIndividualAs rdf:type owl:SymmetricProperty). --> (owl:sameIndividualAs rdf:type owl:TransitiveProperty). --> (owl:sameIndividualAs owl:equivalentProperty owl:sameAs). --> (owl:differentFrom rdf:type owl:SymmetricProperty). - --> (owl:intersectionOf rdfs:domain owl:Class). - -#------------------------------------------------------------------ -# OWL Rules -#------------------------------------------------------------------ - -#------------------------------------------------------------------ -# Class rules -# (Note: compiling intersectionOf to an n+1 rule set is done procedurally) -#------------------------------------------------------------------ - -# Identify restriction assertions - -[restriction1: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:someValuesFrom ?D) - -> (?C owl:equivalentClass some(?P, ?D))] - -[restriction2: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:allValuesFrom ?D) - -> (?C owl:equivalentClass all(?P, ?D))] - -[restriction3: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:minCardinality ?X) - -> (?C owl:equivalentClass min(?P, ?X))] - -[restriction4: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:maxCardinality ?X) - -> (?C owl:equivalentClass max(?P, ?X))] - -[restriction5: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:cardinality ?X) - -> (?C owl:equivalentClass card(?P, ?X)), - (?C rdfs:subClassOf min(?P, ?X)), - (?C rdfs:subClassOf max(?P, ?X)) ] - -[restriction6: (?C rdfs:subClassOf min(?P, ?X)), (?C rdfs:subClassOf max(?P, ?X)) - -> (?C rdfs:subClassOf card(?P, ?X))] - -# Needed for the case where ?R is a restriction literal and so does not appear in the subject position -# The isFunctor guard is temporary for performance, doesn't change semantics -[restrictionSubclass1: (?D owl:equivalentClass ?R), (?X rdf:type ?R), isFunctor(?R) -> (?X rdf:type ?D)] -[restrictionSubclass2: (?D owl:equivalentClass ?R), (?X rdf:type ?D), isFunctor(?R) -> (?X rdf:type ?R)] - -# Interactions between cardinalities and some/all - -[restrictionProc1: (?X rdf:type, max(?P, 1)), (?X, rdf:type, some(?P, ?C)) - -> (?X rdf:type all(?P, ?C))] - -[restrictionProc2: (?P rdf:type owl:FunctionalProperty), (?X, rdf:type, some(?P, ?C)) - -> (?X rdf:type all(?P, ?C))] - -[restrictionProc4: (?X rdf:type all(?P, ?C)), (?X ?P ?Y), notEqual(?P, rdf:type) - -> (?X rdf:type some(?P, ?C)), (?Y rdf:type ?C)] - -[restrictionProc5: (?P rdfs:range ?C), (?X ?P ?W), notFunctor(?C) -> (?X rdf:type some(?P, ?C))] - -[restrictionProc6: (?P rdfs:range ?C), (?D owl:equivalentClass all(?P, ?C)) - -> (owl:Thing rdfs:subClassOf ?D)] - -[restrictionProc7: (?A rdf:type max(?P, 1)), (?A ?P ?B), (?A ?P ?C) -> (?B owl:sameIndividualAs ?C)] - -[restrictionProc8: (?X rdf:type min(?P, 1)), (?X rdf:type max(?P, 0)) -> (?X rdf:type owl:Nothing)] - -[restrictionProc9: (?X ?P ?W), (?X rdf:type max(?P, 0)) -> (?X rdf:type owl:Nothing)] - -[restrictionProc10: (?X rdf:type some(?P, ?C)), noValue(?X, ?P), notEqual(?P, owl:sameIndividualAs), - notEqual(?P, rdfs:subClassOf), notEqual(?P, rdfs:subPropertyOf), - notEqual(?P, owl:equivalentProperty), notEqual(?P, owl:equivalentClass), - notEqual(?C, owl:Class), notEqual(?C, rdfs:Class), makeTemp(?T) - -> (?X ?P ?T), (?T rdf:type ?C)] - -# Best done backwards! -[restrictionProc11: (?P rdf:type owl:FunctionalProperty), (?X rdf:type owl:Thing) - -> (?X rdf:type max(?P, 1))] - -[restrictionProc12: (?P rdfs:range ?C), (?D rdf:type owl:Class), notFunctor(?C) - -> (?D rdfs:subClassOf all(?P, ?C)) ] - -[restrictionProc13: (owl:Thing rdfs:subClassOf all(?P, ?C)) - -> (?P rdfs:range ?C), (?P rdf:type owl:ObjectProperty)] - -[card3: (?X ?P ?V), (?V rdf:type ?C), notFunctor(?C) -> (?X rdf:type some(?P, ?C))] - -# Create prototypical instances for each class and infer any subclass relations -# This is better done as part of an explicit taxonomy building phase. - -[prototype1: (?c rdf:type owl:Class), noValue(?c, rb:prototype), makeTemp(?t) - -> (?c rb:prototype ?t), (?t rdf:type ?c)] - -[prototype2: (?c rb:prototype ?p), (?p rdf:type ?d), notEqual(?c, ?d) - -> (?c rdfs:subClassOf ?d)] - -#------------------------------------------------------------------ -# Disjointness and equivalence rules -#------------------------------------------------------------------ - -[distinct1: (?C owl:disjointWith ?D), (?X rdf:type ?C), (?Y rdf:type ?D) - -> (?X owl:differentFrom ?Y) ] - -# This one is best done backwards or with a dedicated equality reasoner -# Hacked for now just for completeness - -[distinct2: (?W owl:distinctMembers ?L) -> assertDisjointPairs(?L) ] - -# To be improved when resolve how to record contradictions - -[conflict1: (?X owl:sameIndividualAs ?Y), (?X owl:differentFrom ?Y) - -> contradiction('same/different', ?X, ?Y) ] - -[conflict2: (?X rdf:type ?C), (?X rdf:type ?D), (?C owl:disjointWith ?D) - -> contradiction('disjoint classes overlap', ?C, ?D, ?X) ] - -#------------------------------------------------------------------ -# Property rules -#------------------------------------------------------------------ - -# equivalentProperty - -[equivalentProperty1: (?P owl:equivalentProperty ?Q) - -> (?P rdfs:subPropertyOf ?Q), (?Q rdfs:subPropertyOf ?P) ] - -[equivalentProperty2: (?P rdfs:subPropertyOf ?Q), (?Q rdfs:subPropertyOf ?P) - -> (?P owl:equivalentProperty ?Q) ] - -[equivalentProperty3: (?P owl:sameAs ?Q), (?P rdf:type rdf:Property), (?Q rdf:type rdf:Property) - -> (?P owl:equivalentProperty ?Q) ] - -# equivalentClass -[equivalentClass1: (?P owl:equivalentClass ?Q) - -> (?P rdfs:subClassOf ?Q), (?Q rdfs:subClassOf ?P) ] - -[equivalentClass2: (?P rdfs:subClassOf ?Q), (?Q rdfs:subClassOf ?P) - -> (?P owl:equivalentClass ?Q) ] - -[equivalentClass3: (?P owl:sameAs ?Q), (?P rdf:type rdfs:Class), (?Q rdf:type rdfs:Class) - -> (?P owl:equivalentClass ?Q) ] - -# inverseOf -[inverseOf1: (?P owl:inverseOf ?Q) -> (?Q owl:inverseOf ?P) ] - -[inverseOf2: (?P owl:inverseOf ?Q), (?X ?P ?Y) -> (?Y ?Q ?X) ] - -[inverseOf3: (?P owl:inverseOf ?Q), (?P rdf:type owl:FunctionalProperty) - -> (?Q rdf:type owl:InverseFunctionalProperty) ] - -[inverseOf4: (?P owl:inverseOf ?Q), (?P rdf:type owl:InverseFunctionalProperty) - -> (?Q rdf:type owl:FunctionalProperty) ] - -# symmetric -[symmetricProperty1: (?P rdf:type owl:SymmetricProperty), (?X ?P ?Y) -> (?Y ?P ?X)] - - -# Transitive -[transitivePropery1: (?P rdf:type owl:TransitiveProperty), (?A ?P ?B), (?B ?P ?C) -> (?A ?P ?C)] - -# sameIndividualAs -[sameIndividualAs1: (?P rdf:type owl:FunctionalProperty), (?A ?P ?B), (?A ?P ?C) - -> (?B owl:sameIndividualAs ?C) ] - -[sameIndividualAs2: (?P rdf:type owl:InverseFunctionalProperty), (?A ?P ?B), (?C ?P ?B) - -> (?A owl:sameIndividualAs ?C) ] - -[sameIndividualAs3: (?X owl:sameAs ?Y), (?X rdf:type owl:Thing), (?Y rdf:type owl:Thing) - -> (?X owl:sameIndividualAs ?Y) ] - - -[sameIndividualAs4: (?X owl:sameIndividualAs ?Y), (?X ?P ?V) -> (?Y ?P ?V) ] - -[sameIndividualAs5: (?X owl:sameIndividualAs ?Y), (?V ?P ?X) -> (?V ?P ?Y) ] - -[sameIndividualAs6: (?X owl:sameIndividualAs ?Y) -> (?X rdf:type owl:Thing) ] - -# Don't yet handle reflexivity of sameIndividualAS - special case reasoner - -#------------------------------------------------------------------ -# if-only parts of additional constructs -#------------------------------------------------------------------ - -# hasValue -[hasValue1: (?c rdf:type owl:Restriction), (?c owl:onProperty ?p), (?c owl:hasValue ?v), - (?x rdf:type ?c) -> (?x ?p ?v) ] - - +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#------------------------------------------------------------------ +# OWL rule set v0.1 +# This rule set is design to implement owl(f)lite using pure +# forward chaining. It is sufficient to pass the working group tests +# for this OWL subset but some of the bug fixes applied to owl-fb +# have may not yet have migrated back here. +# $Id: $ +#------------------------------------------------------------------ + +#------------------------------------------------------------------ +# RDFS Axioms +#------------------------------------------------------------------ + +-> (rdf:type rdfs:range rdfs:Class). +-> (rdfs:Resource rdf:type rdfs:Class). +-> (rdfs:Literal rdf:type rdfs:Class). +-> (rdf:Statement rdf:type rdfs:Class). +-> (rdf:nil rdf:type rdf:List). +-> (rdf:subject rdf:type rdf:Property). +-> (rdf:object rdf:type rdf:Property). +-> (rdf:predicate rdf:type rdf:Property). +-> (rdf:first rdf:type rdf:Property). +-> (rdf:rest rdf:type rdf:Property). + +-> (rdfs:subPropertyOf rdfs:domain rdf:Property). +-> (rdfs:subClassOf rdfs:domain rdfs:Class). +-> (rdfs:domain rdfs:domain rdf:Property). +-> (rdfs:range rdfs:domain rdf:Property). +-> (rdf:subject rdfs:domain rdf:Statement). +-> (rdf:predicate rdfs:domain rdf:Statement). +-> (rdf:object rdfs:domain rdf:Statement). +-> (rdf:first rdfs:domain rdf:List). +-> (rdf:rest rdfs:domain rdf:List). + +-> (rdfs:subPropertyOf rdfs:range rdf:Property). +-> (rdfs:subClassOf rdfs:range rdfs:Class). +-> (rdfs:domain rdfs:range rdfs:Class). +-> (rdfs:range rdfs:range rdfs:Class). +-> (rdf:type rdfs:range rdfs:Class). +-> (rdfs:comment rdfs:range rdfs:Literal). +-> (rdfs:label rdfs:range rdfs:Literal). +-> (rdf:rest rdfs:range rdf:List). + +-> (rdf:Alt rdfs:subClassOf rdfs:Container). +-> (rdf:Bag rdfs:subClassOf rdfs:Container). +-> (rdf:Seq rdfs:subClassOf rdfs:Container). +-> (rdfs:ContainerMembershipProperty rdfs:subClassOf rdf:Property). + +-> (rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso). + +-> (rdf:XMLLiteral rdf:type rdfs:Datatype). +-> (rdfs:Datatype rdfs:subClassOf rdfs:Class). + +#------------------------------------------------------------------ +# RDFS Closure rules +#------------------------------------------------------------------ + +# This one could be omitted since the results are not really very interesting! +# [rdf1and4: (?x ?p ?y) -> (?p rdf:type rdf:Property), (?x rdf:type rdfs:Resource), (?y rdf:type rdfs:Resource)] +# [rdfs7b: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf rdfs:Resource)] + +[rdfs2: (?x ?p ?y), (?p rdfs:domain ?c) -> (?x rdf:type ?c)] +[rdfs3: (?x ?p ?y), (?p rdfs:range ?c) -> (?y rdf:type ?c)] +[rdfs5a: (?a rdfs:subPropertyOf ?b), (?b rdfs:subPropertyOf ?c) -> (?a rdfs:subPropertyOf ?c)] +[rdfs5b: (?a rdf:type rdf:Property) -> (?a rdfs:subPropertyOf ?a)] +[rdfs6: (?a ?p ?b), (?p rdfs:subPropertyOf ?q) -> (?a ?q ?b)] +[rdfs7: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf ?a)] +[rdfs8: (?a rdfs:subClassOf ?b), (?b rdfs:subClassOf ?c) -> (?a rdfs:subClassOf ?c)] +[rdfs9: (?x rdfs:subClassOf ?y), (?a rdf:type ?x) -> (?a rdf:type ?y)] +[rdfs10: (?x rdf:type rdfs:ContainerMembershipProperty) -> (?x rdfs:subPropertyOf rdfs:member)] + +#------------------------------------------------------------------ +# RDFS iff extensions needed for OWL +#------------------------------------------------------------------ +[rdfs2a: (?x rdfs:domain ?y), (?y rdfs:subClassOf ?z) -> (?x rdfs:domain ?z)] +[rdfs3a: (?x rdfs:range ?y), (?y rdfs:subClassOf ?z) -> (?x rdfs:range ?z)] + +#------------------------------------------------------------------ +# OWL axioms +#------------------------------------------------------------------ + +-> (rdf:first rdf:type owl:FunctionalProperty). +-> (rdf:rest rdf:type owl:FunctionalProperty). + +-> (rdfs:domain owl:SymmetricProperty owl:ObjectProperty). +-> (rdfs:domain owl:TransitiveProperty owl:ObjectProperty). +-> (rdfs:domain owl:InverseFunctionalProperty owl:ObjectProperty). + +-> (rdfs:range owl:ObjectProperty owl:Thing). +-> (rdfs:domain owl:ObjectProperty owl:Thing). + +-> (owl:Class rdfs:subClassOf rdfs:Class). +-> (owl:Restriction rdfs:subClassOf owl:Class). + +# This is true in OWL-full but does lead to rather a lot of additional conclusions that +# are not helpful for the practical test cases, explore consequences of retricting +# closer to OWL/DL +#-> (rdfs:Class rdfs:subClassOf owl:Class). + +-> (owl:Thing rdf:type owl:Class). + +# These might need to be pre-expanded in the initial rule set +-> (owl:equivalentProperty rdf:type owl:SymmetricProperty). +-> (owl:equivalentProperty rdf:type owl:TransitiveProperty). +-> (owl:equivalentClass rdf:type owl:SymmetricProperty). +-> (owl:equivalentClass rdf:type owl:TransitiveProperty). +-> (owl:sameIndividualAs rdf:type owl:SymmetricProperty). +-> (owl:sameIndividualAs rdf:type owl:TransitiveProperty). +-> (owl:sameIndividualAs owl:equivalentProperty owl:sameAs). +-> (owl:differentFrom rdf:type owl:SymmetricProperty). + +-> (owl:intersectionOf rdfs:domain owl:Class). + +#------------------------------------------------------------------ +# OWL Rules +#------------------------------------------------------------------ + +#------------------------------------------------------------------ +# Class rules +# (Note: compiling intersectionOf to an n+1 rule set is done procedurally) +#------------------------------------------------------------------ + +# Identify restriction assertions + +[restriction1: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:someValuesFrom ?D) + -> (?C owl:equivalentClass some(?P, ?D))] + +[restriction2: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:allValuesFrom ?D) + -> (?C owl:equivalentClass all(?P, ?D))] + +[restriction3: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:minCardinality ?X) + -> (?C owl:equivalentClass min(?P, ?X))] + +[restriction4: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:maxCardinality ?X) + -> (?C owl:equivalentClass max(?P, ?X))] + +[restriction5: (?C rdf:type owl:Restriction), (?C owl:onProperty ?P), (?C owl:cardinality ?X) + -> (?C owl:equivalentClass card(?P, ?X)), + (?C rdfs:subClassOf min(?P, ?X)), + (?C rdfs:subClassOf max(?P, ?X)) ] + +[restriction6: (?C rdfs:subClassOf min(?P, ?X)), (?C rdfs:subClassOf max(?P, ?X)) + -> (?C rdfs:subClassOf card(?P, ?X))] + +# Needed for the case where ?R is a restriction literal and so does not appear in the subject position +# The isFunctor guard is temporary for performance, doesn't change semantics +[restrictionSubclass1: (?D owl:equivalentClass ?R), (?X rdf:type ?R), isFunctor(?R) -> (?X rdf:type ?D)] +[restrictionSubclass2: (?D owl:equivalentClass ?R), (?X rdf:type ?D), isFunctor(?R) -> (?X rdf:type ?R)] + +# Interactions between cardinalities and some/all + +[restrictionProc1: (?X rdf:type, max(?P, 1)), (?X, rdf:type, some(?P, ?C)) + -> (?X rdf:type all(?P, ?C))] + +[restrictionProc2: (?P rdf:type owl:FunctionalProperty), (?X, rdf:type, some(?P, ?C)) + -> (?X rdf:type all(?P, ?C))] + +[restrictionProc4: (?X rdf:type all(?P, ?C)), (?X ?P ?Y), notEqual(?P, rdf:type) + -> (?X rdf:type some(?P, ?C)), (?Y rdf:type ?C)] + +[restrictionProc5: (?P rdfs:range ?C), (?X ?P ?W), notFunctor(?C) -> (?X rdf:type some(?P, ?C))] + +[restrictionProc6: (?P rdfs:range ?C), (?D owl:equivalentClass all(?P, ?C)) + -> (owl:Thing rdfs:subClassOf ?D)] + +[restrictionProc7: (?A rdf:type max(?P, 1)), (?A ?P ?B), (?A ?P ?C) -> (?B owl:sameIndividualAs ?C)] + +[restrictionProc8: (?X rdf:type min(?P, 1)), (?X rdf:type max(?P, 0)) -> (?X rdf:type owl:Nothing)] + +[restrictionProc9: (?X ?P ?W), (?X rdf:type max(?P, 0)) -> (?X rdf:type owl:Nothing)] + +[restrictionProc10: (?X rdf:type some(?P, ?C)), noValue(?X, ?P), notEqual(?P, owl:sameIndividualAs), + notEqual(?P, rdfs:subClassOf), notEqual(?P, rdfs:subPropertyOf), + notEqual(?P, owl:equivalentProperty), notEqual(?P, owl:equivalentClass), + notEqual(?C, owl:Class), notEqual(?C, rdfs:Class), makeTemp(?T) + -> (?X ?P ?T), (?T rdf:type ?C)] + +# Best done backwards! +[restrictionProc11: (?P rdf:type owl:FunctionalProperty), (?X rdf:type owl:Thing) + -> (?X rdf:type max(?P, 1))] + +[restrictionProc12: (?P rdfs:range ?C), (?D rdf:type owl:Class), notFunctor(?C) + -> (?D rdfs:subClassOf all(?P, ?C)) ] + +[restrictionProc13: (owl:Thing rdfs:subClassOf all(?P, ?C)) + -> (?P rdfs:range ?C), (?P rdf:type owl:ObjectProperty)] + +[card3: (?X ?P ?V), (?V rdf:type ?C), notFunctor(?C) -> (?X rdf:type some(?P, ?C))] + +# Create prototypical instances for each class and infer any subclass relations +# This is better done as part of an explicit taxonomy building phase. + +[prototype1: (?c rdf:type owl:Class), noValue(?c, rb:prototype), makeTemp(?t) + -> (?c rb:prototype ?t), (?t rdf:type ?c)] + +[prototype2: (?c rb:prototype ?p), (?p rdf:type ?d), notEqual(?c, ?d) + -> (?c rdfs:subClassOf ?d)] + +#------------------------------------------------------------------ +# Disjointness and equivalence rules +#------------------------------------------------------------------ + +[distinct1: (?C owl:disjointWith ?D), (?X rdf:type ?C), (?Y rdf:type ?D) + -> (?X owl:differentFrom ?Y) ] + +# This one is best done backwards or with a dedicated equality reasoner +# Hacked for now just for completeness + +[distinct2: (?W owl:distinctMembers ?L) -> assertDisjointPairs(?L) ] + +# To be improved when resolve how to record contradictions + +[conflict1: (?X owl:sameIndividualAs ?Y), (?X owl:differentFrom ?Y) + -> contradiction('same/different', ?X, ?Y) ] + +[conflict2: (?X rdf:type ?C), (?X rdf:type ?D), (?C owl:disjointWith ?D) + -> contradiction('disjoint classes overlap', ?C, ?D, ?X) ] + +#------------------------------------------------------------------ +# Property rules +#------------------------------------------------------------------ + +# equivalentProperty + +[equivalentProperty1: (?P owl:equivalentProperty ?Q) + -> (?P rdfs:subPropertyOf ?Q), (?Q rdfs:subPropertyOf ?P) ] + +[equivalentProperty2: (?P rdfs:subPropertyOf ?Q), (?Q rdfs:subPropertyOf ?P) + -> (?P owl:equivalentProperty ?Q) ] + +[equivalentProperty3: (?P owl:sameAs ?Q), (?P rdf:type rdf:Property), (?Q rdf:type rdf:Property) + -> (?P owl:equivalentProperty ?Q) ] + +# equivalentClass +[equivalentClass1: (?P owl:equivalentClass ?Q) + -> (?P rdfs:subClassOf ?Q), (?Q rdfs:subClassOf ?P) ] + +[equivalentClass2: (?P rdfs:subClassOf ?Q), (?Q rdfs:subClassOf ?P) + -> (?P owl:equivalentClass ?Q) ] + +[equivalentClass3: (?P owl:sameAs ?Q), (?P rdf:type rdfs:Class), (?Q rdf:type rdfs:Class) + -> (?P owl:equivalentClass ?Q) ] + +# inverseOf +[inverseOf1: (?P owl:inverseOf ?Q) -> (?Q owl:inverseOf ?P) ] + +[inverseOf2: (?P owl:inverseOf ?Q), (?X ?P ?Y) -> (?Y ?Q ?X) ] + +[inverseOf3: (?P owl:inverseOf ?Q), (?P rdf:type owl:FunctionalProperty) + -> (?Q rdf:type owl:InverseFunctionalProperty) ] + +[inverseOf4: (?P owl:inverseOf ?Q), (?P rdf:type owl:InverseFunctionalProperty) + -> (?Q rdf:type owl:FunctionalProperty) ] + +# symmetric +[symmetricProperty1: (?P rdf:type owl:SymmetricProperty), (?X ?P ?Y) -> (?Y ?P ?X)] + + +# Transitive +[transitivePropery1: (?P rdf:type owl:TransitiveProperty), (?A ?P ?B), (?B ?P ?C) -> (?A ?P ?C)] + +# sameIndividualAs +[sameIndividualAs1: (?P rdf:type owl:FunctionalProperty), (?A ?P ?B), (?A ?P ?C) + -> (?B owl:sameIndividualAs ?C) ] + +[sameIndividualAs2: (?P rdf:type owl:InverseFunctionalProperty), (?A ?P ?B), (?C ?P ?B) + -> (?A owl:sameIndividualAs ?C) ] + +[sameIndividualAs3: (?X owl:sameAs ?Y), (?X rdf:type owl:Thing), (?Y rdf:type owl:Thing) + -> (?X owl:sameIndividualAs ?Y) ] + + +[sameIndividualAs4: (?X owl:sameIndividualAs ?Y), (?X ?P ?V) -> (?Y ?P ?V) ] + +[sameIndividualAs5: (?X owl:sameIndividualAs ?Y), (?V ?P ?X) -> (?V ?P ?Y) ] + +[sameIndividualAs6: (?X owl:sameIndividualAs ?Y) -> (?X rdf:type owl:Thing) ] + +# Don't yet handle reflexivity of sameIndividualAS - special case reasoner + +#------------------------------------------------------------------ +# if-only parts of additional constructs +#------------------------------------------------------------------ + +# hasValue +[hasValue1: (?c rdf:type owl:Restriction), (?c owl:onProperty ?p), (?c owl:hasValue ?v), + (?x rdf:type ?c) -> (?x ?p ?v) ] + +
http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/main/resources/etc/rdfs.rules ---------------------------------------------------------------------- diff --git a/jena-core/src/main/resources/etc/rdfs.rules b/jena-core/src/main/resources/etc/rdfs.rules index c26c615..408e49e 100644 --- a/jena-core/src/main/resources/etc/rdfs.rules +++ b/jena-core/src/main/resources/etc/rdfs.rules @@ -1,83 +1,83 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -#------------------------------------------------------------------ -# RDFS rule set v0.1. -# This is a direct implementation of the RDFS closure rules. -# $Id: $ -#------------------------------------------------------------------ - -#------------------------------------------------------------------ -# RDFS Axioms -#------------------------------------------------------------------ - --> (rdf:type rdfs:range rdfs:Class). --> (rdfs:Resource rdf:type rdfs:Class). --> (rdfs:Literal rdf:type rdfs:Class). --> (rdf:Statement rdf:type rdfs:Class). --> (rdf:nil rdf:type rdf:List). --> (rdf:subject rdf:type rdf:Property). --> (rdf:object rdf:type rdf:Property). --> (rdf:predicate rdf:type rdf:Property). --> (rdf:first rdf:type rdf:Property). --> (rdf:rest rdf:type rdf:Property). - --> (rdfs:subPropertyOf rdfs:domain rdf:Property). --> (rdfs:subClassOf rdfs:domain rdfs:Class). --> (rdfs:domain rdfs:domain rdf:Property). --> (rdfs:range rdfs:domain rdf:Property). --> (rdf:subject rdfs:domain rdf:Statement). --> (rdf:predicate rdfs:domain rdf:Statement). --> (rdf:object rdfs:domain rdf:Statement). --> (rdf:first rdfs:domain rdf:List). --> (rdf:rest rdfs:domain rdf:List). - --> (rdfs:subPropertyOf rdfs:range rdf:Property). --> (rdfs:subClassOf rdfs:range rdfs:Class). --> (rdfs:domain rdfs:range rdfs:Class). --> (rdfs:range rdfs:range rdfs:Class). --> (rdf:type rdfs:range rdfs:Class). --> (rdfs:comment rdfs:range rdfs:Literal). --> (rdfs:label rdfs:range rdfs:Literal). --> (rdf:rest rdfs:range rdf:List). - --> (rdf:Alt rdfs:subClassOf rdfs:Container). --> (rdf:Bag rdfs:subClassOf rdfs:Container). --> (rdf:Seq rdfs:subClassOf rdfs:Container). --> (rdfs:ContainerMembershipProperty rdfs:subClassOf rdf:Property). - --> (rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso). - --> (rdf:XMLLiteral rdf:type rdfs:Datatype). --> (rdfs:Datatype rdfs:subClassOf rdfs:Class). - -#------------------------------------------------------------------ -# RDFS Closure rules -#------------------------------------------------------------------ - -# This one could be omitted since the results are not really very interesting! -[rdf1and4: (?x ?p ?y) -> (?p rdf:type rdf:Property), (?x rdf:type rdfs:Resource), (?y rdf:type rdfs:Resource)] -[rdfs7b: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf rdfs:Resource)] - -[rdfs2: (?x ?p ?y), (?p rdfs:domain ?c) -> (?x rdf:type ?c)] -[rdfs3: (?x ?p ?y), (?p rdfs:range ?c) -> (?y rdf:type ?c)] -[rdfs5a: (?a rdfs:subPropertyOf ?b), (?b rdfs:subPropertyOf ?c) -> (?a rdfs:subPropertyOf ?c)] -[rdfs5b: (?a rdf:type rdf:Property) -> (?a rdfs:subPropertyOf ?a)] -[rdfs6: (?a ?p ?b), (?p rdfs:subPropertyOf ?q) -> (?a ?q ?b)] -[rdfs7: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf ?a)] -[rdfs8: (?a rdfs:subClassOf ?b), (?b rdfs:subClassOf ?c) -> (?a rdfs:subClassOf ?c)] -[rdfs9: (?x rdfs:subClassOf ?y), (?a rdf:type ?x) -> (?a rdf:type ?y)] -[rdfs10: (?x rdf:type rdfs:ContainerMembershipProperty) -> (?x rdfs:subPropertyOf rdfs:member)] +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +#------------------------------------------------------------------ +# RDFS rule set v0.1. +# This is a direct implementation of the RDFS closure rules. +# $Id: $ +#------------------------------------------------------------------ + +#------------------------------------------------------------------ +# RDFS Axioms +#------------------------------------------------------------------ + +-> (rdf:type rdfs:range rdfs:Class). +-> (rdfs:Resource rdf:type rdfs:Class). +-> (rdfs:Literal rdf:type rdfs:Class). +-> (rdf:Statement rdf:type rdfs:Class). +-> (rdf:nil rdf:type rdf:List). +-> (rdf:subject rdf:type rdf:Property). +-> (rdf:object rdf:type rdf:Property). +-> (rdf:predicate rdf:type rdf:Property). +-> (rdf:first rdf:type rdf:Property). +-> (rdf:rest rdf:type rdf:Property). + +-> (rdfs:subPropertyOf rdfs:domain rdf:Property). +-> (rdfs:subClassOf rdfs:domain rdfs:Class). +-> (rdfs:domain rdfs:domain rdf:Property). +-> (rdfs:range rdfs:domain rdf:Property). +-> (rdf:subject rdfs:domain rdf:Statement). +-> (rdf:predicate rdfs:domain rdf:Statement). +-> (rdf:object rdfs:domain rdf:Statement). +-> (rdf:first rdfs:domain rdf:List). +-> (rdf:rest rdfs:domain rdf:List). + +-> (rdfs:subPropertyOf rdfs:range rdf:Property). +-> (rdfs:subClassOf rdfs:range rdfs:Class). +-> (rdfs:domain rdfs:range rdfs:Class). +-> (rdfs:range rdfs:range rdfs:Class). +-> (rdf:type rdfs:range rdfs:Class). +-> (rdfs:comment rdfs:range rdfs:Literal). +-> (rdfs:label rdfs:range rdfs:Literal). +-> (rdf:rest rdfs:range rdf:List). + +-> (rdf:Alt rdfs:subClassOf rdfs:Container). +-> (rdf:Bag rdfs:subClassOf rdfs:Container). +-> (rdf:Seq rdfs:subClassOf rdfs:Container). +-> (rdfs:ContainerMembershipProperty rdfs:subClassOf rdf:Property). + +-> (rdfs:isDefinedBy rdfs:subPropertyOf rdfs:seeAlso). + +-> (rdf:XMLLiteral rdf:type rdfs:Datatype). +-> (rdfs:Datatype rdfs:subClassOf rdfs:Class). + +#------------------------------------------------------------------ +# RDFS Closure rules +#------------------------------------------------------------------ + +# This one could be omitted since the results are not really very interesting! +[rdf1and4: (?x ?p ?y) -> (?p rdf:type rdf:Property), (?x rdf:type rdfs:Resource), (?y rdf:type rdfs:Resource)] +[rdfs7b: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf rdfs:Resource)] + +[rdfs2: (?x ?p ?y), (?p rdfs:domain ?c) -> (?x rdf:type ?c)] +[rdfs3: (?x ?p ?y), (?p rdfs:range ?c) -> (?y rdf:type ?c)] +[rdfs5a: (?a rdfs:subPropertyOf ?b), (?b rdfs:subPropertyOf ?c) -> (?a rdfs:subPropertyOf ?c)] +[rdfs5b: (?a rdf:type rdf:Property) -> (?a rdfs:subPropertyOf ?a)] +[rdfs6: (?a ?p ?b), (?p rdfs:subPropertyOf ?q) -> (?a ?q ?b)] +[rdfs7: (?a rdf:type rdfs:Class) -> (?a rdfs:subClassOf ?a)] +[rdfs8: (?a rdfs:subClassOf ?b), (?b rdfs:subClassOf ?c) -> (?a rdfs:subClassOf ?c)] +[rdfs9: (?x rdfs:subClassOf ?y), (?a rdf:type ?x) -> (?a rdf:type ?y)] +[rdfs10: (?x rdf:type rdfs:ContainerMembershipProperty) -> (?x rdfs:subPropertyOf rdfs:member)] http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ont-policy-test.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ont-policy-test.rdf b/jena-core/src/test/resources/ont-policy-test.rdf index 1102137..dfa320a 100644 --- a/jena-core/src/test/resources/ont-policy-test.rdf +++ b/jena-core/src/test/resources/ont-policy-test.rdf @@ -1,58 +1,58 @@ -<?xml version='1.0'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY jena 'http://jena.hpl.hp.com/schemas/'> - - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> - <!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'> - <!ENTITY base '&jena;2003/03/ont-manager'> - <!ENTITY ont '&base;#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs="&rdfs;" - xmlns ="&ont;" - xml:base ="&base;" -> - -<!-- - An augmented set of mappings for locally cached ontologies, used in the test scripts - - Author: Ian Dickinson, mailto:[email protected] - CVS: $Id: ont-policy.rdf,v 1.5 2003/11/06 17:37:24 ian_dickinson Exp $ ---> - -<DocumentManagerPolicy> - <!-- policy for controlling the document manager's behaviour --> - <processImports rdf:datatype="&xsd;boolean">true</processImports> - <cacheModels rdf:datatype="&xsd;boolean">true</cacheModels> -</DocumentManagerPolicy> - - -<OntologySpec> - <!-- local version of the OWL language ontology (in OWL) --> - <publicURI rdf:resource="http://www.w3.org/2002/07/owl" /> - <altURL rdf:resource="file:vocabularies/owl.owl" /> - <language rdf:resource="http://www.w3.org/2002/07/owl#" /> - <prefix rdf:datatype="&xsd;string">owl</prefix> -</OntologySpec> - -<OntologySpec> - <!-- local version of the RDFS vocabulary --> - <publicURI rdf:resource="http://www.w3.org/2000/01/rdf-schema" /> - <altURL rdf:resource="file:vocabularies/rdf-schema.rdf" /> - <language rdf:resource="http://www.w3.org/2000/01/rdf-schema#" /> - <prefix rdf:datatype="&xsd;string">rdfs</prefix> -</OntologySpec> - -<OntologySpec> - <publicURI rdf:resource="http://www.daml.org/2001/03/daml+oil" /> - <altURL rdf:resource="file:vocabularies/daml+oil.daml" /> - <language rdf:resource="http://www.daml.org/2001/03/daml+oil#" /> - <prefix rdf:datatype="&xsd;string">daml</prefix> -</OntologySpec> - - -</rdf:RDF> +<?xml version='1.0'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY jena 'http://jena.hpl.hp.com/schemas/'> + + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> + <!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'> + <!ENTITY base '&jena;2003/03/ont-manager'> + <!ENTITY ont '&base;#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs="&rdfs;" + xmlns ="&ont;" + xml:base ="&base;" +> + +<!-- + An augmented set of mappings for locally cached ontologies, used in the test scripts + + Author: Ian Dickinson, mailto:[email protected] + CVS: $Id: ont-policy.rdf,v 1.5 2003/11/06 17:37:24 ian_dickinson Exp $ +--> + +<DocumentManagerPolicy> + <!-- policy for controlling the document manager's behaviour --> + <processImports rdf:datatype="&xsd;boolean">true</processImports> + <cacheModels rdf:datatype="&xsd;boolean">true</cacheModels> +</DocumentManagerPolicy> + + +<OntologySpec> + <!-- local version of the OWL language ontology (in OWL) --> + <publicURI rdf:resource="http://www.w3.org/2002/07/owl" /> + <altURL rdf:resource="file:vocabularies/owl.owl" /> + <language rdf:resource="http://www.w3.org/2002/07/owl#" /> + <prefix rdf:datatype="&xsd;string">owl</prefix> +</OntologySpec> + +<OntologySpec> + <!-- local version of the RDFS vocabulary --> + <publicURI rdf:resource="http://www.w3.org/2000/01/rdf-schema" /> + <altURL rdf:resource="file:vocabularies/rdf-schema.rdf" /> + <language rdf:resource="http://www.w3.org/2000/01/rdf-schema#" /> + <prefix rdf:datatype="&xsd;string">rdfs</prefix> +</OntologySpec> + +<OntologySpec> + <publicURI rdf:resource="http://www.daml.org/2001/03/daml+oil" /> + <altURL rdf:resource="file:vocabularies/daml+oil.daml" /> + <language rdf:resource="http://www.daml.org/2001/03/daml+oil#" /> + <prefix rdf:datatype="&xsd;string">daml</prefix> +</OntologySpec> + + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ontology/list0.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ontology/list0.rdf b/jena-core/src/test/resources/ontology/list0.rdf index 1a1c6ef..2bbe1a6 100644 --- a/jena-core/src/test/resources/ontology/list0.rdf +++ b/jena-core/src/test/resources/ontology/list0.rdf @@ -1,20 +1,20 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ontology/list1.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ontology/list1.rdf b/jena-core/src/test/resources/ontology/list1.rdf index e402b1f..5c62e6d 100644 --- a/jena-core/src/test/resources/ontology/list1.rdf +++ b/jena-core/src/test/resources/ontology/list1.rdf @@ -1,21 +1,21 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ontology/list2.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ontology/list2.rdf b/jena-core/src/test/resources/ontology/list2.rdf index 2ec558c..5746ff1 100644 --- a/jena-core/src/test/resources/ontology/list2.rdf +++ b/jena-core/src/test/resources/ontology/list2.rdf @@ -1,22 +1,22 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ontology/list3.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ontology/list3.rdf b/jena-core/src/test/resources/ontology/list3.rdf index 004777f..70c5dc8 100644 --- a/jena-core/src/test/resources/ontology/list3.rdf +++ b/jena-core/src/test/resources/ontology/list3.rdf @@ -1,23 +1,23 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - <rdf:Description rdf:ID="c" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + <rdf:Description rdf:ID="c" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ontology/list4.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ontology/list4.rdf b/jena-core/src/test/resources/ontology/list4.rdf index c4d7ecd..4ad6644 100644 --- a/jena-core/src/test/resources/ontology/list4.rdf +++ b/jena-core/src/test/resources/ontology/list4.rdf @@ -1,24 +1,24 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - <rdf:Description rdf:ID="c" /> - <rdf:Description rdf:ID="d" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + <rdf:Description rdf:ID="c" /> + <rdf:Description rdf:ID="d" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/src/test/resources/ontology/list5.rdf ---------------------------------------------------------------------- diff --git a/jena-core/src/test/resources/ontology/list5.rdf b/jena-core/src/test/resources/ontology/list5.rdf index d0d573b..7bbaff0 100644 --- a/jena-core/src/test/resources/ontology/list5.rdf +++ b/jena-core/src/test/resources/ontology/list5.rdf @@ -1,25 +1,25 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - <rdf:Description rdf:ID="c" /> - <rdf:Description rdf:ID="d" /> - <rdf:Description rdf:ID="e" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + <rdf:Description rdf:ID="c" /> + <rdf:Description rdf:ID="d" /> + <rdf:Description rdf:ID="e" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/Turtle/build ---------------------------------------------------------------------- diff --git a/jena-core/testing/Turtle/build b/jena-core/testing/Turtle/build index 31bed10..3edd780 100644 --- a/jena-core/testing/Turtle/build +++ b/jena-core/testing/Turtle/build @@ -1,31 +1,31 @@ -#!/bin/bash -# Build vocabulary - -function syntaxCheck -{ - FILE="$1" - echo "Syntax check: $FILE" - n3 -n -rdf "$FILE" -} - -function proc -{ - TMP=TT - FILE="$1" - CLASS="$2" - NS="$3" - echo "Schemagen: $FILE" - schemagen --rdfs -i "$FILE" -n "$CLASS" -a "$NS" -o "$CLASS".java -e N3 - # Add imports - echo "package dev.turtle.test ;" >> "$TMP" - echo >>"$TMP" - cat "$CLASS".java >> "$TMP" - mv "$TMP" "$CLASS".java -} - -syntaxCheck TurtleTestVocab.ttl - -proc TurtleTestVocab.ttl TurtleTestVocab \ - "http://jena.hpl.hp.com/2005/12/test-turtle#" - +#!/bin/bash +# Build vocabulary + +function syntaxCheck +{ + FILE="$1" + echo "Syntax check: $FILE" + n3 -n -rdf "$FILE" +} + +function proc +{ + TMP=TT + FILE="$1" + CLASS="$2" + NS="$3" + echo "Schemagen: $FILE" + schemagen --rdfs -i "$FILE" -n "$CLASS" -a "$NS" -o "$CLASS".java -e N3 + # Add imports + echo "package dev.turtle.test ;" >> "$TMP" + echo >>"$TMP" + cat "$CLASS".java >> "$TMP" + mv "$TMP" "$CLASS".java +} + +syntaxCheck TurtleTestVocab.ttl + +proc TurtleTestVocab.ttl TurtleTestVocab \ + "http://jena.hpl.hp.com/2005/12/test-turtle#" + echo "mv TurtleTestVocab.java ../../src-dev/dev/turtle/test/" \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/arp/i18n/badbom8.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/arp/i18n/badbom8.rdf b/jena-core/testing/arp/i18n/badbom8.rdf index f087b71..bb36d5b 100644 --- a/jena-core/testing/arp/i18n/badbom8.rdf +++ b/jena-core/testing/arp/i18n/badbom8.rdf @@ -1,34 +1,34 @@ -<?xml version="1.0" encoding="iso-8859-1"?> -<!-- - Copyright World Wide Web Consortium, (Massachusetts Institute of - Technology, Institut National de Recherche en Informatique et en - Automatique, Keio University). - - All Rights Reserved. - - Please see the full Copyright clause at - <http://www.w3.org/Consortium/Legal/copyright-software.html> - - $Id: test001.rdf,v 1.1.1.1 2002/12/19 19:37:12 bwm Exp $ ---> -<!-- - - Assumed base URI: - -http://www.w3.org/2000/10/rdf-tests/rdfcore/rdfms-empty-property-elements/test001.rdf - - Description: - - The rdf:resource attribute means that the value of this property element - is a resource. - ---> -<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:random="http://random.ioctl.org/#"> - -<rdf:Description rdf:about="http://random.ioctl.org/#bar"> - <random:someProperty rdf:resource="http://random.ioctl.org/#foo" /> -</rdf:Description> - -</rdf:RDF> - +<?xml version="1.0" encoding="iso-8859-1"?> +<!-- + Copyright World Wide Web Consortium, (Massachusetts Institute of + Technology, Institut National de Recherche en Informatique et en + Automatique, Keio University). + + All Rights Reserved. + + Please see the full Copyright clause at + <http://www.w3.org/Consortium/Legal/copyright-software.html> + + $Id: test001.rdf,v 1.1.1.1 2002/12/19 19:37:12 bwm Exp $ +--> +<!-- + + Assumed base URI: + +http://www.w3.org/2000/10/rdf-tests/rdfcore/rdfms-empty-property-elements/test001.rdf + + Description: + + The rdf:resource attribute means that the value of this property element + is a resource. + +--> +<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:random="http://random.ioctl.org/#"> + +<rdf:Description rdf:about="http://random.ioctl.org/#bar"> + <random:someProperty rdf:resource="http://random.ioctl.org/#foo" /> +</rdf:Description> + +</rdf:RDF> + http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/arp/i18n/bom8.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/arp/i18n/bom8.rdf b/jena-core/testing/arp/i18n/bom8.rdf index e8fd930..2ad477f 100644 --- a/jena-core/testing/arp/i18n/bom8.rdf +++ b/jena-core/testing/arp/i18n/bom8.rdf @@ -1,33 +1,33 @@ -<!-- - Copyright World Wide Web Consortium, (Massachusetts Institute of - Technology, Institut National de Recherche en Informatique et en - Automatique, Keio University). - - All Rights Reserved. - - Please see the full Copyright clause at - <http://www.w3.org/Consortium/Legal/copyright-software.html> - - $Id: test001.rdf,v 1.1.1.1 2002/12/19 19:37:12 bwm Exp $ ---> -<!-- - - Assumed base URI: - -http://www.w3.org/2000/10/rdf-tests/rdfcore/rdfms-empty-property-elements/test001.rdf - - Description: - - The rdf:resource attribute means that the value of this property element - is a resource. - ---> -<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - xmlns:random="http://random.ioctl.org/#"> - -<rdf:Description rdf:about="http://random.ioctl.org/#bar"> - <random:someProperty rdf:resource="http://random.ioctl.org/#foo" /> -</rdf:Description> - -</rdf:RDF> - +<!-- + Copyright World Wide Web Consortium, (Massachusetts Institute of + Technology, Institut National de Recherche en Informatique et en + Automatique, Keio University). + + All Rights Reserved. + + Please see the full Copyright clause at + <http://www.w3.org/Consortium/Legal/copyright-software.html> + + $Id: test001.rdf,v 1.1.1.1 2002/12/19 19:37:12 bwm Exp $ +--> +<!-- + + Assumed base URI: + +http://www.w3.org/2000/10/rdf-tests/rdfcore/rdfms-empty-property-elements/test001.rdf + + Description: + + The rdf:resource attribute means that the value of this property element + is a resource. + +--> +<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:random="http://random.ioctl.org/#"> + +<rdf:Description rdf:about="http://random.ioctl.org/#bar"> + <random:someProperty rdf:resource="http://random.ioctl.org/#foo" /> +</rdf:Description> + +</rdf:RDF> + http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/arp/i18n/i18nID.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/arp/i18n/i18nID.rdf b/jena-core/testing/arp/i18n/i18nID.rdf index e1955de..2f52c51 100644 --- a/jena-core/testing/arp/i18n/i18nID.rdf +++ b/jena-core/testing/arp/i18n/i18nID.rdf @@ -1,26 +1,26 @@ -<?xml version="1.0" encoding="iso-8859-1"?> -<!-- - -Sourceforge bug 984001 - -http://sourceforge.net/tracker/?func=detail&aid=984001&group_id=40417&atid=430288 - - - - This file is iso-8859-1 encoded, and is the samne as the companion file. - ENTITY eacute CDATA "é" - latin small letter e with acute, - U+00E9 ISOlat1 - escaped UTF-8 of '�' is %C3%A9 - - '�' in ISO-8859-1 is 0xFC -ڀ is an arabic number sign. - -Note: this file fails to reproduce the reported bug. - ---> -<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" - > - - <rdf:Description rdf:ID="�gڀb�r" rdf:value="foo"/> - -</rdf:RDF> +<?xml version="1.0" encoding="iso-8859-1"?> +<!-- + +Sourceforge bug 984001 + +http://sourceforge.net/tracker/?func=detail&aid=984001&group_id=40417&atid=430288 + + + + This file is iso-8859-1 encoded, and is the samne as the companion file. + ENTITY eacute CDATA "é" - latin small letter e with acute, + U+00E9 ISOlat1 + escaped UTF-8 of '�' is %C3%A9 + + '�' in ISO-8859-1 is 0xFC +ڀ is an arabic number sign. + +Note: this file fails to reproduce the reported bug. + +--> +<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + > + + <rdf:Description rdf:ID="�gڀb�r" rdf:value="foo"/> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/arp/xml-prop.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/arp/xml-prop.rdf b/jena-core/testing/arp/xml-prop.rdf index 96067de..6047724 100644 --- a/jena-core/testing/arp/xml-prop.rdf +++ b/jena-core/testing/arp/xml-prop.rdf @@ -1,6 +1,6 @@ -<?xml version="1.0" encoding="utf-8"?> -<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> - <rdf:Description rdf:about="http://example.org/Test"> - <xml:property rdf:resource="http://example.org/Value" /> - </rdf:Description> +<?xml version="1.0" encoding="utf-8"?> +<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about="http://example.org/Test"> + <xml:property rdf:resource="http://example.org/Value" /> + </rdf:Description> </rdf:RDF> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/ontology/list0.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/ontology/list0.rdf b/jena-core/testing/ontology/list0.rdf index 1a1c6ef..2bbe1a6 100644 --- a/jena-core/testing/ontology/list0.rdf +++ b/jena-core/testing/ontology/list0.rdf @@ -1,20 +1,20 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/ontology/list1.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/ontology/list1.rdf b/jena-core/testing/ontology/list1.rdf index e402b1f..5c62e6d 100644 --- a/jena-core/testing/ontology/list1.rdf +++ b/jena-core/testing/ontology/list1.rdf @@ -1,21 +1,21 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/ontology/list2.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/ontology/list2.rdf b/jena-core/testing/ontology/list2.rdf index 2ec558c..5746ff1 100644 --- a/jena-core/testing/ontology/list2.rdf +++ b/jena-core/testing/ontology/list2.rdf @@ -1,22 +1,22 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/ontology/list3.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/ontology/list3.rdf b/jena-core/testing/ontology/list3.rdf index 004777f..70c5dc8 100644 --- a/jena-core/testing/ontology/list3.rdf +++ b/jena-core/testing/ontology/list3.rdf @@ -1,23 +1,23 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - <rdf:Description rdf:ID="c" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + <rdf:Description rdf:ID="c" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/ontology/list4.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/ontology/list4.rdf b/jena-core/testing/ontology/list4.rdf index c4d7ecd..4ad6644 100644 --- a/jena-core/testing/ontology/list4.rdf +++ b/jena-core/testing/ontology/list4.rdf @@ -1,24 +1,24 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - <rdf:Description rdf:ID="c" /> - <rdf:Description rdf:ID="d" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + <rdf:Description rdf:ID="c" /> + <rdf:Description rdf:ID="d" /> + </p> +</rdf:Description> + +</rdf:RDF> http://git-wip-us.apache.org/repos/asf/jena/blob/3d70d735/jena-core/testing/ontology/list5.rdf ---------------------------------------------------------------------- diff --git a/jena-core/testing/ontology/list5.rdf b/jena-core/testing/ontology/list5.rdf index d0d573b..7bbaff0 100644 --- a/jena-core/testing/ontology/list5.rdf +++ b/jena-core/testing/ontology/list5.rdf @@ -1,25 +1,25 @@ -<?xml version='1.0' encoding='ISO-8859-1'?> - -<!DOCTYPE rdf:RDF [ - <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> - <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> -]> - -<rdf:RDF - xmlns:rdf ="&rdf;" - xmlns:rdfs ="&rdfs;" - xml:base ="uri:urn:x-rdf:test" - xmlns ="uri:urn:x-rdf:test#" -> - -<rdf:Description rdf:ID="root"> - <p rdf:parseType="Collection"> - <rdf:Description rdf:ID="a" /> - <rdf:Description rdf:ID="b" /> - <rdf:Description rdf:ID="c" /> - <rdf:Description rdf:ID="d" /> - <rdf:Description rdf:ID="e" /> - </p> -</rdf:Description> - -</rdf:RDF> +<?xml version='1.0' encoding='ISO-8859-1'?> + +<!DOCTYPE rdf:RDF [ + <!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'> + <!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'> +]> + +<rdf:RDF + xmlns:rdf ="&rdf;" + xmlns:rdfs ="&rdfs;" + xml:base ="uri:urn:x-rdf:test" + xmlns ="uri:urn:x-rdf:test#" +> + +<rdf:Description rdf:ID="root"> + <p rdf:parseType="Collection"> + <rdf:Description rdf:ID="a" /> + <rdf:Description rdf:ID="b" /> + <rdf:Description rdf:ID="c" /> + <rdf:Description rdf:ID="d" /> + <rdf:Description rdf:ID="e" /> + </p> +</rdf:Description> + +</rdf:RDF>
