Hi Henry, Joshua and All --
I have been lurking in the corner of your most interesting
discussion. Time for my 2 cents worth....
At 07:21 PM 12/21/2005 +0100, Henry wrote:
All of this comes out automatically from having a good ontology. The
query mechanism is immediately
defined, and the whole thing is self documenting.
Well, yes, the query mechanism is defined. But the whole thing
aint self-documenting at any kind of comprehensible end user level.
For example, in our system -- online at the site
below -- a few simple rules like this one
- estimated demand some-id in some-region is for some-quantity gallons
of some-finished-product in some-month of some-year
- for estimated demand that-id some-fraction of the order will be
some-product from some-refinery
- that-quantity * that-fraction = some-amount
- -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
- for demand that-id that-region for that-quantity
that-finished-product we use that-amount that-product from
that-refinery
automatically compile down to a full page of SQL that
would be much too complex to write reliably by hand [1].
As another example [2], the free English question "Find genes
associated with human diseases" is written by hand as
- rulebase trans{ infer {[rdfs:subClassOf] ?a ?c} from
- {[rdfs:subClassOf] ?a ?b} and {[rdfs:subClassOf] ?b ?c};
- infer {[uni:organism] ?p ?o} from {[rdfs:subClassOf] ?x ?o}
- and {[uni:organism] ?p ?x}; }
- SELECT TOP 10 ?gene, ?name, ?text USING uniprot RULEBASE trans WHERE
- {[uni:organism] ?protein [urn:lsid:uniprot.org:taxonomy:9606]} and
- {[rdf:type] ?protein [uni:Protein]} and
- {[uni:annotation] ?protein ?annotation} and
- {[rdf:type] ?annotation [uni:Disease_Annotation]} and
- {[uni:encodedBy] ?protein ?gene} and {[uni:name] ?gene ?name} and
- {[rdfs:comment] ?annotation ?text}
As programmers we can have endless fun and employment
with long and opaque SQL or SPARQL queries, but they are hardly
"self documenting" for scientists or business people --
ultimately the people with the funding.
So, I have to disagree with your "self-documenting"
claim. With RDF and its data semantics, we are certainly
better off than before. But until we fill the gap indicated in two
examples above, with application semantics (e.g as in [3]), and
with at least a smidgeon of real world natural language semantics [4],
uptake of the Semantic Web will likely be slow and painful [5].
-- Adrian
INTERNET BUSINESS LOGIC (R)
Online at
www.reengineeringllc.com
Shared, community use is FREE.
Adrian Walker
Reengineering
PO Box 1412
Bristol
CT 06011-1412 USA
Phone: USA 860 583 9677
Cell: USA 860 830 2085
Fax: USA 860 314 1029
[1] www.reengineeringllc.com/Oil_Industry_Supply_Chain_by_Kowalski_and_Walker.pdf
[2] http://labs.intellidimension.com/uniprot/
[3] Backchain Iteration: Towards a Practical Inference Method that is Simple Enough to be Proved Terminating, Sound and
Complete. Journal of Automated Reasoning, 11:1-22.
[4] www.reengineeringllc.com/Internet_Business_Logic_e-Government_Presentation.pdf
[5] Understandability and Semantic Interoperability of Diverse Rules Systems
www.w3.org/2004/12/rules-ws/paper/19