Re: properties as nodes etc.

Pat describes a very common way to encode n-ary relationships using binary
relations in the context of natural language processing. I think of his 
example as underlyingly being a four argument relationship, with the fourth 
argument being the identifier of the "anonymous node" in RDF.  Thus, one can 
have two (indefinite) descriptions

  a sitingsOn with agent=cat, object=mat, duration=hour.
  a sitingsOn with agent=cat, object=mat, duration=hour.

and it's ambiguous as to whether these two descriptions are of the same
or different events.  Each would be encoded as a different individual
of type sittingOn.  If we wanted to support this, which again can
be motivated by the demands of modeling the semantics of natural language
expressions, how would you do it?

Enrico Franconi wrote:
> On June 27, pat hayes writes:
> ...
> > One tried-and-tested idea is to introduce an explicit category of
> > events, and connect everything else to them.  Then your example
> > would look like this in Ntriples:
> >   _:x  rdf:type sittingsOn .
> >   _:x  agent cat .
> >   _:x  object mat .
> >   _:x  duration hour .
> > where you would also know that
> >     sittingsOn rdfs:subClassOf events .
> > and you could then say other things about that sitting as well, such
> > as why it happened and what its results were and who told you about
> > it, and so on. You could even say that it never happened or was imaginary.
> ...
> The above encoding of a ternary relation in a binary relational model
> (like RDF) would be wrong, and in fact it can not be done in RDF at
> all. In fact, you are missing the information that there is a unique
> instance of the ternary relation for each triple of arguments. So, the
> original information stated in the graph making use of the ternary
> relation says that given a cat, a mat, and a specific time, then there
> is a unique instance of the ternary relation (in this case, the event
> of sitting). In your weaker encoding, you may have more than one
> instance of the event for each tuple in the original n-ary
> relation. Clearly, you violate the semantics of n-ary relations, by
> admitting basically that a tuple may appear more than once in the
> relation.

Received on Sunday, 30 June 2002 12:47:42 UTC