Re: DL Question

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