@prefix base: <http://a.b.c/Ont1#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix stardog: <tag:stardog:api:> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<http://a.b.c/Ont1> {
<http://a.b.c/Ont1> a owl:Ontology .
base:T a owl:ObjectProperty .
base:R a owl:ObjectProperty .
base:P a owl:ObjectProperty ;
rdfs:subPropertyOf base:R ;
rdfs:range base:Ob ;
rdfs:domain base:Sub .
base:Ob a owl:Class .
base:Sub a owl:Class .
base:PP a owl:ObjectProperty ;
rdfs:subPropertyOf base:P ;
rdfs:range base:Ob ;
rdfs:domain base:Sub .
base:PPP a owl:ObjectProperty ;
rdfs:subPropertyOf base:PP ;
rdfs:range base:Ob ;
rdfs:domain base:Sub .
base:Q a owl:ObjectProperty ;
owl:inverseOf base:P .
base:QQ a owl:ObjectProperty ;
rdfs:subPropertyOf base:Q ;
owl:inverseOf base:PP .
base:QQQ a owl:ObjectProperty ;
rdfs:subPropertyOf base:QQ ;
owl:inverseOf base:PPP .
base:o1 a base:Ob , owl:NamedIndividual .
base:o2 a base:Ob , owl:NamedIndividual .
base:o3 a base:Ob , owl:NamedIndividual .
base:s1 a base:Sub , owl:NamedIndividual ;
base:PPP base:o1 .
base:s2 a base:Sub , owl:NamedIndividual ;
base:PPP base:o2 .
base:s3 a base:Sub , owl:NamedIndividual ;
base:T base:o3 ;
base:PPP base:o3 .
}
PREFIX base: <http://a.b.c/Ont1#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX base: <http://a.b.c/Ont1#>
SELECT ?g1 ?g2 ?s ?p ?o
FROM <http://a.b.c/Ont1>
WHERE {
GRAPH <http://a.b.c/Ont1> {
?p a owl:ObjectProperty .
OPTIONAL {
?p rdfs:subPropertyOf base:R .
?s ?p ?o .
}
}
}
0: [p=http://www.w3.org/2002/07/owl#topObjectProperty]
1: [p=http://a.b.c/Ont1#Q]
2: [p=http://a.b.c/Ont1#QQ]
3: [p=http://a.b.c/Ont1#QQQ]
4: [p=http://www.w3.org/2002/07/owl#bottomObjectProperty]
5: [p=http://a.b.c/Ont1#QQQ]
6: [p=http://a.b.c/Ont1#T]
7: [p=http://a.b.c/Ont1#R]
8: [p=http://a.b.c/Ont1#P]
9: [p=http://a.b.c/Ont1#PP]
10: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s1;o=http://a.b.c/Ont1#o1]
11: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s1;o=http://a.b.c/Ont1#o1]
12: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s2;o=http://a.b.c/Ont1#o2]
13: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s2;o=http://a.b.c/Ont1#o2]
14: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s3;o=http://a.b.c/Ont1#o3]
15: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s3;o=http://a.b.c/Ont1#o3]
16: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s1;o=http://a.b.c/Ont1#o1]
17: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s1;o=http://a.b.c/Ont1#o1]
18: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s2;o=http://a.b.c/Ont1#o2]
19: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s2;o=http://a.b.c/Ont1#o2]
20: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s3;o=http://a.b.c/Ont1#o3]
21: [p=http://a.b.c/Ont1#PPP;s=http://a.b.c/Ont1#s3;o=http://a.b.c/Ont1#o3]
22: [p=http://a.b.c/Ont1#PP]
s p o
---------
s1 R o1
s2 R o2
s3 R o3
s1 P o1
s2 P o2
s3 P o3
s1 PP o1
s2 PP o2
s3 PP o3
o1 Q s1
o2 Q s2
o3 Q s13
o1 QQ s1
o2 QQ s2
o3 QQ s13
o1 QQQ s1
o2 QQQ s2
o3 QQQ s13
--
-- --
You received this message because you are subscribed to the C&P "Stardog" group.
To post to this group, send email to sta...@clarkparsia.com
To unsubscribe from this group, send email to
stardog+u...@clarkparsia.com
For more options, visit this group at
http://groups.google.com/a/clarkparsia.com/group/stardog?hl=en
PREFIX base: <http://a.b.c/Ont1#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX base: <http://a.b.c/Ont1#>
SELECT ?s ?p ?o
FROM NAMED <http://a.b.c/Ont1>
WHERE {
GRAPH <http://a.b.c/Ont1> {
?p a owl:ObjectProperty .
OPTIONAL {
?p a owl:ObjectProperty .
?s ?p ?o .
}
}
}
0: [p=http://www.w3.org/2002/07/owl#topObjectProperty]
1: [p=R]
2: [p=PP]
3: [p=PPP; s=s1; o=o1]
4: [p=PPP; s=s1; o=o1]
5: [p=PPP; s=s2; o=o2]
6: [p=PPP; s=s2; o=o2]
7: [p=PPP; s=s3; o=o3]
8: [p=PPP; s=s3; o=o3]
9: [p=http://www.w3.org/2002/07/owl#bottomObjectProperty]
10: [p=P]
11: [p=PPP; s=s1; o=o1]
12: [p=PPP; s=s1; o=o1]
13: [p=PPP; s=s2; o=o2]
14: [p=PPP; s=s2; o=o2]
15: [p=PPP; s=s3; o=o3]
16: [p=PPP; s=s3; o=o3]
17: [p=T; s=s3; o=o3]
18: [p=Q]
19: [p=QQ]
20: [p=QQQ]
21: [p=QQQ]
s p o
---------
s1 R o1
s2 R o2
s3 R o3
s1 P o1
s2 P o2
s3 P o3
s1 PP o1
s2 PP o2
s3 PP o3
o1 Q s1
o2 Q s2
o3 Q s3
o1 QQ s1
o2 QQ s2
o3 QQ s3
o1 QQQ s1
o2 QQQ s2
o3 QQQ s3
Tried DL and QL reasoning
@prefix base: <http://a.b.c/Ont1#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix stardog: <tag:stardog:api:> .
@prefix sub: <http://a.b.c/Ont1/Values#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<http://a.b.c/Ont1> {
<http://a.b.c/Ont1> a owl:Ontology .
base:T a owl:ObjectProperty .
base:R a owl:ObjectProperty .
base:P a owl:ObjectProperty ;
rdfs:subPropertyOf base:R ;
rdfs:range base:Ob ;
rdfs:domain base:Sub .
base:Ob a owl:Class .
base:Sub a owl:Class .
base:PP a owl:ObjectProperty ;
rdfs:subPropertyOf base:P ;
rdfs:range base:Ob ;
rdfs:domain base:Sub .
base:PPP a owl:ObjectProperty ;
rdfs:subPropertyOf base:PP ;
rdfs:range base:Ob ;
rdfs:domain base:Sub .
base:Q a owl:ObjectProperty ;
rdfs:subPropertyOf base:R ;
owl:inverseOf base:P .
base:QQ a owl:ObjectProperty ;
rdfs:subPropertyOf base:Q ;
owl:inverseOf base:PP .
base:QQQ a owl:ObjectProperty ;
rdfs:subPropertyOf base:QQ ;
owl:inverseOf base:PPP .
}
<http://a.b.c/Ont1/Values> {
base:o1 a base:Ob , owl:NamedIndividual .
base:o2 a base:Ob , owl:NamedIndividual .
base:o3 a base:Ob , owl:NamedIndividual .
base:s1 a base:Sub , owl:NamedIndividual ;
base:PPP base:o1 .
base:s2 a base:Sub , owl:NamedIndividual ;
base:PPP base:o2 .
base:s3 a base:Sub , owl:NamedIndividual ;
base:T base:o3 ;
base:PPP base:o3 .
}
PREFIX base: <http://a.b.c/Ont1#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX base: <http://a.b.c/Ont1#>
SELECT ?s ?p ?
o
FROM <http://a.b.c/Ont1>
FROM <http://a.b.c/Ont1/Values>
WHERE {
GRAPH <http://a.b.c/Ont1> {
?p a owl:ObjectProperty .
}
OPTIONAL {
GRAPH <http://a.b.c/Ont1/Values> {
?p a owl:ObjectProperty .
?s ?p ?o .
}
}
}
0: [p=http://www.w3.org/2002/07/owl#topObjectProperty]
1: [p=T;s=s3;o=o3]
2: [p=http://www.w3.org/2002/07/owl#bottomObjectProperty]
3: [p=R]
4: [p=P]
5: [p=PP]
6: [p=PPP; s=s1; o=o1]
7: [p=PPP; s=s1; o=o1]
8: [p=PPP; s=s2; o=o2]
9: [p=PPP; s=s2; o=o2]
10: [p=PPP; s=s3; o=o3]
11: [p=PPP; s=s3; o=o3]
12: [p=PP]
13: [p=PPP; s=s1; o=o1]
14: [p=PPP; s=s1; o=o1]
15: [p=PPP; s=s2; o=o2]
16: [p=PPP; s=s2; o=o2]
17: [p=PPP; s=s3; o=o3]
18: [p=PPP; s=s3; o=o3]
19: [p=Q]
20: [p=QQ]
21: [p=QQQ]
22: [p=QQQ]
--
-- --
You received this message because you are subscribed to the C&P "Stardog" group.
To post to this group, send email to sta...@clarkparsia.com
To unsubscribe from this group, send email to
stardog+u...@clarkparsia.com
For more options, visit this group at
http://groups.google.com/a/clarkparsia.com/group/stardog?hl=en
--
-- --
You received this message because you are subscribed to the C&P "Stardog" group.
To post to this group, send email to sta...@clarkparsia.com
To unsubscribe from this group, send email to
stardog+u...@clarkparsia.com
For more options, visit this group at
http://groups.google.com/a/clarkparsia.com/group/stardog?hl=en
--
-- --
You received this message because you are subscribed to the C&P "Stardog" group.
To post to this group, send email to sta...@clarkparsia.com
To unsubscribe from this group, send email to
stardog+u...@clarkparsia.com
For more options, visit this group at
http://groups.google.com/a/clarkparsia.com/group/stardog?hl=en
Thanks Hector.Does this mean there is currently no way to do DL reasoning on a schema, and then query instance data incorporating those results? Without using one of the following :
3: Find/write appropriate rules for the DL aspects of the schema and then use SL reasoning to emulate DL reasoning (will not be complete without being schema-specific)1: Split the query into 2 queries and manually pass intermediate results (1 DL query to the schema, and a non-DL query to the instance data)?2: Fully DL reason and materialise the schema ?2a: Materialise the DL aspects of the Schema ?4: Embed DL-specific extensions in the query to emulate DL reasoning (will not be complete without being schema-specific)Thanks,John
On Tuesday, July 8, 2014 2:34:47 PM UTC+1, Hector Perez Urbina wrote:Oh, mystery solved. DL works for TBox queries only; that is, queries over the schema-part of the ontology [1].