org.universAAL.middleware.owl
Class Enumeration

Package class diagram package Enumeration
java.lang.Object
  extended by org.universAAL.middleware.rdf.Resource
      extended by org.universAAL.middleware.owl.TypeExpression
          extended by org.universAAL.middleware.owl.Enumeration

public final class Enumeration
extends TypeExpression

An enumeration of the individuals a1 ... an contains exactly the individuals ai for 1 ≤ i ≤ n.

Author:
mtazari - Saied Tazari, Carsten Stockloew

Field Summary
static String PROP_OWL_ONE_OF
          URI for owl:oneOf.
static String TYPE_OWL_DATA_RANGE
          URI for owl:DataRange.
 
Fields inherited from class org.universAAL.middleware.owl.TypeExpression
EXCEPTION_TTL, OWL_CLASS, OWL_NAMESPACE, PROP_RDFS_SUB_CLASS_OF, RDFS_DATATYPE, TYPE_OWL_THING
 
Fields inherited from class org.universAAL.middleware.rdf.Resource
ANON_URI_PREFIX, blockAddingTypes, isXMLLiteral, ns_delim_index, PROP_RDF_FIRST, PROP_RDF_REST, PROP_RDF_TYPE, PROP_RDFS_COMMENT, PROP_RDFS_LABEL, PROP_SERIALIZATION_FULL, PROP_SERIALIZATION_OPTIONAL, PROP_SERIALIZATION_REDUCED, PROP_SERIALIZATION_UNDEFINED, PROP_uAAL_INVOLVED_HUMAN_USER, props, RDF_EMPTY_LIST, RDF_NAMESPACE, RDFS_NAMESPACE, TYPE_RDF_LIST, TYPE_RDFS_CLASS, uAAL_NAMESPACE_PREFIX, uAAL_SERVICE_NAMESPACE, uAAL_VOCABULARY_NAMESPACE, uri
 
Constructor Summary
Enumeration()
          Constructor.
Enumeration(Object[] values)
          Constructor with initial values.
 
Method Summary
 boolean addValue(Object o)
          Add a new individual.
 TypeExpression copy()
          Create a copy of this object, i.e. create a new object of this class and copy the necessary properties.
 Comparable getMaxValue()
          Get the maximum value from all individuals.
 Comparable getMinValue()
          Get the minimum value from all individuals.
 String[] getNamedSuperclasses()
          Get the set of class URIs for all super classes of the individuals of this class expression.
 Object[] getUpperEnumeration()
          Each type expression can contain multiple objects; this method returns this set of objects.
 boolean hasMember(Object value, HashMap context, int ttl, List<MatchLogEntry> log)
          Returns true if the given object is a member of the class represented by this type expression, otherwise false.
 boolean hasSupertype(TypeExpression supertype, HashMap context, int ttl, List<MatchLogEntry> log)
          Determines if all individuals of this Enumeration are members of the given supertype.
 boolean isDisjointWith(TypeExpression other, HashMap context, int ttl, List<MatchLogEntry> log)
          Returns true if the given type expression has no member in common with the class represented by this type expression, otherwise false.
 boolean isWellFormed()
          Returns true, if the state of the resource is valid, otherwise false.
 boolean matches(TypeExpression subtype, HashMap context, int ttl, List<MatchLogEntry> log)
          Returns true if the given type expression is a subset of the class represented by this type expression, otherwise false.
 boolean setProperty(String propURI, Object o)
          Adds a statement with this resource as the subject, the given propURI as the predicate and the given value as the object.
 int size()
          Returns the number of elements in this enumeration.
 Iterator values()
          Get an iterator for the individuals.
 
Methods inherited from class org.universAAL.middleware.owl.TypeExpression
checkTTL, collectTypesMinimized, getDefaultMatchmakingTTL, hasMember, hasMember, isDisjointWith, isDisjointWith, matches, matches, synchronize
 
