Issues for Production Rule Representation (PRR) Finalization Task Force

To comment on any of these issues, send email to prr-ftf@omg.org. (Please include the issue number in the Subject: header, thusly: [Issue ###].) To submit a new issue, send email to issues@omg.org.

List of issues (green=resolved, yellow=pending Board vote, red=unresolved)

List options: All ; Open Issues only; or Closed Issues only

Issue 13538: need to update the PRR-W3C RIF relationship
Issue 13539: Replace references to metamodel to metamodel and profile
Issue 13540: Change model to use Expression in lieu of OpaqueExpression (nherited from UML2)
Issue 13541: Figure 7.5 is redundant as it is replaced by a more recent diagram displayed as Figure 7.6
Issue 13820: problems with the EMOF, CMOF, XSD and Profile files

Issue 13538: need to update the PRR-W3C RIF relationship (prr-ftf)

Click here for this issue's archive.
Source: TIBCO (Mr. Paul Vincent, pvincent(at)tibco.com)
Nature: Enhancement
Severity: Minor
Summary:
Per PRR FTF face2face meeting: need to update the PRR-W3C RIF relationship to the following text: In November 2005, the World Wide Web consortium (W3C) chartered the Rule Interchange Format (RIF) working group to specify a format for rules that can be used across diverse systems. This format (defined as a language) will function as an interlingua into which both established and new rule languages can be mapped, allowing rules written for one application to be published, shared, and re-used in other applications and other rule engines. Because of the great variety in rule languages and rule engine technologies used in academia and emerging technologies, this common format will take the form of a Core language to be used with a set of standard and non-standard extensions. These extensions need not, and are unlikely to, all be combinable into a single “unified rule language”. The primary normative syntax of all the dialects must be an XML syntax. Users are expected to work with tools or rule languages that are transformed to and from this format. Practically, the approach taken by the W3C RIF Working Group has been to develop a basic logic dialect of RIF (RIF-BLD) and a production rule dialect (RIF-PRD), and to define the Core dialect as a subset of their intersection that is useful on its own right. The semantics of RIF basic logic dialect [RIF-BLD] is essentially Horn Logic, a well-studied sublanguage of First-Order Logic that is the basis of Logic Programming, which is especially common amongst semantic web researchers. The W3C RIF working group is also developing a framework for logic dialects [RIF-FLD], which functions basically as a catalog of syntactic and semantic features to be assembled to specify a new logic dialect. RIF-BLD is defined both as a stand-alone specification, and as a specialization of RIF-FLD. The RIF production rule dialect [RIF-PRD] is designed to support a basic, but useful, set of features that are shared by the main stream production rule languages and engines (both commercial and open source). The expressiveness of the Core dialect [RIF-Core] will be essentially equivalent to Datalog, a minimal logic programming language with uses in active data bases. The RIF Core dialect is specified both as a specialization of RIF basic logic dialect and as a specialization of RIF production rule dialect. There is an overlap in scope between W3C RIF PRD and PRR, and they share the goal of rule interoperability, albeit for different stages of the software development lifecycle. The division of labor is o OMG PRR focuses on the standard metamodel definition and modeling of production rules (and possibly other rule types) with an XMI-compliant interchange format for UML based modeling tools o W3C RIF PRD focuses on a Rule Interchange Format suitable for the real-time “Web” and users of “Web technologies” such as XML. The W3C working group appointed a liaison to work with PRR Core metamodel to maximize the value of these standards efforts in both groups. The liaison effort is effective because of considerable overlap in membership of the PRR and RIF groups. In addition, the RIF working group is encouraged (by charter [RIF-Charter]) to produce a document showing how these standards work together. Furthermore it is expected that a future version of PRR, PRR RIF, will be extended to with W3C RIF PRD syntax for PRR Conditions and Actions, further enabling design-to-runtime transitions. [RIF-BLD] http://www.w3.org/TR/rif-bld [RIF-Charter] http://www.w3.org/2005/rules/wg/charter#omg-prr [RIF-Core] http://www.w3.org/TR/rif-core [RIF-FLD] http://www.w3.org/TR/rif-fld [RIF-PRD] http://www.w3.org/TR/rif-prd 

Resolution: Per PRR FTF face2face meeting: need to update the PRR-W3C RIF relationship to the following text.
Revised Text: Annex D text changed to (without formatting): In November 2005, the World Wide Web consortium (W3C) chartered the Rule Interchange Format (RIF) working group to specify a format for rules that can be used across diverse systems. This format (defined as a language) will function as an interlingua into which both established and new rule languages can be mapped, allowing rules written for one application to be published, shared, and re-used in other applications and other rule engines. Because of the great variety in rule languages and rule engine technologies used in academia and emerging technologies, this common format will take the form of a Core language to be used with a set of standard and non-standard extensions. These extensions need not, and are unlikely to, all be combinable into a single “unified rule language”. The primary normative syntax of all the dialects must be an XML syntax. Users are expected to work with tools or rule languages that are transformed to and from this format. Practically, the approach taken by the W3C RIF Working Group has been to develop a basic logic dialect of RIF (RIF-BLD) and a production rule dialect (RIF-PRD), and to define the Core dialect as a subset of their intersection that is useful on its own right. The semantics of RIF basic logic dialect [RIFBLD] is essentially Horn Logic, a well-studied sublanguage of First-Order Logic that is the basis of Logic Programming, which is especially common amongst semantic web researchers. The W3C RIF working group is also developing a framework for logic dialects [RIF-FLD], which functions basically as a catalog of syntactic and semantic features to be assembled to specify a new logic dialect. RIF-BLD is defined both as a stand-alone specification, and as a specialization of RIF-FLD. The RIF production rule dialect [RIF-PRD] is designed to support a basic, but useful, set of features that are shared by the main stream production rule languages and engines (both commercial and open source). The expressiveness of the Core dialect [RIF-Core] will be essentially equivalent to Datalog, a minimal logic programming language with uses in active data bases. The RIF Core dialect is specified both as a specialization of RIF basic logic dialect and as a specialization of RIF production rule dialect. There is an overlap in scope between W3C RIF PRD and PRR, and they share the goal of rule interoperability, albeit for different stages of the software development lifecycle. The division of labor is o OMG PRR focuses on the standard metamodel definition and modeling of production rules (and possibly other rule types) with an XMI-compliant interchange format for UML based modeling tools o W3C RIF PRD focuses on a Rule Interchange Format suitable for the real-time “Web” and users of “Web technologies” such as XML. The W3C working group appointed a liaison to work with PRR Core metamodel to maximize the value of these standards efforts in both groups. The liaison effort is effective because of considerable overlap in membership of the PRR and RIF groups. In addition, the RIF working group is encouraged (by charter [RIF-Charter]) to produce a document showing how these standards work together. Furthermore it is expected that a future version of PRR, PRR RIF, will be extended to with W3C RIF PRD syntax for PRR Conditions and Actions, further enabling design-to-runtime transitions. [RIF-BLD] http://www.w3.org/TR/rif-bld [RIF-Charter] http://www.w3.org/2005/rules/wg/charter#omg-prr [RIF-Core] http://www.w3.org/TR/rif-core [RIF-FLD] http://www.w3.org/TR/rif-fld [RIF-PRD] http://www.w3.org/TR/rif-prd
Actions taken:
February 23, 2009: received issue
July 23, 2009: closed issue

Issue 13539: Replace references to metamodel to metamodel and profile (prr-ftf)

Click
here for this issue's archive.
Source: TIBCO (Mr. Paul Vincent, pvincent(at)tibco.com)
Nature: Enhancement
Severity: Minor
Summary:
Replace references to metamodel to metamodel and profile. Chapter should now read: The following MOF2 compliant metamodel and profile defines the PRR. They feature: • A definition of production rules for forward chaining inference and procedural processing. • A non-normative definition for an interchangeable expression language (PRR OCL) for rule condition and action expressions, so they can be replaced by alternative representations for vendor-specific usage or in other standards. • A definition of rulesets as collections of rules with a particular mode of execution (sequential or inferencing). The metamodel and profile are composed of: • a core structure referred to as PRR Core • an non-normative abstract OCL-based syntax for PRR expressions, defined as an extended PRR Core metamodel referred to as PRR OCL. Future extensions of PRR may address: • rule metamodels and profiles for other classes of rules, such as Event-Condition-Action (ECA), backward chaining, and constraints • rule representations that are specific to graphical notations, such as decision tables and decision trees • representations of sequences of rulesets within larger decisions • transformations between PRR and other MDA models such as SBVR. 

Resolution: Replace references to metamodel to metamodel and profile
Revised Text: Chapter 7.1 should now read (without definitive formatting): The following MOF2 compliant metamodel and profile defines the PRR. They feature: •A definition of production rules for forward chaining inference and procedural processing. •A non-normative definition for an interchangeable expression language (PRR OCL) for rule condition and action expressions, so they can be replaced by alternative representations for vendor-specific usage or in other standards. •A definition of rulesets as collections of rules with a particular mode of execution (sequential or inferencing). The metamodel and profile are composed of: •a core structure referred to as PRR Core •an non-normative abstract OCL-based syntax for PRR expressions, defined as an extended PRR Core metamodel referred to as PRR OCL. Future extensions of PRR may address: •rule metamodels and profiles for other classes of rules, such as Event-Condition-Action (ECA), backward chaining, and constraints •rule representations that are specific to graphical notations, such as decision tables and decision trees •representations of sequences of rulesets within larger decisions •transformations between PRR and other MDA models such as SBVR.
Actions taken:
February 23, 2009: received issue
July 23, 2009: closed issue

Issue 13540: Change model to use Expression in lieu of OpaqueExpression (nherited from UML2) (prr-ftf)

Click
here for this issue's archive.
Source: TIBCO (Mr. Paul Vincent, pvincent(at)tibco.com)
Nature: Revision
Severity: Minor
Summary:
Change model to use Expression in lieu of OpaqueExpression (nherited from UML2) - following FTF face2face discussions on relevance of Expression vs OpaqueExpression. Affects: pg 9 Fig 7.1 PRR metamodel pg 11 Fig 7.3 PRR ProductionRule Classes pg 11 Fig 7.4 PRR RuleVariable Classes pg 12-13 7.4.6 Computer Executable Rule pg 13 7.4.8 Variable pg 14 7.4.9 ProductionRuleset pg 15 7.4.11 RuleCondition pg 16 7.4.12 RuleAction pg 16 7.4.15 RuleVariable pg 18 Fig 7.6 Metamodel for PRR OCL pg 43-44 Annex A Complete Metamodel In all the above, the OpaqueEpression is directly replaced by Expression with no other changes.

Resolution: Change model to use Expression in lieu of OpaqueExpression (inherited from UML2) - following FTF face2face discussions on relevance of Expression vs OpaqueExpression
Revised Text: In the following figures, the UML class OpaqueExpression is replaced 1 for 1 by the UML class Expression. pg 9 Fig 7.1 PRR metamodel pg 11 Fig 7.3 PRR ProductionRule Classes pg 11 Fig 7.4 PRR RuleVariable Classes pg 18 Fig 7.6 Metamodel for PRR OCL pg 43-44 Annex A Complete Metamodel In the following pages and chapters, the texts for the descriptions of the PRR classes are identical except for the substitution of Expression for OpaqueExpression. pg 12-13 7.4.6 Computer Executable Rule pg 13 7.4.8 Variable pg 14 7.4.9 ProductionRuleset pg 15 7.4.11 RuleCondition pg 16 7.4.12 RuleAction pg 16 7.4.15 RuleVariable
Actions taken:
February 23, 2009: received issue
July 23, 2009: closed issue

Issue 13541: Figure 7.5 is redundant as it is replaced by a more recent diagram displayed as Figure 7.6 (prr-ftf)

Click
here for this issue's archive.
Source: TIBCO (Mr. Paul Vincent, pvincent(at)tibco.com)
Nature: Revision
Severity: Minor
Summary:
Figure 7.5 is redundant as it is replaced by a more recent diagram displayed as Figure 7.6. Probably a typesetting or Word error. Remove Figure 7.5.

Resolution: Figure 7.5 is redundant as it is replaced by a more recent diagram displayed as Figure 7.6. Probably a typesetting or Word error
Revised Text: remove figure 7.5.
Actions taken:
February 23, 2009: received issue
July 23, 2009: closed issue

Issue 13820: problems with the EMOF, CMOF, XSD and Profile files (prr-ftf)

Click
here for this issue's archive.
Source: TIBCO (Mr. Paul Vincent, pvincent(at)tibco.com)
Nature: Revision
Severity: Minor
Summary:
For the included files in PRR, there are a number of problems with the EMOF, CMOF, XSD and Profile files as discussed by the AB. These are: 1. Profile document is missing. 2. The model as described in these files have several "private" associations defined, where all such associations should be "public". 3. The model as described in these files have several end associations defined as "*" in the specification indicating "0..*" cardinality, but are represented as "*..*" (lower bound * instead of 0) in the model. 4. The model as described in these files refers to CMOF Behavior instead of UML Behavior as per the spec. e.g. <superClass href="http://schema.omg.org/spec/MOF/2.0/cmof.xml#Behavior"/>

Resolution: Adjust the PRR model in Magicdraw to generate model files that comply with the above suggestions, and ensure these corrected model files are part of the PRR specification: - Ensure all association ends that are *..* ranges are changed to 0..* - Ensure all associations are public not private - Ensure all inherited classes from UML (Class, Behavior, NamedElement, Expression) are defined as being explicitly from UML2 - Ensure that an explicit UML Profile file is provided Note that none of these require any change to the specification document, just to the delivered normative model files delivered with PRR
Revised Text: No changes to the specification document. Replaced EMOF and CMOF files after adjustments to the model to meet the specification and above requirements. Changes to PRR.cmof are: - All references to visibility="private" are replaced with visibility="public" - All references to lower="*" upper="*" are replaced with lower="0" upper="*" Changes to PRR.emof are: - All references to lower="*" upper="*" are replaced with lower="0" upper="*" Note that the non-normative UML modeling tool file was changed to ensure references to inherited UML classes were explicitly UML rather than any reference to CMOF or EMOF. Added Profile file PRR.xml by transformed model file (removing vendor extensions) to produce Profile file. Replaced the ZIP file of MOF and XSD with ZIP file of MOF and XSD and Profile XMI
Actions taken:
March 24, 2009: received issue
July 23, 2009: closed issue