Re: How to state simple facts in RDF

* Frank Manola
|
| I think Mike's comment identifies the key distinction here.  The
| original examples "this case is closed", "this company is bankrupt",
| and "this article is a draft", and Mike's examples "my car is red"
| and "this food tastes good", have in common that no property name is
| explicitly given (unless you count "is").  Using classes, as in
| rdf:type, attempts to preserve this "propertyless" syntax, although
| by using rdf:type as a sort of generic property.

Yes, I agree that from a modelling point of view this really is the
way to see it. Every example I've found of unary associations can
really be seen as a binary relationship which is made unary by
privileging one of an unspecified set of possible property values and
effectively "integrating" that privileged value into the association
type.

So,

  - in "this case is closed" there is really a set of possible states
    a case can be in, and with a unary association we really privilege
    closed, instead of saying status-of(casex : case, closed : status)
 
  - "this company is bankrupt" is equivalent, except that the set of
    possible states is different,

  - "this article is a draft" is also equivalent in the same way,

  - in "my car is red" we are not talking about states but colours,
    and so here it is even more obvious that one property value (red)
    is being privileged, and

  - "this food tastes good" is pretty much paralell, in that there's
    an implicit set of alternative values for how the food tastes, and
    we just privileged "good".

I guess the conclusion is that either what you are looking for is
naturally a class, and then you should use a class, or else there is a
set of implicit values, and you should probably make that explicit and
have a normal binary relation.

| Generally speaking, you only have two choices here: you can describe
| things has having certain properties and values, or you can describe
| things as being members of certain sets.  

Yep, that's pretty much my conclusion, too.

However, this is a discussion of what the best way to model something
is when you have full freedom of modelling, as it were. That's not the
position in which the RDFTM WG finds itself, though. We're given
something that was modelled as a unary association by someone else and
need to find a way to convert it back to topic maps.

I guess we could choose to say that "we only preserve semantics, and
not necessarily syntax", and therefore we are justified in losing the
*form* the information is expressed in as long as the information is
preserved. (Conclusion: it's perfectly acceptable to lose the fact
that this was a unary association, and so just map unary associations
to classes.)

Alternatively, we could choose to say that "we want complete
roundtripping where the same model instance is reproduced after
roundtripping, and not just one that is semantically equivalent". In
this case the rdf:type mapping does not work unless we go some steps
further, and although we can try to convince people that creating
unary associations is a bad idea in the first place we'll still need
to deal with the issue somehow.

-- 
Lars Marius Garshol, Ontopian         <URL: http://www.ontopia.net >
GSM: +47 98 21 55 50                  <URL: http://www.garshol.priv.no >

Received on Wednesday, 29 June 2005 15:36:35 UTC