org.semanticweb.HermiT.model
Class DatatypeRestriction

java.lang.Object
  extended by org.semanticweb.HermiT.model.DataRange
      extended by org.semanticweb.HermiT.model.LiteralDataRange
          extended by org.semanticweb.HermiT.model.AtomicDataRange
              extended by org.semanticweb.HermiT.model.DatatypeRestriction
All Implemented Interfaces:
java.io.Serializable, DLPredicate

public class DatatypeRestriction
extends AtomicDataRange

A data range consisting of a datatype URI and a number of facet restrictions. NOTE: RDFS_LITERAL is treated as InternalDatatype due to implemetnation side-effects.

See Also:
Serialized Form

Field Summary
protected  java.lang.String m_datatypeURI
           
protected  java.lang.String[] m_facetURIs
           
protected  Constant[] m_facetValues
           
static java.lang.String[] NO_FACET_URIs
           
static Constant[] NO_FACET_VALUES
           
protected static InterningManager<DatatypeRestriction> s_interningManager
           
 
Constructor Summary
DatatypeRestriction(java.lang.String datatypeURI, java.lang.String[] facetURIs, Constant[] facetValues)
           
 
Method Summary
static DatatypeRestriction create(java.lang.String datatypeURI, java.lang.String[] facetURIs, Constant[] facetValues)
           
 java.lang.String getDatatypeURI()
           
 java.lang.String getFacetURI(int index)
           
 Constant getFacetValue(int index)
           
 LiteralDataRange getNegation()
           
 int getNumberOfFacetRestrictions()
           
 boolean isAlwaysFalse()
           
 boolean isAlwaysTrue()
           
protected  java.lang.Object readResolve()
           
 java.lang.String toString(Prefixes prefixes)
           
 
Methods inherited from class org.semanticweb.HermiT.model.LiteralDataRange
isInternalDatatype, isNegatedInternalDatatype
 
Methods inherited from class org.semanticweb.HermiT.model.DataRange
getArity, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.semanticweb.HermiT.model.DLPredicate
getArity
 

Field Detail

NO_FACET_URIs

public static final java.lang.String[] NO_FACET_URIs

NO_FACET_VALUES

public static final Constant[] NO_FACET_VALUES

m_datatypeURI

protected final java.lang.String m_datatypeURI

m_facetURIs

protected final java.lang.String[] m_facetURIs

m_facetValues

protected final Constant[] m_facetValues

s_interningManager

protected static InterningManager<DatatypeRestriction> s_interningManager
Constructor Detail

DatatypeRestriction

public DatatypeRestriction(java.lang.String datatypeURI,
                           java.lang.String[] facetURIs,
                           Constant[] facetValues)
Method Detail

getDatatypeURI

public java.lang.String getDatatypeURI()

getNumberOfFacetRestrictions

public int getNumberOfFacetRestrictions()

getFacetURI

public java.lang.String getFacetURI(int index)

getFacetValue

public Constant getFacetValue(int index)

getNegation

public LiteralDataRange getNegation()
Specified by:
getNegation in class AtomicDataRange

isAlwaysTrue

public boolean isAlwaysTrue()
Specified by:
isAlwaysTrue in class DataRange

isAlwaysFalse

public boolean isAlwaysFalse()
Specified by:
isAlwaysFalse in class DataRange

toString

public java.lang.String toString(Prefixes prefixes)
Specified by:
toString in interface DLPredicate
Specified by:
toString in class DataRange

readResolve

protected java.lang.Object readResolve()

create

public static DatatypeRestriction create(java.lang.String datatypeURI,
                                         java.lang.String[] facetURIs,
                                         Constant[] facetValues)