- From: Dave Reynolds <der@hplb.hpl.hp.com>
- Date: Thu, 06 Apr 2006 13:36:48 +0100
- To: Matt Williams <matthew.williams@cancer.org.uk>
- CC: Semantic Web <semantic-web@w3.org>
Matt Williams wrote: > > Dear List, > > Don't know of this is correct place to ask this, but.... > > I'm trying to describe a technique for deciding if we prefer one rule to > another. All the terms in the rules are literals (i.e. are in the ABox > in an ontology). The rules are of the form: > > Source -> (Body -> Head) > > I'm trying to express the fact that if some element of Source or Head > has a particular value, then we should prefer the rule. E.g. We might > prefer (denoted >>) rules with a source which has a date >2000 rather > than <=2000. > > I'm _really_ quite stuck on trying to do this, and I'm not clear why (I > don't think it's that hard). I think it may be harder than you think :-) > I _think_ the best way to do it is to > introduce some classes (i.e. T Box terms) that are defined, and then > 'rank' those classes. So to continue our example, the user might say: > > Post2000_Paper \equiv Paper & has_date >2000 > PreEq2000_Paper \equiv Paper & has_date <=2000 > Post2000_Paper >> PreEq2000_Paper > > (I also _think_ that these class definitions would require OWL1.1, but > that's a different issue) > > Could someone make some comments on this? Does it make sense? Any > obvious problems? One problem arises when you want to combine criteria. When the person also says they prefer papers, e.g. whose first authors are from a particular group of universities, then you have to start defining how those different criteria compare. An "engineering" type approach is to think of it as a scoring problem, membership in some class (or match to some query or triggering some rule head [*]) leads to some score (quantitative or qualitative) for the paper and the overall rank is then based on a score combination algorithm. Dave [*] Using OWL class membership is probably sufficient but examples such as the authorship one require a few intermediate classes definitions and it may be that a "query => score" representation would be easier to work with. Depends whether you want a declarative specification you can analyse or an algorithm you can run.
Received on Thursday, 6 April 2006 12:37:09 UTC