- From: Graham Klyne <GK@ninebynine.org>
- Date: Fri, 21 Jun 2002 16:40:14 +0100
- To: "Danny Ayers" <danny666@virgilio.it>
- Cc: <www-rdf-logic@w3.org>
I don't know if this helps, but I wrestled with something similar a while ago. When you have a triple: subj prop obj the 'subj'/'obj' and 'prop' play different roles: the subj and obj URIrefs identify specific nodes, so that if you have: s p1 o1 s p2 o2 the very same graph node 's' is included both triples. Similarly for the object of a triple. But, the property URIref behaves differently; e.g. s1 p o1 s2 p o2 In this case, the arcs labelled 'p' are different arcs, despite having the same label. A way to view this is that where the node identifiers in a triple are instance identifers, the arc identifier is a *type* identifier, and the graph arc can be viewed as an *instance* of the type thus identified. To echo Seth's comment, then, the arc is not identified by the arc label alone; it might be viewed as being identified by the combination of two endpoint nodes AND the arc label. #g At 12:00 PM 6/17/02 +0200, Danny Ayers wrote: >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> ------------------- Graham Klyne <GK@NineByNine.org>
Received on Friday, 21 June 2002 11:31:04 UTC