Frequently Asked Questions about the Working Group I1 Research.

  1. What is R2ML?
  2. R2ML: Why another rule markup framework, when we already have RuleML and SWRL?
  3. What is URML?
  4. What is the difference between URML and R2ML?
  5. What is Strelka?
  6. What is the purpose of R2ML translators?
Q: What is R2ML? A: R2ML is a comprehensive and user-friendly XML rule format that allows interchanging rules between different systems and tools, enriching ontologies by rules, connecting your rule system with (our) R2ML-based tools for visualization, verbalization, verification and validation. You may read more about R2ML, browse R2ML examples and the XML schema. Q: Why another rule markup language, when we already have RuleML and SWRL? A: SWRL is not a general rule markup language that can be used for interchanging rules between different rule languages. It lacks many rule language concepts such as n-ary predicates or function terms. SWRL is just an OWL rule language. RuleML is intended for interchange, but it's not sufficiently general. E.g., it does not support the predicate types of OWL and SWRL, so you cannot properly markup a SWRL rule in RuleML. Also, RuleML does not have a clear language design - there is no MOF/UML metamodel for it. Since its development has been rather syntax-driven, it is not very stable and has undergone frequent changes in the past. Thus, R2ML is the first and only general rule markup language at present. Q: What is URML? A: URML is a UML-based rule modelling language. It allows to model rules graphically with boxes, circles and arrows within UML class diagrams. Boxes represent the vocabulary, while circles represent rules with arrows as conditions, conclusions, triggering events and triggered actions. Browse some sample rule models on our web site. Q: What is the difference between URML and R2ML? A: URML and R2ML are two languages for different purposes, but their metamodels have a lot of things in common and largely overlap. Our URML tool Strelka serializes rule models into R2ML as UML is serialized into XMI. Such serialization gives a possibility to model rules for any platform, if a transformation from R2ML to the target platform is available. For example, we may model rules in URML and then apply R2ML to OWL/SWRL transformation and use Racer in order to check consistency or to do other useful things Racer can do with OWL. Q: What is Strelka A: Strelka is a rulemodeling tool, which supports a UML-based Rule Modeling Language (URML). It is implemented as a plugin for Fujaba - open source UML case suite. The tool supports modeling of derivation rules, production rules and reaction rules. The first public release is planned for October 2006. Q: What is the purpose of R2ML translators? A: In order to provide the proof of concepts we develop translators from the languages I have mentioned above into R2ML and vice versa. Our final goal is to provide an integrated web-service, which provides rules interchange from any to any rule language, plus verbalization and validation of rules (these last two topics are currently under development). The current status can be seen on our web page in the translators section. Currently we support the following transformations: R2ML to F-Logic, F-Logic XML to R2ML, R2ML to Jess, R2ML to RuleML and we are going to release R2ML <-> OCL and R2ML<->OWL/SWRL soon.