- From: Ian Emmons <iemmons@bbn.com>
- Date: Wed, 13 Aug 2008 15:20:53 -0400
- To: Semantic Web at W3C <semantic-web@w3.org>
Frank,
Thanks for making this distinction clear -- I had a suspicion that the
discussion was confusing these concepts, but I skipped several of the
intervening messages, and I wasn't sure.
This may or may not be a useful interjection, but the level of
abstraction in this discussion is a little high, so I thought a
concrete example might help. I encountered a situation where "X
type Y; X subClassOf Z;" seemed to be useful. Our application
modeled transportation assets, and it also drew its data from a
relational database. So, we had a table of vehicles that had (in the
ugly manner of an RDB) a column VehicleType, which contained one of an
enumerated list of possible types (1 for truck, 2 for cargo plane, 3
for containerized cargo ship, etc.). Once a row from this table was
translated into RDF, we wanted to classify the type of vehicle via an
RDF class, so we created a taxonomy of vehicle classes with an entry
for each of the enumerated vehicle types. This yields the following:
x type V; V subClassOf Vehicle;
Where things got messy was when we realized that our RDF
representation needed to retain the enumerated vehicle type code. To
do this we added the type code as a data type property of the vehicle
class, like so:
x type V; V subClassOf Vehicle; V hasTypeCode t;
As we usually do, we gave the hasTypeCode property a domain
(EnumeratedVehicleType), and so the obvious inference yields the
following:
x type V; V subClassOf Vehicle; V hasTypeCode t; V type
EnumeratedVehicleType;
In particular:
V subClassOf Vehicle; V type EnumeratedVehicleType;
I'm sure we could have modeled this differently so as to eliminate the
subclass-and-type pattern, but this seemed to be the nicest way to
handle it to us. Hopefully it's a compelling use case for this
discussion.
Cheers,
Ian
On Aug 13, 2008, at 10:59 AM, Frank Manola wrote:
On Aug 12, 2008, at 5:05 PM, Richard H. McCullough wrote:
>
> Here's someone else who doesn't like singleton sets,
> and hence doesn't like classes which are individuals.
>
> John Barwise & John Etchemendy (1992), "The Language of First-Order
> Logic",
> Third Edition, Revised & Expanded, Center for the Study of Language
> and Information, Stanford, Page 212
>
> Suppose there is one and only one object x satisfying P(x).
> According to the
> Axiom of Comprehension, there is a set, call it a, whose only member
> is x. That is,
> a = {x}. Some students are tempted to think that a = x.. But in
> that direction lies,
> if not madness, at least dreadful confusion. After all, a is a set
> (an abstract object)
> and x might have been any object at all, say Stanford's Hoover
> Tower. Hoover is
> a physical object, not a set. So we must not confuse an object x
> with the set {x},
> called the singleton set containing x. Even if x is a set, we must
> not confuse it with
> its own singleton. For example, x might have any number of elements
> in it, but {x}
> has exactly one element: x.
>
Whoa! What we were originally talking about wasn't singleton sets, it
was the following question:
>>>>>
>>>>> 2. X type Y; X subClassOf Z;
>>>>> Another neat property: X is an individual and a class.
>>>>> Now I can ... What? I don't know.
>>>>> Why do you want to do that?
Wanting to be able to treat a class X as an individual may or may not
be a good idea, but this isn't the same as wanting to treat a
singleton set as *the same* individual as its only member. To
paraphrase your quotation above, in the direction of subtle subject
changes like this lies, if not madness, at least dreadful confusion.
--Frank
Received on Wednesday, 13 August 2008 19:21:36 UTC