- From: Gary Hallmark <gary.hallmark@oracle.com>
- Date: Wed, 25 Jul 2007 15:19:24 -0700
- To: Dave Reynolds <der@hplb.hpl.hp.com>
- CC: Michael Kifer <kifer@cs.sunysb.edu>, RIF <public-rif-wg@w3.org>
Dave Reynolds wrote: >>> Take a concrete example: >>> >>> :Dave rdf:type :Person . >>> :Dave foaf:name "Dave" . >>> :Person rdfs:subClassOf :Animal . >>> >>> In Jos's translation this would correspond to RIF Frames: >>> >>> :Dave [rdf:type -> :Person, foaf:name -> "Dave"] /\ >>> :Person[rdfs:subClassOf :Animal] >>> >>> ?p # ?t :- ?p[rdf:type -> ?t] . >>> ?p ## ?t :- ?p[rdfs:subClassOf -> ?t] . >>> > In this case the mappings to # and ## seems to buy us little. In a way I agree, but only because I would like static declarations such as FrameType Person##Animal [ name -> xsd:string ] I'm not sure I can use the rules above because I need to extract the 'business data model" from the RIF document before I can translate the rules. All this occurs at translation time, which is before the rules are executed. > We risk ending up with a nest of incompatible mappings. Gary, for > example, would likely implement #/## by mapping to Java classes yes > and would then be unable to translate rules like the above the problem seems to be that without static declarations I need to run the rules in order to translate the data model that I need in order to translate the rules... > and would be unable to work with RDF data. Not a problem for him right > now but given Oracle's investment in RDF and OWL it might be a problem > in the future. Yet there is no difficulty in using Oracle's rule > engine to process RDF data if it weren't for this seemingly artificial > requirement to map different class hierarchy concepts to the same #/## > machinery. I have to disagree. RDF poses great difficulty because of the difficulty in extracting a static declaration like the one above. Our UI tools require a data model so that rules can be phrased in structured English like IF *Person.name* = "Dave" THEN ... Items marked with *stars* are pick lists in the UI that are driven off the data model. Without a static data model, I'd have to have something generic like IF *Frame.property1* = "rdf:type" and *Frame.value1* = ":Person" and *Frame.property2* = "foaf:name" and *Frame.value2* = "Dave" THEN This latter mess is unsuitable for a business user (or for me, for that matter). IMHO, the lack of an explicit static data model for RDF makes it hard to build UI tools, and without good UI tools you aren't going to get far in the business software marketplace. -- Oracle <http://www.oracle.com> Gary Hallmark | Architect | +1.503.525.8043 Oracle Server Technologies 1211 SW 5th Avenue, Suite 800 Portland, OR 97204
Received on Wednesday, 25 July 2007 22:20:57 UTC