W3C home > Mailing lists > Public > public-owl-dev@w3.org > July to September 2007

Re: declaredAs

From: Pat Hayes <phayes@ihmc.us>
Date: Tue, 7 Aug 2007 12:42:37 -0500
Message-Id: <p06230901c2de5e482461@[]>
To: Bijan Parsia <bparsia@cs.man.ac.uk>
Cc: "Michael Schneider" <m_schnei@gmx.de>, bmotik@cs.man.ac.uk, public-owl-dev@w3.org

>Just to be clear, the distinction I made (typing and declarations, 
>i.e., use/resource kind and intended resource kind) has been made 
>several times in this thread, usually by Boris. However, it seemed 
>to me that Michael confused them, or at least didn't seem to notice 
>the second and its uses. Perhaps this is an artifact of the "typo" 
>Also, it's important to reiterate that if we disallowed metamodeling 
>(e.g., punning) and required a fully separated vocabulary, then 
>there is much less need for representing the "intended" resource 
>kind distinct from its use since *any* "duel use" (e.g., class and 
>property) will show up as a syntax error.

And if y'all did that "metamodelling" properly, instead of treating 
it as punning, there would also be no need, since nothing would be an 
error. But I won't beat that drum any more here.

>We don't want to forbid metamodelling, and we could still only work 
>with use types (how you use it is what it is). But then we can't 
>express various sensible bits of advice about the intended nature of 
>terms. The goldilocks solution is to allow the expression of things 
>in between by means of some sort of annotation or description.
>The situation is a bit like typing in programming languages. If you 
>required declarations (and implicit typing everywhere) then you have 
>Java and the like (mainifestly typed languages). If you are 
>completely use-typed, you have languages like Smalltalk or Python. 
>If you goldilocks it, then you have languages like ML or Haskell or 
>perhaps common lisp, where you don't need to put type declarations 
>everywhere, but when you do they make a difference (esp. to the type 
>inference; i.e., you can get clashes).

I guess what I don't see is why these have to be syntactically 
distinct from assertions, though. After all, we have here a language 
whose business is saying that things belong in classes. And what we 
want to say here is... well, you get the point. Why not just have a 
special class of classes called "isADeclarationClass", which when 
asserted of a class means that saying that something is in that class 
is a declaration. Then your declaration classes can be my ordinary 
classes, which gives us a lot of flexibility, and avoids a kind of 
global ossification into a single built-in hierarchy.


>It's not exact, but I hope it helps.

IHMC		(850)434 8903 or (650)494 3973   home
40 South Alcaniz St.	(850)202 4416   office
Pensacola			(850)202 4440   fax
FL 32502			(850)291 0667    cell
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes
Received on Tuesday, 7 August 2007 17:43:05 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:58:15 UTC