Class RestrictedDurationDatatype

  • All Implemented Interfaces:
    DataRange<javax.xml.datatype.Duration>, RestrictedDatatype<javax.xml.datatype.Duration>

    public class RestrictedDurationDatatype
    extends java.lang.Object
    implements RestrictedDatatype<javax.xml.datatype.Duration>

    Title: Restricted Duration Datatype

    Description: A subset of the value space of xsd:duration

    Copyright: Copyright (c) 2009

    Company: Clark & Parsia, LLC.

    Author:
    Evren Sirin
    • Constructor Detail

      • RestrictedDurationDatatype

        public RestrictedDurationDatatype​(Datatype<javax.xml.datatype.Duration> dt,
                                          java.util.function.Predicate<javax.xml.datatype.Duration> check)
      • RestrictedDurationDatatype

        public RestrictedDurationDatatype​(Datatype<javax.xml.datatype.Duration> dt)
    • Method Detail

      • applyConstrainingFacet

        public RestrictedDatatype<javax.xml.datatype.Duration> applyConstrainingFacet​(openllet.aterm.ATermAppl facet,
                                                                                      java.lang.Object value)
                                                                               throws InvalidConstrainingFacetException
        Description copied from interface: RestrictedDatatype
        Apply a constraining facet to further restrict the value space
        Specified by:
        applyConstrainingFacet in interface RestrictedDatatype<javax.xml.datatype.Duration>
        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
        Throws:
        InvalidConstrainingFacetException
      • contains

        public boolean contains​(java.lang.Object duration)
        Description copied from interface: DataRange
        Check if a data range contains a particular value
        Specified by:
        contains in interface DataRange<javax.xml.datatype.Duration>
        Parameters:
        duration - 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<javax.xml.datatype.Duration>
        Parameters:
        n - the number of elements
        Returns:
        true if the _data range contains n or more elements, false otherwise
      • exclude

        public RestrictedDatatype<javax.xml.datatype.Duration> 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<javax.xml.datatype.Duration>
        Parameters:
        values - The values to exclude
        Returns:
        A new RestrictedDatatype
      • intersect

        public RestrictedDatatype<javax.xml.datatype.Duration> 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<javax.xml.datatype.Duration>
        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
      • union

        public RestrictedDatatype<javax.xml.datatype.Duration> 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<javax.xml.datatype.Duration>
        Parameters:
        other - restricted datatype to merge with this
        Returns:
        a new RestrictedDatatype, representing the intersection of this and other
      • getDatatype

        public Datatype<? extends javax.xml.datatype.Duration> 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<javax.xml.datatype.Duration>
        Returns:
        the base datatype
      • isEmpty

        public boolean isEmpty()
        Description copied from interface: DataRange
        Convenience method equivalent to !containsAtLeast(0)
        Specified by:
        isEmpty in interface DataRange<javax.xml.datatype.Duration>
        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<javax.xml.datatype.Duration>
        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<javax.xml.datatype.Duration>
        Returns:
        true if the _data range is finite, false otherwise
      • valueIterator

        public java.util.Iterator<javax.xml.datatype.Duration> valueIterator()
        Description copied from interface: DataRange
        Get a (possibly infinite) iterator over values in the _data range.
        Specified by:
        valueIterator in interface DataRange<javax.xml.datatype.Duration>
        Returns:
        an Iterator