- 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