- From: Bijan Parsia <bparsia@cs.man.ac.uk>
- Date: Tue, 6 May 2008 18:39:47 +0100
- To: OWL Working Group WG <public-owl-wg@w3.org>
On 6 May 2008, at 16:15, Michael Schneider wrote: > Hi! > > I haven't attended the last telco, where n-ary predicates were > discussed. I > would like to catch up on this topic. However, from looking into > the proposal > [1], I do not even understand the basic idea. :-( > > The use-cases document [2] provides the following example: > > "For humans, the systolic blood pressure is always > greater or equal than the diastolic blood pressure." > > I speculated that the idea was to have a new "GreaterOrEqual" property > restriction, which is applied on two properties: > > SubClassOf( Human > GreaterOrEqual(systolicBloodPressure > diastolicBloodPressure) )) > > And the value ranges for these two properties can be specified by > additional > AllValues restrictions. > > But it doesn't look to me that the actual proposal follows this > approach. It's not too far off. The basic point is that we want to specify arbitrary equations relating data values. In this case where it's just a comparison, it's easy: DatarangeExpression(x y geq (x y)) (The first occurrences of x and y declare the variables; geq is a builting comparison.) Now you can use this in an existential or universal restriction: AllValuesFrom( ex:hasSystolicBloodPressure ex:hasDiastolicBloodPressure DatarangeExpression(x y geq (x y))) (You can name expressions too.) > So, > can anyone please demonstrate the actual approach for the above > "systolic/diastolic" example? See above. Here's another: "Body mass index: the body mass index (BMI) of a patient is defined as 703 times weight in pounds divided by the square of the height in inches. The BMI is (among many other things) taken into consideration for insulin administration regimens. Similar to the examples above, it is used to derive an envelope within which a standard regimen should be." DatarangeExpression(bmi weight height eq((times bmi (times height height)) (times(703 weight))) (since we don't have an explicit division, I had to mutliply both sides by the square of the height the equation in infix is: bmi*height^2 = 703*weight). There's a passel of links to helpful literature at the bottom of the page...no need to speculate! :) Cheers, Bijan.
Received on Tuesday, 6 May 2008 17:37:46 UTC