My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
R2MLIntegration  
How to import other rule formats?
Featured, Phase-Requirements
Updated Feb 4, 2010 by bastian....@gmail.com

Integration of the REWERSE Rule Markup Language (R2ML)

R2ML is a comprehensive and user-friendly XML rule format that allows

  • interchanging rules between different systems and tools,
  • enriching ontologies by rules,
  • connecting rule systems with R2ML-based tools for visualization, verbalization, verification and validation.

The goal of the R2ML subproject is to provide an import module that is able to map R2ML derivation rules into take. Hence the REWERSE Working Group I1 has developed several tools for transformation between different rule systems, it is straightforward to import many other rule formats into take.

So far its done...

Currently supported are the basic rule concepts of derivation rules from R2ML version 0.4. Inbetween there is a new R2ML version (0.5) available. There has been no testing with R2ML 0.5. Features not supported are rules other than derivation rules. Hence take is a derivation rule system it is not able to handle other rule flavours. The R2MLAdapter was build to use it in combination with the URML/R2ML modeling tool Strelka. All R2ML-artefacts generated by Strelka are also supported by the R2MLAdapter.

The following atoms are supported by the adapter:

  • AssociationAtom,
  • AttributionAtom,
  • DatatypePredicateAtom used with the SWRL, Built-Ins for Comparisons
  • EqualityAtom,
  • GenericAtom,
  • InequalityAtom,
  • ObjectClassificationAtom and
  • ReferencePropertyAtom.

Main classes of the R2MLAdapter

The main classes of the R2MLAdapter are the R2MLKnowledgeSource and the R2MLDriver. The R2MLKnowledgeSource is an implementation of the KnowledgeSource interface similar to the ScriptKnowledgeSource. The R2MLDriver can be used directly but it is strongly recommended to use the KnowledgeSource implementation.

The R2MLKnowledgeSource accepts xml inputstreams containing R2ML markup. The output is a take knowledge base. Hence R2ML has no concepts to describe queries queries are generated by the QueryGenerator a class that generates a query for all supported Predicates with different in-out-signatures. Datatypes used by R2ML are mapped by a DatatypeMapper to Java classes. The DefaultDatatypeMapper already supports mapping of XMLSchema-datatypes to the respective Java-classes. It is straightforward to build customized query generators and datatype mappers and to pass them to the R2MLKnowledgeSource.


Sign in to add a comment
Powered by Google Project Hosting