There are three ways to translate command-line interface, Java library or REST API. The next section show how to translate in each possible case. We assume for the samples there is a file "table.dmn". The file "table.dmn" contains a valid DMN Decision Table serialization.

Download jar with dependencies here.
Translation:
The command to translate "table.dmn" file to ruleml:
$> java -jar rts-0.1.0.jar dmn ruleml table.dmn
or
$> java -jar rts-0.1.0.jar dmn ruleml table.dmn table.ruleml
to store output to file "table.ruleml".

List supported operations:

$> java -jar rts-0.1.0.jar list

Maven:

<repositories>
      <!--other repositories if any-->
      <repository>
          <id>de.farbtrommel</id>
          <name>rts</name>
          <url>http://stark-cove-78485.herokuapp.com/repo</url>
      </repository>
  </repositories>
<dependency>
  <groupId>de.farbtrommel</groupId>
  <artifactId>rts</artifactId>
  <version>0.1.0</version>
</dependency>

Translation:

The code to translate "table.dmn" file to RuleML and store to file "table.ruleml":
//...
public static void main(String[] args) {
    RuleTranslationService rts = RuleTranslationServiceFactory.createRuleTranslationService();

    try {
        rts.translate(new File("table.dmn"), "DMN", "RuleML", new FileOutputStream("table.ruleml"));
    } catch (UnknownRulesLanguageException ex) {
        // ...
    } catch (RuleTranslationException ex) {
        // ...
    }
}
// ...
            

Retrieve supported languages.

Note, translation will be always from or to RuleML.

We assume ruleTranslatorService is initialized as in example above.

To Rule:

Set toRule = ruleTranslationService.getSupportedLanguagesToRuleML();

From Rule:

Set fromRule = ruleTranslationService.getSupportedLanguagesFromRuleML();

Translation:

Translate the DMN file call the URL

POST http://stark-cove-78485.herokuapp.com/api/translate/dmn/ruleml/ < dmn-file-content >

with the payload load with the file "table.dmn" content. The response will be in the payload and the content type is set in this example to application/xml

Retrieve supported languages.

Note, translation will be always from or to RuleML.

To Rule:

GET http://stark-cove-78485.herokuapp.com/api/to-ruleml/

From Rule:

GET http://stark-cove-78485.herokuapp.com/api/from-ruleml/

Execution:

Execute the DMN by calling the URL

POST http://stark-cove-78485.herokuapp.com/api/execute/ Payload: {language: "dmn", source: < dmn-file-content >, query: ["inputEntry(_,_,_)"]}

with a json object as payload. The response will be a json object array: 1. result of decision table, 2. all true output entries and 3. all true input entries.