Search the web
Sign In
New User? Sign Up
jena-dev · Jena Developers
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Message search is now enhanced, find messages faster. Take it for a spin.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
Still confused with reification (long).   Message List  
Reply | Forward Message #25716 of 42067 |
Re: [jena-dev] Re: Still confused with reification (long).

[I stared to reply to this, but must have hit send by accident halfway
through and the mail got lost. I mention this in case you end up with
two responses, one more garbled than the other.]

Contact DaTao.net wrote:
> Ok.
> So I will try to explain my model in a OWL manner.
>
> My model is described in OWL 1.0.
> The model is written by hand.
> The model is to be loaded by Jena, and fully exploitable.

Basically I was wrong to suggest that using RDF reification would put
you outside OWL/DL into OWL/full. Sorry about that. Because the RDF
reification vocabulary has no actual semantics then there is no
semantics to conflict with the OWL semantics and so no problems. See

http://www.w3.org/TR/owl-semantics/mapping.html#4.2

So you can in fact use RDF reification quite happily and it will not put
you outside OWL/DL and so shouldn't upset any OWL reasoners like Pellet.

> Here are some details about my data:
> I have some (instance of"X" "have a" instance of"Y") statements.
> I need to give "details" about those statement.
>
> For example, I need my ontology to manage "comments" about statements:
> ("instX1" "have a" "instY2")
> ((("instX1" "have a" "instY2") isCommented "it is bullshit") dc:author Mike )
> ("instX1" "have a" "instY2")
> ((("instX1" "have a" "instY2") isCommented "this is the other 'have
> a' relationship between X1 and Y2, different from the one commented by
> Mike.") dc:author John )

You can, as your bracket nesting suggests, reify (instX1 haveA instY2),
attach the isCommented property to that reified statement, then reify
the isCommented statement and attach the author to it.

Personally I would just do one reification (of (instX1 haveA instY2))
and attach to that reification an isCommented property which in turn
points to a bNode which has several properties such as the comment, who
made it, when they made it, in what context etc. That seems more
flexible and easier to work with than nested reifications. In particular
when you want multiple properties about a comment (author and date).

In N3 this would then look like:

:instX1 :haveA :instY2.
_:s1 a rdf:Statement; rdf:subject :instX1;
rdf:predicate :haveA; rdf:object :instY2 .
_:s1 :isComment [a :Comment; dc:author "mike"; dc:date "..." etc].

As you said earlier, in RDF/XML there is a neat shortcut that you can
put an rdf:ID tag on the property element in a statement to create the
four reification triples out of sight.

See example 20 in http://www.w3.org/TR/rdf-primer/#reification

My suggest of using a :Comment resource with multiple properties is just
a matter of taste and if you want to reify the statement about the
reified statement in the nested way you have suggested then fine, that's
legal too.

> How can I describe such a graph of data in the OWL1.0 language?
>
> FYI, here is my real-life need:
> my ontology must handle "conditions of validity" for statements:
> (("instX1" "have a" "instY2") hasCondition conditionX)
> (conditionX evaluatedTo "valid")
>
> (then my rule engine will discard any statement (instance of"X" "have
> a" instance of"Y") whose "condition of validity" is evaluated to
> "invalid").
>
> How can I describe this graph of data in the OWL1.0 language?

See above.

> Note: these data should be fully described in OWL1.0, and be fully
> exploitable in Jena : the graph of data is described in a OWL1.0 file,
> loaded in Jena, and my app (using either the API or maybe SPARQL) can
> answer queries such as "list statements ("instX1" "have a" "instY2")
> whose (conditionX evaluatedTo 'valid')".

All fine.

Dave




Thu Oct 12, 2006 8:28 pm

derihy
Offline Offline
Send Email Send Email

Forward
Message #25716 of 42067 |
Expand Messages Author Sort by Date

I use a OntModel; - 2 classes X and Y. - one property hasA that links X instances to Y instances. I have individuals: - 1 instance instX (of type X) - 1 instY...
Contact DaTao.net
olivier.rossel@...
Send Email
Oct 12, 2006
1:07 pm

... OK. (Shouldn't it be called `hasY`?) ... OK. ... What for? ... I don't know what "manage reification natively" means. ... I don't know, since I don't know...
Chris Dollin
kers_ihy
Offline Send Email
Oct 12, 2006
1:24 pm

Ok. So I will try to explain my model in a OWL manner. My model is described in OWL 1.0. The model is written by hand. The model is to be loaded by Jena, and...
Contact DaTao.net
olivier.rossel@...
Send Email
Oct 12, 2006
2:28 pm

... It turns out, I was wrong to suggest that using the reification vocabulary puts you outside OWL/DL into OWL/full. Sorry about that. Because RDF doesn't...
Dave Reynolds
derihy
Offline Send Email
Oct 12, 2006
8:15 pm

[I stared to reply to this, but must have hit send by accident halfway through and the mail got lost. I mention this in case you end up with two responses, one...
Dave Reynolds
derihy
Offline Send Email
Oct 12, 2006
8:53 pm

... put ... But is this really the case? First, I want to mention that I read the section in OWL-Semantics cited by you above and find it a little vague, so I...
Michael Schneider
m_schnei1992
Offline Send Email
Oct 13, 2006
2:44 pm

... I think you mean 'rdf:Statement' ... Ah but an OWL reasoner doesn't know anything about rdf:Statement at all so just that model will validate as OWL/full...
Dave Reynolds
derihy
Offline Send Email
Oct 13, 2006
3:17 pm

... Oh, I see! Yes, there are several RDF constructs which OWL does not know about, and rdf:{Statement|subject|predicate|object} are such unknown things. I...
Michael Schneider
m_schnei1992
Offline Send Email
Oct 16, 2006
4:30 pm

... No, it is rather different from that. Because OWL is *encoded* in RDF there are a lot of restrictions on where you can use RDF constructs for fear of their...
Dave Reynolds
derihy
Offline Send Email
Oct 16, 2006
7:22 pm

... Chris is right to point out the ambiguity in your specification but assuming you really do mean to annotate the relationships then yes you would have to...
Dave Reynolds
derihy
Offline Send Email
Oct 12, 2006
3:15 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help