- From: Alan Rector <rector@cs.man.ac.uk>
- Date: Thu, 13 May 2004 16:12:20 +0100
- To: Dan Connolly <connolly@w3.org>
- Cc: "Ralph R. Swick" <swick@w3.org>, www-archive@w3.org, Natasha Noy <noy@SMI.Stanford.EDU>, Dan Brickley <danbri@w3.org>, Sandro Hawke <sandro@w3.org>
Dan
Dan Connolly wrote:
> We've done some similar writing in the ESW wiki, and we
> actually found 3 patterns:
>
> "NaryRelations can be reduced to binary using various patterns:
> ArgumentList, CurriedFunction, RecordDescription."
> -- http://esw.w3.org/topic/NaryRelations
>
> RecordDescription is pretty much the same as "Pattern 2".
>
> Perhaps CurriedFunction is like "Pattern 1" but I'm not sure;
> I think it's somewhat novel. It's perhaps too obscure
> or contrived to recommend as best practice. I like it a lot
> but I don't think I have figured out how to explain why.
>
> But I suggest you incorporate ArgumentList. It's quite
> straightforward.
>
Thanks.
* I agree RecordDescription is essentially the same as "Pattern 2".
* I think CurriedFunctions are different and would prefer to avoid them in a simple primer because
a) They get messy except in functional programming languages that can deliver functions as values of other functions..
b) In an SW/RDF/OWL context there is the question about whether the curryFunction created by one resource on the SW is equivalent to the curryFunction created by another. I see all sorts of namespace and equivalence problems here I wouldn't want to face at this stage.
c) They put one in OWL-Full without delivering obvious benefit that I can see.
* The argument list is a common programming trick - e.g. functions that deliver tuples - but I think distorts the spirit of either RDF or OWL. For OWL it has the added disadvantage of moving immediately to OWL full and - I think - requiring a data type property to hold the list for what is otherwise semantically an object property. (If I am wrong on this, somebody please correct me.) It also leaves the semantics of the different arguments implicit whereas any of the other mechanisms make them more explicit. I wouldn't oppose including it, but I would want those 'health warnings' attached.
(There is a notion related to curriedFunctions which is a trick involving hierarchies of properties.
e.g.
at-least-associated
at-least-partly-caused-by
directly-caused-by
But I think that this should be delayed for a separate pattern. It would just confuse things here. It also raises some nasty technical questions for classifiers if it leads to a transitive property as the child of a non-transitive property, etc.)
Alan
--
Alan L Rector
Professor of Medical Informatics
Department of Computer Science
University of Manchester
Manchester M13 9PL, UK
TEL: +44-161-275-6188/6149/7183
FAX: +44-161-275-6236/6204
Room: 2.88a, Kilburn Building
email: rector@cs.man.ac.uk
web: www.cs.man.ac.uk/mig
www.opengalen.org
www.clinical-escience.org
> --
> Dan Connolly, W3C http://www.w3.org/People/Connolly/
> see you at the WWW2004 in NY 15-21 May?
Received on Thursday, 13 May 2004 11:13:07 UTC