Re: unreification

Jeez, reification is quite an issue !

IMPLEMENTATION-ORIENTED ANSWER

actually, in the Stanford API (I'm not sure about Jena),
statements are Resources and they have a URI.
That is, they are quite close to Graham Klyne's vision :

	S1	:[s, p, o, id]

where "id" is the URI of the (reified) statement.
I think this is a sane representation.
As soon as I assert S1 in a model, I *implicitely* assert

	S2	:[id, rdf:type, rdf:Statement]
	S3	:[id, rdf:subject, s]
	S4	:[id, rdf:predicate, p]
	S5	:[id, rdf:object, o]

Since the spec does not mandate any implementation scheme,
it is not contradictory with the spec to keep those statements implicit,
as long as they are generated in response to concerned requests.

Then what about a statement I did not assert (i.e. I do not believe) ?
Well, then we have statements S[2-5] without S1,
and there is no problem about removing only some of them,
since I may have only *partial* knowledge about a statement...


MODEL-ORIENTED ANSWER

More generaly,
my interpretation is that reification is not a process,
it is rather a *feature* of the RDF model :
it only means that Statements are Resources,
therefore they have a URI,
therefore RDF can describe them,
therefore we need a standard vocabulary for the properties common to every statement : its subject, its predicate and its object.

So you do not have to *perform* the reification,
(and even less an unreification)
just use the statement's URI if you want to describe it.

  Pierre-Antoine

Received on Friday, 17 November 2000 06:20:05 UTC