Methods inherited from class org.universAAL.middleware.rdf.Resource
addMultiLangProp, addType, asList, asList, asRDFList, changeProperty, copy, deepCopy, equals, generateAnonURI, getDefaultLang, getFilename, getLocalName, getMultiLangProp, getNamespace, getOrConstructLabel, getProperty, getPropertyURIs, getPropSerializationType, getResource, getResourceComment, getResourceLabel, getStaticFieldValue, getType, getTypes, getURI, hashCode, hasProperty, hasQualifiedName, isAnon, isAnon, isBlockingAddingTypes, isClosedCollection, isQualifiedName, literal, numberOfProperties, representsQualifiedURI, serializesAsXMLLiteral, setPropertyPath, setPropertyPath, setPropertyPathFromOffset, setResourceComment, setResourceLabel, toString, toStringRecursive, toStringRecursive, unliteral
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

PROP_OWL_ONE_OF

public static final String PROP_OWL_ONE_OF
URI for owl:oneOf.

See Also:
Constant Field Values

TYPE_OWL_DATA_RANGE

public static final String TYPE_OWL_DATA_RANGE
URI for owl:DataRange.

See Also:
Constant Field Values
Constructor Detail

Enumeration

public Enumeration()
Constructor.


Enumeration

public Enumeration(Object[] values)
Constructor with initial values.

Method Detail

addValue

public boolean addValue(Object o)
Add a new individual.


copy

public TypeExpression copy()
Description copied from class: TypeExpression
Create a copy of this object, i.e. create a new object of this class and copy the necessary properties.

Specified by:
copy in class TypeExpression
Returns:
The newly created copy.
See Also:
TypeExpression.copy()

getMaxValue

public Comparable getMaxValue()
Get the maximum value from all individuals. The individuals have to implement the Comparable interface.

Returns:
The maximum value, or null if an individual does not implement the Comparable interface.

getMinValue

public Comparable getMinValue()
Get the minimum value from all individuals. The individuals have to implement the Comparable interface.

Returns:
The minimum value, or null if an individual does not implement the Comparable interface.

getNamedSuperclasses

public String[] getNamedSuperclasses()
Description copied from class: TypeExpression
Get the set of class URIs for all super classes of the individuals of this class expression.

Specified by:
getNamedSuperclasses in class TypeExpression
See Also:
TypeExpression.getNamedSuperclasses()

getUpperEnumeration

public Object[] getUpperEnumeration()
Description copied from class: TypeExpression
Each type expression can contain multiple objects; this method returns this set of objects.

Specified by:
getUpperEnumeration in class TypeExpression
See Also:
TypeExpression.getUpperEnumeration()

hasMember

public boolean hasMember(Object value,
                         HashMap context,
                         int ttl,
                         List<MatchLogEntry> log)
Description copied from class: TypeExpression
Returns true if the given object is a member of the class represented by this type expression, otherwise false. The context table maps the URIs of certain variables onto values currently assigned to them. The variables are either standard variables managed by the universAAL middleware or parameters of a specific service in whose context this method is called. Both the object whose membership is going to be checked and this type expression may contain references to such variables. If there is already a value assigned to such a referenced variable, it must be replaced by the associated value, otherwise this method may expand the context table by deriving a value for such unassigned but referenced variables with which the membership can be asserted. In case of returning true, the caller must check the size of the context table to see if new conditions are added in order for the membership to be asserted. If the context table is null, the method does a global and unconditional check.

Specified by:
hasMember in class TypeExpression
Parameters:
value - the object whose membership is going to be checked
context - context of the matchmaking. May be null.
ttl - time-to-live parameter
log - list that can be filled with log entries. May be null.
Returns:
true if the specified member is a member of this type expression
See Also:
Constants.VAR_uAAL_ACCESSING_BUS_MEMBER, Constants.VAR_uAAL_ACCESSING_HUMAN_USER, Constants.VAR_uAAL_CURRENT_DATETIME, Constants.VAR_uAAL_SERVICE_TO_SELECT

matches

public boolean matches(TypeExpression subtype,
                       HashMap context,
                       int ttl,
                       List<MatchLogEntry> log)
Description copied from class: TypeExpression
Returns true if the given type expression is a subset of the class represented by this type expression, otherwise false. The context table maps the URIs of certain variables onto values currently assigned to them. The variables are either standard variables managed by the universAAL middleware or parameters of a specific service in whose context this method is called. Both of the type expressions may contain references to such variables. If there is already a value assigned to such a referenced variable, it must be replaced by the associated value, otherwise this method may expand the context table by deriving a value for such unassigned but referenced variables with which the compatibility of the two classes can be asserted. In case of returning true, the caller must check the size of the context table to see if new conditions are added in order for the compatibility to be asserted. If the context table is null, the method does a global and unconditional check.

