org.inria.ns.reflex.processor.asl
Interface AttributeDefinition

All Known Implementing Classes:
AttributeDefinitionAction

public interface AttributeDefinition

The definition of an attribute.

Author:
Philippe Poulard

Method Summary
 QName getAttributeName()
          Return the name of the attribute.
 Object getDefaultValue(DataSet dataSet)
          Return the default value of the attribute.
 List getMatchers(MasterSchema masterSchema)
          Return the matchers of this attributes.
 Schema getOwnerSchema()
          Return the schema that contains this definition.
 QName getTypeName()
          Return the name of the type of this attribute.
 

Method Detail

getAttributeName

QName getAttributeName()
Return the name of the attribute.

Returns:
The name of the attribute.

getTypeName

QName getTypeName()
Return the name of the type of this attribute.

Returns:
The name of the type of this attribute, or null.

getDefaultValue

Object getDefaultValue(DataSet dataSet)
                       throws XPathException
Return the default value of the attribute.

Parameters:
dataSet - The set of datas to use to compute the default value.
Returns:
The default value of the attribute.
Throws:
ExecutionException - If the action can't be performed.
XPathException

getOwnerSchema

Schema getOwnerSchema()
Return the schema that contains this definition.

Returns:
The schema that contains this definition.

getMatchers

List getMatchers(MasterSchema masterSchema)
                 throws ExecutionException,
                        XPathException
Return the matchers of this attributes. The first matcher that matches the attribute value is kept. If nothing matches the attribute value, it is an error.

Parameters:
masterSchema - The master schema to use when a matcher is defined with foreign definitions, for example a WXS type.
Returns:
The non-null list of matchers for this attributes.
Throws:
ExecutionException
XPathException