W3C

HCLS

17 Sep 2009

See also: IRC log

Attendees

Present
Helen_Chen Julia_Kozlovsky Sandro Susie ericP jluciano matthias_samwald
Regrets
Chair
HCLS
Scribe
ericP

Contents


 

uh oh

<matthias_samwald1> Linked Data Camp Vienna (Nov 30. - Dec 1.): http://www.meetup.com/Linked-Data-Camp/

<Susie> Sandro - are you here?

<sandro> yes, Susie

scibenick: ericP

<sandro> http://www.w3.org/2009/Talks/0903-rif

<sandro> http://www.w3.org/2009/Talks/0903-rif/Overview.html#(2)

Rule Interchange Format [Sandro Hawke]

-> http://www.w3.org/2009/Talks/0903-rif Rule Interchange Format (RIF)

[slide 2: So Many Rules Systems]

[slide 4: Business Rules Perspective]

sandro: while vendors may like customer lock-in, customers really don't
... RIF good for bridging between rules systems

[slide 6: The Plan]

sandro: mode of use is that someone using iLog menu-selects save-as-rif
... not expected to be edited by humans

there's a basic bifercation between if-then rules and 1st-order-logic rules

scribe: most extensions work with one or the other

[slide 8: The people evolved]

joanne: re: submissions (line 2), which emerged?

sandro: didn't really follow any of them. created a new "language"
... some have characterized the 1st year as "no one would let us adopt someone else's design"
... we got most rules vendors/orgs to join
... OMG has a different product. they produce a UML diagram (simplified view)
... the entire OMG active group is in our WG

[slide 10: RIF: XML Syntax for Rules]

sandro: you could consider a group a rule set
... this XML is fully striped (a la RDF)
... there are a few places (e.g. datatypes on leaves) where RIF isn't parsable as RDF/XML
... however a trivial XSLT could translate RIF to RDF (unchecked assertion)
... presentation syntax favors prolog as it uses the form THEN := AND (IF 1) (IF 2)
... (re: slide 11 BLD Presentation Syntax), this is not a presentation *calleed* BLD, but the presentation syntax used in the BLD document
... all three of these examples in the talk are in BLD
... if we added e.g. negation we'd be in a different dialect

<sandro> http://www.w3.org/2009/Talks/0903-rif/Overview.html#(13)

[slide 13: A Family of Dialects]

Julia_Kozlovsky: slides 11 and 12 say "reject". i would have thought that would be another dialect

sandro: that's an assertion of rejection
... the "reject" assertion implies that the person is thinking of this as production rules, but renaming to "to-be-rejected" would clarify that just a conclusion

[slide 14: Use Case: Vocabulary Mapping]

sandro: voila a set of FOAF rules
... FOAF has three ways to represent names
... you can expliut all three by adding rules
... RIF can do things like string-join
... you can assert data in one vocab, add data in another vocab, and query in a third vocab
... note that these mapping use cases where simple enough to be easily expressed in XPath functions

Julia_Kozlovsky: what would run these rules in real life?

sandro: if you wrote them in XML, how would you mix them into your SPARQL system?
... the standard doesn't speak to that much
... we talk about importing
... would expect that at the UI level. user says "here's the data, here are the rules, here is my query"

Julia_Kozlovsky: looks great in theory, but who is doing this?

ericP: a vendor has to promise RIF rules and SPARQL query

sandro: dave reynolds will probably implement RIF in Jena
... chimezie intends to implement it
... iLog also promised
... Oracle has made no promise about how long it will take to filter over to the database side
... we haven't formally [W3C process] said that RIF is ready to impelement

Julia_Kozlovsky: thanks. would good to get a picture of the different layers

sandro: e.g. cwm doesn't have native RDFS/OWL support, but you can write a lot of OWL rules like this [slide 15]
... OWLRL is a fragement which is entirely expressible in Rules
... effectively expressible in RIF Core, module some nuances

ericP: if property p has range (objects are of type) c, and some x has a p of y, then that y is of type c

<sandro> p == hasType, c=DomesticAnimal

sandro: e.g. :hasPet rdfs:range :domesticAnimal AND :Sandro :hasPet :Fido THEN :Fido rdf:type :domesticAnimal

[sldie 16: Syntactic Features]

<sandro> p(x,y,z)

<sandro> { sandro hasPet fido }

<sandro> triple( sandro, hasPet, fido )

<sandro> hasPat(sandro, fido) NO

<sandro> jluciano, ping

<jluciano> pong (it (my IRC window) was under the slides!) Thanks!

sandro: most of XPath functions plus e.g. string2uri
... hope to enter CR soon, spec stable, but not a lot of impelementations

Summary of Action Items

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.135 (CVS log)
$Date: 2009/10/01 20:28:41 $