W3C home > Mailing lists > Public > public-swbp-wg@w3.org > June 2005

Re: How to state simple facts in RDF

From: Frank Manola <fmanola@acm.org>
Date: Wed, 29 Jun 2005 10:56:24 -0400
Message-ID: <42C2B698.2000404@acm.org>
To: Dan Brickley <danbri@w3.org>
CC: Lars Marius Garshol <larsga@ontopia.net>, public-swbp-wg@w3.org

It would seem to me that there are certainly lots of database and 
programming language analogies to be drawn on for these cases.  In the 
case of bankruptcy, for example, you could use a property like 
"financialStatus", as in

ex:barings-bank ex:financialStatus ex:bankrupt  .

If for some reason you don't want to do that (e.g., you want a separate 
property to indicate whether the company is bankrupt or not), you could 
use a binary (or truth-valued) property, as in

ex:barings-bank ex:isBankrupt ex:true  .

(I don't recall offhand whether there's an XMLSchema datatype for 
binaries or not, but it seems likely).

There's not always a single "right" way to do these things, but there 
are lots of examples from other communities that can be borrowed for RDF 
modeling purposes.


Dan Brickley wrote:
> Lars Marius Garshol wrote:
>>* Michael F. Uschold
>>| Rdf:type is fine for many such examples.
>>It does seem to work, and work well, in some of the cases, I agree.
>>| However, it is not always such a good idea to create special
>>| classes/types for every such fact.
>>| For example: 
>>| 	My car is red.
>>| 	This food tastes good.
>>| To use rdf:type food these statements requires one to create
>>| artificial classes/types for such notions as RedThings, or
>>| GoodTastingThings.
>>| One can do it, but it is not always what you want.
>>I agree, and the RDFTM work is one case where this isn't really what
>>we want, since although it works to turn
>> is-bankrupt(barings-bank : company) /* LTM syntax */
>> (barings-bank, rdf:type, BankruptCompany)
>>this causes difficulties with roundtripping back to topic maps, since
>>we can't then easily distinguish between types that are "real types"
>>and types that really represent "unary associations".
>>Does anyone know of other good modelling patterns for this in RDF? Or
>>do we need to create a special
>>rdftm:ArtificialClassThatIsReallyAUnaryAssociationType class?
> Not such a bad idea. Except I'm not sure "really being
> a unary association" is easy to define. In prolog, one
> might write "person(dan)" while in RDF I'd use the
> class foaf:Person. How can we judge whether the class
> is an artificial one or not? One answer might be with
> appeal to the body of tools, practice, super/sub classes
> around it, etc. However those are things that evolve over time.
> Dan
Received on Wednesday, 29 June 2005 14:44:49 UTC

This archive was generated by hypermail 2.4.0 : Friday, 27 January 2023 01:58:24 UTC