OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: semantics in schema (xsd)

[ Lists Home | Date Index | Thread Index ]

(a little late as I've been away for a long weekend)

Irene Polikoff:
> Well, this seem to go back to the question of whether "husband" should
> be treated as a class - a subclass of males or as a relationship (object
> property).

In the ontology, the class describes a set of things with common properties, this 
should not be confused with a type in an information model/schema or a class in an 
OO implementation that encapsulates the data that represents the information that 
is a viewpoint on the abstract concept that is described by the ontological 

So the ontology may have husband as a class- as there is a 'meaningful' set of 
human individuals that share the properties maleness and marriage, and an 
information model for on application of that ontology may only have the capability 
of representing husbands with female spouses. All information models of real world 
situations appear doomed to incompleteness.

David Megginson:
> I'd say forget about classes and make your objects big bags of properties 
> (attributes and relationships).  The main advantages of classes for 
> object-oriented programming -- code reuse and type-safe polymorphism -- 
> don't even apply to simple information representation, so why pay the costs 
> of a class structure if you don't receive any benefits?

The benefit of classifying concepts gives a shorthand to help us reason about 
things- it's easier to agree what a husband is, then talk about what information 
the application needs to represent about or process when dealing with husbands than 
it is to always talk about 'individuals who are in a legally married state who are 
also male and human'. 

>   There exists an entity A.
>   A is human.
>   A is male.
To me, at the ontological level, these are classes, irrespective of whether or how 
you choose to implement the data level in static typed OO software.

Given all statements may have a temporal limit, there's no problem with one web 
page from 1997 saying 'Fred is a husband' and another from 1993 saying 'Fred is not 
a husband'; OWL specifically notes that data in web documents may change and be 
inconsistent. If not, then nothing would be able to be classified, as nothing real 
is permanent. In OWL, even if you define only the relations, I can define a class 
based solely on the presence of those relations, and declare that your statements 
indicate a classification. AFAICT this is the main interoperation mechanism that 
OWL uses- saying that from your information model {x: x is a Human & x is a Male &  
x is married to y} is equivalent to my {x: x marital status = husband } class, if 
my information model only represents marital status as an enumeration. Such 
mappings apply only for the information mapped, so tomorrow an individual may be in 
a different classification.

It's always possible to construct classes from relationships in the ontology, and 
this seems to be done best by what is meaningful in the domain.

In the information model, the types will be based on what is useful to the 
applications that are using the information. It may be useful to limit husbands to 
current heterosexual relationships for one application, for another (e.g. a pension 
scheme), the instances considered as members of the husband type may include 
deceased partners.

The software constructs that encapsulate the data may end up being very different 
to the ontological classifications and the information model types, simply because 
the software has to be written a certain way to work. Hence, in a static OO 
language, you end up with David's implementation, irrespective of the concepts 
embodied. But capturing the classifications that make up the ontology shouldn't be 
constrained by the limits of one programming paradigm that may be used to implement 
one application in that domain.


This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS