properties as nodes etc.

Hi folks,
I'm struggling with an implementation problem that is rooted in MT, so I was
hoping someone here might be able to shed light. What I'm having a problem
with is teasing out the inherent difference(s) between a node and arc in an
RDF graph. It's likely that I'm not seeing the wood for the trees, because
I'm trying to deal with these things from an OO point of view, and find it
difficult to hop between boxes.

If we have one node connected to another by an arc, what is the significance
(assuming legality) of using the arc as the end node of another
relationship? In other words, if we have a triple {s1, p1, o1}, what are the
possibilities/limitations meaningwise in {p1, p2, o2} and {s3, p3, p1}?

Taking this from another angle, if I have triple 1 {s1, p1, o1} and triple 2
{s2, p1, o2} and want to say that p1 in the first triple has an extra
characteristic not found in the second?

In the app I'm working on, I have a (OO) class Item, with subclasses Vertex
and Edge. It's easy enough to wrap/constrain these subclasses as RDF
properties and resources as distinct kinds of entities, each with a specific
range of roles. The problems start when I try to swap the roles around, and
continue when I try and deal with the class/instance divide of RDF and that
of OO. I want to avoid tying things completely to the RDF graph, which I
guess would have Property as an (OO) subclass of Resource, but I still want
to be able to (for example) transform an edge in one graph into a vertex in
another. So far I've been able to do quite a lot by working with a
generalized graph model and considering RDF as one interpretation, but at
this point things have stalled somewhat (in my mind at least ;-)

I suppose the root of my problem is not really having worked out whether
this kind of manipulation makes enough sense in the RDF model, or whether it
would be necessary/easier to remove the RDF glue first before transforming
(keeping only topological constraints), then reapplying (as appropriate)
RDF-model semantics. I've a feeling it should be possible to do this by
making a kind of canonical version of the RDF graph (including all the
assertions made in the relevant RDFS) and transforming that under RDF MT,
but here again the box-hopping OO/RDF class/instance things make me dizzy.

Suggestions very welcome.

Cheers,
Danny.






---
Danny Ayers
<stuff> http://www.isacat.net </stuff>

Received on Monday, 17 June 2002 06:07:36 UTC