RE: abstract class

--- Jon Hanna <> wrote:
> > > Compare with English. When I say "I am a human
> > > being", that statement isn't
> > > untrue because I didn't use the more accurate "I
> am
> > > a man" or "I am an
> > > Irishman" or "I am a married Irish Software
> > > Developer between the ages of 25
> > > to 35 in full-time employment who is registered
> to
> > > vote and doesn't drive a
> > > car".
> >   I know it's not incorrect, but it's useless, I
> don't
> > want to allow people to say useless information.
> When
> > you say you are a human being you are also saying
> you
> > are a man or a woman, that's the info I would like
> to
> > have.
> But can you say that I am a man without also saying
> that I am a human being?
  No you can not. We don't want to say that.

> That I am a human being is entailed by your
> statement whether you consider
> it useful or not.
  It's useful. That's OK.

> Until you manage to say I am a man, without
> entailing the fact that I am a
> human being, I am going to consider your idea of a
> variety of class which
> can't be the object of rdf:type, but which has
> subclasses which can to be, a
> logical impossibility.
  I don't understand this point.

> I'm in axiom-spouting mood today, how about this one
> "Useless information is
> the key to interoperability." :) I'll justify it in
> a minute.
> I don't think the decision about what is or isn't
> useless information can or
> should be made at RDF level. The job of RDF is to
> give us the syntax to say
> things, the job of RDFS, DAML+OIL and/or OWL is to
> give us a vocabulary to
> use with that syntax, and information about how some
> pieces of that
> vocabulary relate to other pieces.
  Is then RDFS a mean of determining whether a RDF
document is valid or it's not?
> Now there is nothing to stop RDF from saying useless
> things, no more than it
> would be possible to build a mechanism into the
> English language that would
> make tabloids stop writing :)
> And the approach we take to survive that is the same
> we take with tabloids.
> When the tabloids publish 25 pages about which
> celebrity is or isn't having
> sexual relations with which other celebrity
> intelligent people simply ignore
> it. When RDF contains statements that are of no use
> to an application
> intelligent applications simply ignore it.
> Similarly if you have a application which internally
> models "man" and
> "woman" as subclasses of "human being" with the
> "human being" class being
> abstract then any call to produce RDF describing the
> object would of course
> cause the RDF class of "man" or "woman" to be used.
> Now if this information is then used by an
> application compiling statistics
> about the rate of ovarian cancer all of the "man"
> classes are of no use. A
> class of "human being" is also of no use, because
> without knowing the gender
> I can only mess up the statistics. So this
> application will not use
> resources which are of type "man" or if it only
> knows it is of type "human
> being".
  I agree

> Another application keeping track of how much
> holiday time an employee has
> taken would not care about "man" or "woman" classes,
> and work with the
> entailed statement that the resource in question is
> a "human being" (or at
> least one would hope that a holiday time application
> wouldn't care!).
  That's right.
> The ability of these three applications to work
> together is dependant on
> information that one considers useless, and the
> other vital.
  I totally agree.
> Now of course we don't want to flood our RDF streams
> with useless
> information, but that isn't actually a concern. In
> your application whatever
> is internally representing a resource of class "A"
> will never bother to
> produce the XML <C rdf:about="...">, because the
> internal representation of
> "C" would be abstract in OO terms.
  OK, then you want to be able to say <C
  But your application of cancer of mama is going to
be not liable. Because we are not using lots of
resources that we don't know if are woman or man, but
maybe are woman.
> > > Classes in RDF are far more comparable to nouns
> in
> > > English than to classes
> > > in OO.
> > >
> >   I don't totally agree. If you use RDF correctly
> you
> > can represent the same that in UML (I think I saw
> the
> > UML Vocabulary in RDF). Everything depends on the
> use
> > you want for your RDF data.
> UML doesn't prevent you from saying that an object
> is of an abstract class
> (albeit indirectly through inheritance), nor does
> OO. 
  We want to represent exactly the same.

>You are prevented from
> instantiating abstract types, but not from treating
> objects as abstract
> classes. There is nothing special about abstract
> classes except for the fact
> that you can't create a direct instance.
  That's what we would like.
> Since you don't instantiate anything in RDF the
> distinction doesn't apply
> and all classes are abstract.
  You instantiate in RDF, when you create a resource
and you say it's of type X, you have an instance of
class X. At least that's our interpretation.

  My Bests,

      (. .)
|   ooO  Ooo          |
----( )--( )-----------
     ()  ()

Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.

Received on Friday, 24 January 2003 09:31:03 UTC