Doug Clark of Metier: rules with onto for project management (ff. is area is really ripe to do stuff involving sharing of knowledge: - Project Management Institute -- industry association? work breakdown, scheduling, performance (earned value), maturity, status o wrt rules: 1. want "degree": - spectrum from shall to may - high to low 2. want "compound" rules, incl. logical and equational - e.g., doing some neural networks stuff for "evaluation" want to reason to evaluate states of world, for reporting and decision making - use confidence and weights Discussion: Q by Mark Linehan: what's a target? A: (missed part): what object(?) the rule talks about Q by Pat Hayes: what's a compound rule? A: subexpressions that are rules, e.g., about rain and something else to make an overall decision %%%% Chris Matheus of Versatile Info Sys: Situation Awareness (ff. is summary of his presentation) use OWL and SWRL, then XSLT to Jess which is runtime has RuleVISor editor for SWRL *have implemented built-ins: about half of all the SWRL ones, detect/filter/restrict to just one unbound variable o top wishes for rule language from issues/challenges with SWRL: +want n-ary predicates, it's clumsy not having it e.g., 9 rules turns into >1000 lines of SWRL code - would be nice to have automated way to automatically convert n-ary to 2-ary SWRL built-ins: +want functionally defined built-ins; the declarative predicate built-in is tough to implement in Jess +want var's unbound in body to be in head rules: i.e., to generate new facts (that are skolemized?) - use kluge-y way now: - want a better way time issues: usually need to make decisions from partial info, thus.. +need NAF - but would be OK to be within scoped context, e.g., N3 need to model time-dependent attributes, thus most appropriate is: +want procedural attachments o other wishes: graphical means to generate/understand rules, e.g., for rules cf. EzOWL real-time performance built-in support for reasoning about uncertainty Discussion follows: Harold Boley: - very nice wish list - wrt blowup in SWRL: could use a 2-ary presentation syntax and get reasonable conciseness, even n-ary syntax in markup %%%% Srinivas Kroviddy of Fannie Mae: rules and interoperability use case (ff. is summary of his presentation) use case about morgage industry, and req's Fannie Mae handles backend of mortgage process, incl. underwriting, interacting with consumer's bank not consumer underwriting (this is a whole lot of business rules) closing document preparation involves a lot of parties - often incompatibilities between early and late part of that process then loan may be put out for secondary market resale servicing of the loan *lot of opportunities to share and reuse rules: - across parties - across *there's demand for improved business process, with more agility to quickly create customized products/processes other factors *MISMO industry standard, with broader adoption Mortgage Industry Standards Maintenance Org - it's a data model, based on XML Schema (answer to Waheed and Ed B. Q's) - it includes vocabulary/ontology (answer to ?Anthony Finkelstein? Q) *regulatory compliance req's: state, federal; need to bridge the gap between policy and implementation current approaches: want flexibility to be indep of any particular vendor, this is strategic successfully for last 5 yrs: created a proprietary, vendor neutral rule lang to spec biz rules: business people, not dev'ers, spec this way for last 5 yrs req's for interoperable rule language: - able to specify based on an object model -- cf. MISMO (answer to Waheed's Q) - open and extensible constructs, i.e., since various players may want/need to extend features/types of the rules . i.e., building blocks, e.g, FOL plus some more (answer to Ed Barkmeyer Q) rule management: is very important for us - versioning, permissions, effective and expiration dates, etc. - describe a group of shareable rules consistent integration: - support conflict resolution and preconditions . e.g., cf. Benjamin's talk yesterday [on Courteous/priorities/merging] - support synch and asynch (i.e., batch then client pull) rule execution Discussion (see above, inlined in a couple places (search on "answer") Ed Barkmeyer Q: can we see the use case and the rule lang. in more detail? A: yes, I can point you to some published papers %%%% Dave Reynolds of HP: Jena Rules Experiences (ff. is summary of his presentation) wrt W3 Rules, HP primarily interested in the Semantic Web area HP also involved in areas involved in OMG rules activities use cases by proxy, i.e., what we've seen of what our users have been doing rules intro'd in Jena in mid 2003: forward Rete and backward tabled LP - support only negation of an extensional predicate, not full NAF; call this "semi-positive" Jena user base: ~20,000 users - don't have direct info on who or how they use it o observations from user group traffic and HP usage: significant usage, split between standalone RDF processing and rules layered on top of RDFS/OWL +use of procedural extensions little evidence of rule interchange other than reuse of supplied RDFS/OWL rules wide mix of apparent use cases... deductive rule usages: view transformation, abstraction, and integration: - need negation on extensional predicates - *need object introduction in head, and recursive data structures . i.e., thus essentially logical functions, cf. Prolog - need property variables: . i.e., cf. Hilog implementing semantics of shared vocabularies - useful to exchange rules as form of definitions application specific semantics - OWL often being used more clumsily where rules would be if it were endorsed standard/way integrity rule usage: validation of dataset before further processing: - useful to publish - expressivity implications: . at least extensional negation . denial rules, or reporting actions (often good enough) policy expression - want richer reporting actions - need nonmononotonity reactive rule usage: - event triggering . unclear how to be interoperable - notification . want public subscription interface . expressively, have only seen non-recursive, could simply be cf. SPARQL Conclusions: - gets used a lot - there are some example areas: . transformation lib's . pre/post condn . need for more expressive KR - expressivity observations . need for RDF level, no DL restrictions, property var's, bNode intro) - several interop use cases exploit closed world neg; . not clear from the usage whether we need full well-founded negation