Re: RDF and Logic Programming (and Hypergraphs)

Hi Jos,

> For the between example, would [usa between [canada pair mexico]]
> be a possible model?

Yes, this indeed nicely captures the USA focus in the "%"-comment of

between(mexico, usa, canada).   % The USA is between Mexico and Canada.

and can also be extended for the symmetry of `between' in the first and
third arguments by just using a symmetric pair relation.

But someone could exploit the between(Lower, Middle, Upper) signature in
the south-to-north sense, grouping these countries differently such as

[[mexico south usa] and [usa south canada]],  or even

[mexico south [usa south canada]],

or use some other permutation of nested triples. Also, `pair', `south',
`and', `argI' (from my previous email), and other new binary relations
can be avoided by just employing the above ternary `between' relation.

Moreover, for certain ternary relations there seems hardly any intuitive
binary reduction. Consider a purchase(Buyer, Object, Seller) relation.

For Horn relationships like

purchase(usa, alaska, russia).  % The USA purchased Alaska from Russia.

there seems no better binary reduction than (in nested triple notation)

[purchase relship [[purchase1 arg1 usa] and
                   [[purchase1 arg2 alaska] and [purchase1 arg3 russia]]]]

To visualize this you can use a graph:

                   ----------
                  |          |
                  |          |
                  | purchase |
                  |          |
                  |          |
                   ---------- 
                       |
               relship |
                       V
                   ----------
                  |          |
                  |          |
      ------------| purchase1|------------
     |            |          |            |
     | arg1       |          |            | arg3
     |             ----------             |
     |                 | arg2             |
     V                 V                  V
 --------           --------           --------
|        |         |        |         |        |
|        |         |        |         |        |
|   usa  |         | alaska |         | russia |
|        |         |        |         |        |
|        |         |        |         |        |
 --------           --------           --------

Or, for the original ternary relationship, again use a hypergraph:

 --------            --------          --------
|        |          |        |        |        |
|        |          |        |        |        |
|   usa  | purchase | alaska |        | russia |
|        |--------------------------->|        |
|        |          |        |        |        |
 --------            --------          --------

So, what would you think about an "N-ary RDF" where the triples in
"5. Formal Model for RDF" of http://www.w3.org/TR/REC-rdf-syntax/:

{pred, subj, obj}        or   pred(subj, obj)

are generalized to (N+1)-tuples:

{pred, arg1, ..., argN}  or   pred(arg1, ..., argN) ?

Best,
Harold

Received on Monday, 18 September 2000 13:54:25 UTC