See also: IRC log
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)
-> 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