Specified by:
matches in class TypeExpression
Parameters:
subtype - the type expression with which the compatibility is going to be checked
context - context of the matchmaking. May be null.
ttl - time-to-live parameter
log - list that can be filled with log entries. May be null.
Returns:
true if the given type expression is a subset of the class represented by this type expression, otherwise false
See Also:
Constants.VAR_uAAL_ACCESSING_BUS_MEMBER, Constants.VAR_uAAL_ACCESSING_HUMAN_USER, Constants.VAR_uAAL_CURRENT_DATETIME, Constants.VAR_uAAL_SERVICE_TO_SELECT

hasSupertype

public boolean hasSupertype(TypeExpression supertype,
                            HashMap context,
                            int ttl,
                            List<MatchLogEntry> log)
Determines if all individuals of this Enumeration are members of the given supertype.


isDisjointWith

public boolean isDisjointWith(TypeExpression other,
                              HashMap context,
                              int ttl,
                              List<MatchLogEntry> log)
Description copied from class: TypeExpression
Returns true if the given type expression has no member in common with the class represented by this type expression, otherwise false. The context table maps the URIs of certain variables onto values currently assigned to them. The variables are either standard variables managed by the universAAL middleware or parameters of a specific service in whose context this method is called. Both of the type expressions may contain references to such variables. If there is already a value assigned to such a referenced variable, it must be replaced by the associated value, otherwise this method may expand the context table by deriving a value for such unassigned but referenced variables with which the disjointness of the two classes can be asserted. In case of returning true, the caller must check the size of the context table to see if new conditions are added in order for the disjointness to be asserted. If the context table is null, the method does a global and unconditional check.

Specified by:
isDisjointWith in class TypeExpression
Parameters:
other - the type expression with which the disjointness is going to be checked
context - context of the matchmaking. May be null.
ttl - time-to-live parameter
log - list that can be filled with log entries. May be null.
Returns:
true if the given type expression has no member in common with the class represented by this type expression, otherwise false
See Also:
Constants.VAR_uAAL_ACCESSING_BUS_MEMBER, Constants.VAR_uAAL_ACCESSING_HUMAN_USER, Constants.VAR_uAAL_CURRENT_DATETIME, Constants.VAR_uAAL_SERVICE_TO_SELECT

isWellFormed

public boolean isWellFormed()
Description copied from class: TypeExpression
Returns true, if the state of the resource is valid, otherwise false. Redefined in this class as abstract to force subclasses to override it.

Specified by:
isWellFormed in class TypeExpression
See Also:
TypeExpression.isWellFormed()

setProperty

public boolean setProperty(String propURI,
                           Object o)
Description copied from class: Resource
Adds a statement with this resource as the subject, the given propURI as the predicate and the given value as the object. Subclasses must override this in order to decide if the statement to be added fits the general class constraints. If not, the call of this method should be ignored. For each property only one single call may be made to this method, unless subsequent calls to this method for setting the value of the same property are treated as an update for an update-able property. Multi-valued properties must be set using an instance of List. The differentiation, if a such list should be treated as an rdf:List, can be made with the help of Resource.isClosedCollection(String). The default implementation here accepts all property-value pairs blindly except for rdf:type which is handled if the value is a type URI, a Resource or a java.util.List of them.

Note: The setting of the property rdf:type is being handled by this class via the final methods Resource.addType(String, boolean), Resource.getType(), and Resource.getTypes(). Although these methods give the view of handling type URIs as strings, but in reality the types are stored as direct instances of this class. So, the subclasses should ignore calls for setting rdf:type; if not, then the subclass must pay attention that the value should be a List of direct instances of this class so that (1) the Resource.toString() method returns just the URI and (2) the serializers get no problems with the value. Also, settings via subclasses may be overwritten by this class if a subsequent call to Resource.addType(String, boolean) is made.

Overrides:
setProperty in class Resource
Returns:
true if the property changed as a result of the call
See Also:
Resource.setProperty(String, Object)

values

public Iterator values()
Get an iterator for the individuals.


size

public int size()
Returns the number of elements in this enumeration.



Copyright © 2014 universAAL Consortium. All Rights Reserved.