All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.swrlapi.drools.converters.drl.DroolsOWLLiteral2DRLConverter Maven / Gradle / Ivy

There is a newer version: 2.1.3
Show newest version
package org.swrlapi.drools.converters.drl;

import org.checkerframework.checker.nullness.qual.NonNull;
import org.semanticweb.owlapi.model.IRI;
import org.semanticweb.owlapi.model.OWLLiteral;
import org.swrlapi.bridge.SWRLRuleEngineBridge;
import org.swrlapi.bridge.converters.TargetRuleEngineConverterBase;
import org.swrlapi.bridge.converters.TargetRuleEngineOWLLiteralConverter;
import org.swrlapi.drools.core.DroolsNames;

/**
 * This class converts OWLAPI OWL literals to their Drools DRL representation.
 *
 * @see org.semanticweb.owlapi.model.OWLLiteral
 */
public class DroolsOWLLiteral2DRLConverter extends TargetRuleEngineConverterBase implements
TargetRuleEngineOWLLiteralConverter
{
  public DroolsOWLLiteral2DRLConverter(@NonNull SWRLRuleEngineBridge bridge)
  {
    super(bridge);
  }

  @NonNull @Override
  public String convert(@NonNull OWLLiteral literal)
  {
    IRI datatypeIRI = literal.getDatatype().getIRI();
    String datatypePrefixedName = iri2PrefixedName(datatypeIRI);

    return "new " + DroolsNames.LITERAL_CLASS_NAME + "(\"" + literal.getLiteral() + "\", \"" + datatypePrefixedName
        + "\")";
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy