Re: rdf as a base for other languages

Jonathan Borden wrote:
> 
> ...
> 
> The problem is the term 'ground fact' and the way it is equated with the
> simple _presence_ of a triple in RDF. In so doing, RDF uses up what a _fact_
> is. For example, a new language or an extension of RDF might wish to equate
> a fact with an expression constructed of multiple triples e.g. a subgraph.
> But RDF does not allow the assertion of a subgraph without asserting every
> triple in the subgraph.

That seems to be true, but the questions are how you "express" what you
want to model and how you "interpret" (in the sense of giving it a
menaing in a universe of discourse) the resulting graph (is this
prescribed in RDF?). Let me be more specific along your example:

>
> Hence what should be a simple construct:
> 
> (not (color sky blue))
> 
> becomes contorted. 

Yes, if you model this as (for example):

[sky color blue]
[r type statement][r subject sky][r predicate color][r object blue]
[r hasTruthvalue not]

it becomes a little bit diffult* (see additional remark below, if you
like).

However, you may adopt a practice that RDF M&S suggests: 

"A statement and its corresponding reified statement 
 exist independently in an RDF graph and either may 
 be present without the other. The RDF graph is said 
 to contain the fact given in the statement if and 
 only if the statement is present in the graph,
 irrespective of whether the corresponding reified is present."

and simply leave out the [sky color bue]-triple from the above set of
triples.

> ...
> 
> If RDF did not direct that a triple is and is always a fact, then other
> languages with use RDF would be free to define what are and are not facts.
>

Hm, if we would take RDF as a way to write down triples, then, upon
reading an RDF document, we can take it as a fact that a triple has been
written down. Giving an the interpretation of the "contents" of the
triple and the interrelations between the triples (expressed via
reification/containers) with respect to a suitable universe of discourse
would be necessary to discuss  expressibility on solid grounds.


Wolfram Conen, Xonar
conen@gmx.de

* Additional remark:
you could still adopt the convention that every "first-level" statement
(ie., a triple not containing resources that represent reified
statements) that is not declared to be FALSE (with a reification as
above) is true, which may also give you what you want when you start to
map triples to a suitable representation of "knowledge" expressed within
- that is: you can assert the "triples" without problems as long as you
do not map them "per se" to (for example) binary relations in RDF. (this
thought of "stratification" can be carried over to reification of
reifications etc., as long as mutually or self referencing reifications
would be forbidden. I think, that they are allowed, however, which may
lead to paradoxical problems - one could easily formulate a
"proposition" BETA that says "BETA is FALSE" if the above practice would
be adopted ([r type statement][r subject r][r predicate hasTruthValue][r
object FALSE]).)

...but that is a different story.

Received on Monday, 4 June 2001 09:08:42 UTC