W3C home > Mailing lists > Public > public-swbp-wg@w3.org > January to March 2004

Re: [OPEN] and/or [PORT] : a practical question

From: Pat Hayes <phayes@ihmc.us>
Date: Tue, 30 Mar 2004 19:55:14 -0800
Message-Id: <p06001f2bbc8ff01809c0@[]>
To: Jeremy Carroll <jjc@hplb.hpl.hp.com>
Cc: SWBPD list <public-swbp-wg@w3.org>

>I find myself agreeing with what almost everybody says in almost 
>every thread: unfortunately this is not very consistent. I suspect 
>it reflects me not being an expert in this area.
>I wonder if there is consensus that if you find yourself using 
>metaclasses it is worth thinking about the trade-offs. (i.e. 
>metaclasses may be useful, but also have known difficulties)

The only difficulty is the fact that metaclasses are inconsistent 
with the DL subcase. I do not mean to imply that this is not a real 
disadvantage, but we don't need to go looking for other, imaginary, 

Actually there is one problem, which is purely terminological. The 
term "metaclass" itself is misleading, as it suggests that classes 
with classes as instances are somehow different in kind from classes 
with other kinds of instance. This presumption underlies the 
'layered' view of modelling incorporated into UML, for example, but 
it has no basis in any theory of classes or sets or concepts that I 
am aware of.

There might indeed be a useful notion of metaclass, meaning a class 
in a metatheory: but we should not identify that notion with the 
notion of a class containing other classes as instances. The two 
notions are orthogonal.


>Natasha Noy wrote:
>>At 7:54 PM +0100 3/27/04, Aldo Gangemi wrote:
>>>My two cents ...
>>[snipping eighteen cents...]
>>>Bottom-line: let Natasha, Bernard, or anyone else produce cases of 
>>>reasonable use of metaclasses, and let's try to find an 
>>>alternative way to model them. If that way is unnecessarily 
>>>complicated for the use case we are considering, then we can 
>>>consider that use an example of best annotation practice.
>>Aldo, your bottom line assumes that it is _always_ better to avoid 
>>using metaclasses if there is a somewhat reasonable (but perhaps 
>>less intuitive, more cumbersome, but not overly so) way to 
>>represent the same thing without them. I think it is a strong 
>>assumption to make and using it as an imperative for best practices 
>>is even a stronger (and more dangerous) thing to do. It is already 
>>clear from the discussion that there is no consensus in the 
>>community. Given that, instead of trying to produce  documents that 
>>say "avoid metaclasses if at all possible", we should just 
>>acknowledge the different approaches and describe them. Then people 
>>can choose.
>>There should  be a "presumption of innocence" of any construct that 
>>is valid in the language. Sure, there are trade-offs. There are 
>>examples when using metaclasses allows for a simpler and more 
>>intuitive model or for easier use in application (e.g., some 
>>knowledge-acquisition applications; not all applications and 
>>reasoners on the SW are going to be DL reasoners). At the same 
>>time, you loose the ability to have a DL reasoner to use that 
>>information. And we should document that too and show ways to do it 
>>differently so that the ontology is in OWL DL, if that's what one 
>>As an aside, I must say that in my interactions with Protege users, 
>>many of those who use OWL for modeling, do it simply because it is 
>>a standard and never think or plan to invoke a classifier (or 
>>define any necessary and sufficient conditions; just necessary 
>>>IMO, it remains to be demonstrated that there exists a case in 
>>>which a reasoner must be able to reason on classes and metaclasses 
>>>in the same problem space, without alternative solutions.
>>Again, this assumes that, for all reasoning services, it is always 
>>best to avoid metaclasses. As many have pointed out already, we 
>>don't have enough experience to know what kind of modeling would 
>>work on the SW. More important, we don't have enough real SW 
>>applications to know what kind of reasoning will be most pervasive 
>>and useful on the SW. If we try to optimize the modeling for a 
>>particular single kind of reasoning (e.g., DL reasoning), we may 
>>shoot ourselves in the foot by encouraging people to produce 
>>ontologies that real-world SW reasoners won't be able to use 
>>productively. I am all for Pat's humility stance.

IHMC	(850)434 8903 or (650)494 3973   home
40 South Alcaniz St.	(850)202 4416   office
Pensacola			(850)202 4440   fax
FL 32501			(850)291 0667    cell
phayes@ihmc.us       http://www.ihmc.us/users/phayes
Received on Tuesday, 30 March 2004 22:55:10 EST

This archive was generated by hypermail pre-2.1.9 : Tuesday, 30 March 2004 22:55:13 EST