org.universAAL.middleware.service
Class AggregatingFilter

Package class diagram package AggregatingFilter
java.lang.Object
  extended by org.universAAL.middleware.rdf.Resource
      extended by org.universAAL.middleware.rdf.FinalizedResource
          extended by org.universAAL.middleware.service.AggregatingFilter

public class AggregatingFilter
extends FinalizedResource

The aggregatingFilter class together with ServiceRequest class cover the CALL clause of a SPARQL-like query.

Author:
mtazari - Saied Tazari
See Also:
AggregatingFilterFactory

Field Summary
static String MY_URI
           
static String PROP_uAAL_AGGREGATION_FUNCTION
           
static String PROP_uAAL_AGGREGATION_PARAMS
           
 
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
AggregatingFilter()
          Creates a AggregatingFilter object.
AggregatingFilter(AggregationFunction func, List params, boolean asLiteral)
          Sets the the function and the parameters of the property if function and it's parameters are valid, otherwise false.
AggregatingFilter(boolean asLiteral)
          Creates a AggregatingFilter object.
AggregatingFilter(String uri)
           
 
Method Summary
 List getFunctionParams()
          Returns the list of the AggregationFunction parameters.
 AggregationFunction getTheFunction()
          Returns the AggregationFunction property.
 boolean isWellFormed()
          Returns true, if the PROP_uAAL_AGGREGATION_FUNCTION and PROP_uAAL_AGGREGATION_PARAMS contain the required key.
 boolean setProperty(String propURI, Object value)
          Adds a statement with this resource as the subject, the given propURI as the predicate and the given value as the object.
 AggregatingFilter toLiteral()
          Returns a copy of this filter that serializes as XML Literal.
 
Methods inherited from class org.universAAL.middleware.rdf.FinalizedResource
addType, getLocalName, getNamespace, getProperty, getPropertyURIs, getType, getTypes, getURI, hasQualifiedName, isAnon, numberOfProperties
 
Methods inherited from class org.universAAL.middleware.rdf.Resource
addMultiLangProp, asList, asList, asRDFList, changeProperty, copy, deepCopy, equals, generateAnonURI, getDefaultLang, getFilename, getMultiLangProp, getOrConstructLabel, getPropSerializationType, getResource, getResourceComment, getResourceLabel, getStaticFieldValue, hashCode, hasProperty, isAnon, isBlockingAddingTypes, isClosedCollection, isQualifiedName, literal, 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

MY_URI

public static final String MY_URI
See Also:
Constant Field Values

PROP_uAAL_AGGREGATION_FUNCTION

public static final String PROP_uAAL_AGGREGATION_FUNCTION
See Also:
Constant Field Values

PROP_uAAL_AGGREGATION_PARAMS

public static final String PROP_uAAL_AGGREGATION_PARAMS
See Also:
Constant Field Values
Constructor Detail

AggregatingFilter

public AggregatingFilter()
Creates a AggregatingFilter object.


AggregatingFilter

public AggregatingFilter(String uri)

AggregatingFilter

public AggregatingFilter(boolean asLiteral)
Creates a AggregatingFilter object.

Parameters:
asLiteral -

AggregatingFilter

public AggregatingFilter(AggregationFunction func,
                         List params,
                         boolean asLiteral)
Sets the the function and the parameters of the property if function and it's parameters are valid, otherwise false.

Parameters:
func - defines the function (max_of etc)
params - are addressed by means of property paths
Method Detail

getFunctionParams

public List getFunctionParams()
Returns the list of the AggregationFunction parameters.


getTheFunction

public AggregationFunction getTheFunction()
Returns the AggregationFunction property.


isWellFormed

public boolean isWellFormed()
Returns true, if the PROP_uAAL_AGGREGATION_FUNCTION and PROP_uAAL_AGGREGATION_PARAMS contain the required key.

Overrides:
isWellFormed in class Resource

setProperty

public boolean setProperty(String propURI,
                           Object value)
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 propURI, Object value)

toLiteral

public AggregatingFilter toLiteral()
Returns a copy of this filter that serializes as XML Literal.



Copyright © 2014 universAAL Consortium. All Rights Reserved.