Class RestrictedRealDatatype

  • All Implemented Interfaces:
    DataRange<java.lang.Number>, RestrictedDatatype<java.lang.Number>

    public class RestrictedRealDatatype
    extends java.lang.Object
    implements RestrictedDatatype<java.lang.Number>

    Title: Restricted Real Datatype

    Description: A subset of the value space of owl:real. TODO add support for TOTAL_DIGITS & FRACTION_DIGITS

    Copyright: Copyright (c) 2009

    Company: Clark & Parsia, LLC.

    Author:
    Mike Smith
    • Method Detail

      • applyConstrainingFacet

        public RestrictedDatatype<java.lang.Number> applyConstrainingFacet​(openllet.aterm.ATermAppl facet,
                                                                           java.lang.Object value)
        Description copied from interface: RestrictedDatatype
        Apply a constraining facet to further restrict the value space
        Specified by:
        applyConstrainingFacet in interface RestrictedDatatype<java.lang.Number>
        Parameters:
        facet - the constraining facet name (typically a URI)
        value - the value for the constraining facet. This is not necessarily in the value space of the base datatype (e.g., length facet values on string types are not)
        Returns:
        the further restricted value space
      • contains

        public boolean contains​(java.lang.Object value)
        Description copied from interface: DataRange
        Check if a data range contains a particular value
        Specified by:
        contains in interface DataRange<java.lang.Number>
        Parameters:
        value - the value to check
        Returns:
        true if the _data range contains value, false else
      • containsAtLeast

        public boolean containsAtLeast​(int n)
        Description copied from interface: DataRange
        Check that a data range contains a minimum number of elements
        Specified by:
        containsAtLeast in interface DataRange<java.lang.Number>
        Parameters:
        n - the number of elements
        Returns:
        true if the _data range contains n or more elements, false otherwise
      • exclude

        public RestrictedDatatype<java.lang.Number> exclude​(java.util.Collection<?> values)
        Description copied from interface: RestrictedDatatype
        Exclude specific elements from the _data range. Used when a restricted _data range is in a conjunction with a negative enumeration. Elements in values that are not contained in the restriction are ignored.
        Specified by:
        exclude in interface RestrictedDatatype<java.lang.Number>
        Parameters:
        values - The values to exclude
        Returns:
        A new RestrictedDatatype
      • getDatatype

        public Datatype<? extends java.lang.Number> getDatatype()
        Description copied from interface: RestrictedDatatype
        Query for the base datatype of a restricted datatype. This is not necessarily a primitive datatype.
        Specified by:
        getDatatype in interface RestrictedDatatype<java.lang.Number>
        Returns:
        the base datatype
      • getValue

        @Deprecated
        public java.lang.Number getValue​(int i)
        Deprecated.
        Description copied from interface: DataRange
        Return a value from an enumerable _data range. Necessary to support LiteralValueBranch shiftTryNext
        Specified by:
        getValue in interface DataRange<java.lang.Number>
        Parameters:
        i - the _index of the value in the _data range
        Returns:
        the value
      • intersect

        public RestrictedDatatype<java.lang.Number> intersect​(RestrictedDatatype<?> other,
                                                              boolean negated)
        Description copied from interface: RestrictedDatatype
        Intersect this range with another range. It must be the case that getDatatype().getPrimitiveDatatype().equals( other.getDatatype.getPrimiveDatatype()
        Specified by:
        intersect in interface RestrictedDatatype<java.lang.Number>
        Parameters:
        other - restricted datatype to merge into this
        negated - true if other is negated, false else
        Returns:
        a new RestrictedDatatype, representing the intersection of this and other
      • isEmpty

        public boolean isEmpty()
        Description copied from interface: DataRange
        Convenience method equivalent to !containsAtLeast(0)
        Specified by:
        isEmpty in interface DataRange<java.lang.Number>
        Returns:
        true if the _data range contains no elements, false otherwise
      • isEnumerable

        public boolean isEnumerable()
        Description copied from interface: DataRange
        Query if values in the _data range can be enumerated.
        Specified by:
        isEnumerable in interface DataRange<java.lang.Number>
        Returns:
        true if the _data range is enumerable, false otherwise
      • isFinite

        public boolean isFinite()
        Description copied from interface: DataRange
        Query if there are a finite number of values in the _data range.
        Specified by:
        isFinite in interface DataRange<java.lang.Number>
        Returns:
        true if the _data range is finite, false otherwise
      • size

        @Deprecated
        public int size()
        Deprecated.
        Description copied from interface: DataRange
        Return the size of the _data range. Necessary to support LiteralValueBranch constructor
        Specified by:
        size in interface DataRange<java.lang.Number>
        Returns:
        the size of the _data range
      • union

        public RestrictedDatatype<java.lang.Number> union​(RestrictedDatatype<?> other)
        Description copied from interface: RestrictedDatatype
        Union this range with another range. It must be the case that getDatatype().getPrimitiveDatatype().equals( other.getDatatype.getPrimiveDatatype()
        Specified by:
        union in interface RestrictedDatatype<java.lang.Number>
        Parameters:
        other - restricted datatype to merge with this
        Returns:
        a new RestrictedDatatype, representing the intersection of this and other
      • valueIterator

        public java.util.Iterator<java.lang.Number> valueIterator()
        Description copied from interface: DataRange
        Get a (possibly infinite) iterator over values in the _data range.
        Specified by:
        valueIterator in interface DataRange<java.lang.Number>
        Returns:
        an Iterator
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object