InverseOf Property and Reasoning

1 view
Skip to first unread message

michael...@gmail.com

unread,
Sep 15, 2014, 12:29:27 PM9/15/14
to sta...@clarkparsia.com
Hello there,
I just tried to use the owl:inverseOf functionality but it seems that it's not working.

So here is the code:

INSERT DATA {
GRAPH <urn:semantic>
{
#    Object Properties
mb:author rdf:type owl:ObjectProperty .
mb:entry rdf:type owl:ObjectProperty .
mb:author owl:inverseOf mb:entry .


#    Individuals
 mb:alex mb:entry mb:cool_entry .
}
}


Making a query like this works:

SELECT *
FROM<urn:semanticss>
WHERE {
  ?user mb:entry ?entry 
}


Unfortunately the inverse query delivers no results:

SELECT *
FROM<urn:semanticss>
WHERE {
  ?entry mb:author ?user 
}



I hope somebody can help me with this problem, I've been working on it for a while.


Thank you all in advance.

Kind Regards,
Michael

Héctor Pérez-Urbina

unread,
Sep 15, 2014, 1:27:44 PM9/15/14
to stardog
What reasoning level are you using? Anything other than NONE and EL should work.

--
-- --
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



--
Best,
Héctor

Héctor Pérez-Urbina

unread,
Sep 15, 2014, 2:04:24 PM9/15/14
to stardog
By the way, we just noticed you're using <urn:semanticss> in the FROM clause, where it seems you should be using <urn:semantic>.

P.S. RDFS doesn't support inverses either.
--
Best,
Héctor

michael...@gmail.com

unread,
Sep 15, 2014, 8:02:03 PM9/15/14
to sta...@clarkparsia.com
I tried all reasoning Levels.

michael...@gmail.com

unread,
Sep 15, 2014, 8:04:01 PM9/15/14
to sta...@clarkparsia.com
I used the same urn:semantic Graph. Just a typo.

Héctor Pérez-Urbina

unread,
Sep 16, 2014, 9:42:13 AM9/16/14
to stardog
Dear Michael,

By default, Stardog looks in the default graph for the TBox (or schema part) of the database. Assuming you didn't modify any db properties and the data you inserted with the query is the only thing contained in the database, then the TBox would be empty, which would explain why the query that needs the inverseOf axiom is empty.

As mentioned in [1], you can change where the TBox resides by tweaking the property reasoning.schema.graphs. If the database test already exists and the data has been successfully inserted, you can set this property to all graphs as follows:

$ ./bin/stardog-admin db offline test
$ ./bin/stardog-admin metadata set -o reasoning.schema.graphs=tag:stardog:api:context:all test
$ ./bin/stardog-admin db online test

If this doesn't resolve the issue, we would need to know exactly the steps you follow to reproduce it (a snapshot of the terminal would be great).


On Mon, Sep 15, 2014 at 8:04 PM, <michael...@gmail.com> wrote:
I used the same urn:semantic Graph. Just a typo.
--
-- --
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



--
Best,
Héctor

michael...@gmail.com

unread,
Sep 16, 2014, 10:07:01 AM9/16/14
to sta...@clarkparsia.com
Dear Héctor,

Thank you so much! Your tweak actually solved the problem.

Finally we can go for reasoning! THX
Reply all
Reply to author
Forward
0 new messages