- From: Alan Ruttenberg <alanruttenberg@gmail.com>
- Date: Mon, 12 Feb 2007 11:45:58 -0500
- To: "M. Scott Marshall" <marshall@science.uva.nl>
- Cc: public-semweb-lifesci@w3.org
- Message-Id: <A36E6AD2-64ED-4550-ACA0-040DCDFDABB2@gmail.com>
Scott asked about what I was working on with Helen. Here's the note I sent to her, which has pointers to the code. I'd be glad to explain this in more detail to anyone who is interested. I'll write this up on the wiki when I have a chance. -Alan Hi Helen, I said I would give an example of a counted inclusion + exclusion criteria in OWL. Here is what I came up with. It's a little message in OWL 1.0. I'm attaching the lisp code and the resulting ontology for you to look at. I don't know if I have given enough information to understand it, so let me know if it makes sense. In OWL 1.1 it is much easier because there are qualified cardinality restrictions. I'll give an example of that when I start doing more work with 1.1 Basically, in this scheme, diagnoses (recommendations) are encoded as classes. If the class is satisfiable then the recommendation passes the test. The code I'm attaching prints out: (children !ex:diagnosedPatient) => (!ex:patient4Simple-Cold ! ex:patient1Simple-Cold) In other words, the test passes for patient1 and patient4, but not for patient2 or patient3. patient2 fails because there aren't enough symptoms. patient3 fails because one of the symptoms is an exclusion criterion. If you classify the attached ontology in protege (or swoop) you should see two unsatisfiable classes corresponding to these two cases. The attached image (thanks to Jeremy Zucker for creating it) shows what it looks like in protege. If this is understandable I'll put it up on the wiki. -Alan
Attachments
- application/octet-stream attachment: acpp.lisp
- application/octet-stream attachment: test.owl
- image/tiff attachment: syntax-extension-example.tiff
Received on Monday, 12 February 2007 17:06:39 UTC