org.dom4j.datatype
Class DatatypeAttribute

java.lang.Object
  extended byorg.dom4j.tree.AbstractNode
      extended byorg.dom4j.tree.AbstractAttribute
          extended byorg.dom4j.datatype.DatatypeAttribute
All Implemented Interfaces:
Attribute, Cloneable, Node, Serializable, com.sun.msv.datatype.SerializationContext, org.relaxng.datatype.ValidationContext

public class DatatypeAttribute
extends AbstractAttribute
implements com.sun.msv.datatype.SerializationContext, org.relaxng.datatype.ValidationContext

DatatypeAttribute represents an Attribute which supports the XML Schema Data Types specification.

Version:
$Revision: 1.9 $
Author:
James Strachan
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.dom4j.tree.AbstractNode
NODE_TYPE_NAMES
 
Fields inherited from interface org.dom4j.Node
ANY_NODE, ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_REFERENCE_NODE, MAX_NODE_TYPE, NAMESPACE_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, UNKNOWN_NODE
 
Constructor Summary
DatatypeAttribute(QName qname, com.sun.msv.datatype.xsd.XSDatatype datatype)
           
DatatypeAttribute(QName qname, com.sun.msv.datatype.xsd.XSDatatype datatype, String text)
           
 
Method Summary
protected  Object convertToValue(String txt)
           
 String getBaseUri()
           
 Object getData()
           Accesses the data of this attribute which may implement data typing bindings such as XML Schema or Java Bean bindings or will return the same value as Node#getText().
 String getNamespacePrefix(String uri)
           
 Element getParent()
           getParent returns the parent Element if this node supports the parent relationship or null if it is the root element or does not support the parent relationship.
 QName getQName()
           Returns the QName of this attribute which represents the local name, the qualified name and the Namespace.
 String getValue()
           Returns the value of the attribute.
 com.sun.msv.datatype.xsd.XSDatatype getXSDatatype()
          Returns the MSV XSDatatype for this node
 boolean isNotation(String notationName)
           
 boolean isReadOnly()
           isReadOnly returns true if this node is read only and cannot be modified.
 boolean isUnparsedEntity(String entityName)
           
 String resolveNamespacePrefix(String prefix)
           
 void setData(Object data)
           Sets the data value of this attribute if this element supports data binding or calls Node#setText(String)if it doesn't.
 void setParent(Element parent)
           setParent sets the parent relationship of this node if the parent relationship is supported or does nothing if the parent relationship is not supported.
 void setValue(String value)
           Sets the value of this attribute or this method will throw an UnsupportedOperationException if it is read-only.
 boolean supportsParent()
           supportsParent returns true if this node supports the parent relationship.
 String toString()
           
protected  void validate(String txt)
           
 
Methods inherited from class org.dom4j.tree.AbstractAttribute
accept, asXML, createXPathResult, getName, getNamespace, getNamespacePrefix, getNamespaceURI, getNodeType, getPath, getQualifiedName, getText, getUniquePath, setNamespace, setText, write
 
Methods inherited from class org.dom4j.tree.AbstractNode
asXPathResult, clone, createPattern, createXPath, createXPathFilter, detach, getDocument, getDocumentFactory, getNodeTypeName, getPath, getStringValue, getUniquePath, hasContent, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setName, valueOf
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.dom4j.Node
asXPathResult, clone, createXPath, detach, getDocument, getNodeTypeName, getPath, getStringValue, getUniquePath, hasContent, matches, numberValueOf, selectNodes, selectNodes, selectNodes, selectObject, selectSingleNode, setDocument, setName, valueOf
 

Constructor Detail

DatatypeAttribute

public DatatypeAttribute(QName qname,
                         com.sun.msv.datatype.xsd.XSDatatype datatype)

DatatypeAttribute

public DatatypeAttribute(QName qname,
                         com.sun.msv.datatype.xsd.XSDatatype datatype,
                         String text)
Method Detail

toString

public String toString()
Overrides:
toString in class AbstractAttribute

getXSDatatype

public com.sun.msv.datatype.xsd.XSDatatype getXSDatatype()
Returns the MSV XSDatatype for this node

Returns:
DOCUMENT ME!

getNamespacePrefix

public String getNamespacePrefix(String uri)
Specified by:
getNamespacePrefix in interface com.sun.msv.datatype.SerializationContext

getBaseUri

public String getBaseUri()
Specified by:
getBaseUri in interface org.relaxng.datatype.ValidationContext

isNotation

public boolean isNotation(String notationName)
Specified by:
isNotation in interface org.relaxng.datatype.ValidationContext

isUnparsedEntity

public boolean isUnparsedEntity(String entityName)
Specified by:
isUnparsedEntity in interface org.relaxng.datatype.ValidationContext

resolveNamespacePrefix

public String resolveNamespacePrefix(String prefix)
Specified by:
resolveNamespacePrefix in interface org.relaxng.datatype.ValidationContext

getQName

public QName getQName()
Description copied from interface: Attribute

Returns the QName of this attribute which represents the local name, the qualified name and the Namespace.

Specified by:
getQName in interface Attribute
Returns:
the QName associated with this attribute

getValue

public String getValue()
Description copied from interface: Attribute

Returns the value of the attribute. This method returns the same value as the Node.getText()method.

Specified by:
getValue in interface Attribute
Returns:
the value of the attribute

setValue

public void setValue(String value)
Description copied from interface: Attribute

Sets the value of this attribute or this method will throw an UnsupportedOperationException if it is read-only.

Specified by:
setValue in interface Attribute
Overrides:
setValue in class AbstractAttribute

getData

public Object getData()
Description copied from interface: Attribute

Accesses the data of this attribute which may implement data typing bindings such as XML Schema or Java Bean bindings or will return the same value as Node.getText().

Specified by:
getData in interface Attribute
Overrides:
getData in class AbstractAttribute

setData

public void setData(Object data)
Description copied from interface: Attribute

Sets the data value of this attribute if this element supports data binding or calls Node.setText(String)if it doesn't.

Specified by:
setData in interface Attribute
Overrides:
setData in class AbstractAttribute

getParent

public Element getParent()
Description copied from interface: Node

getParent returns the parent Element if this node supports the parent relationship or null if it is the root element or does not support the parent relationship.

This method is an optional feature and may not be supported for all Node implementations.

Specified by:
getParent in interface Node
Overrides:
getParent in class AbstractNode

setParent

public void setParent(Element parent)
Description copied from interface: Node

setParent sets the parent relationship of this node if the parent relationship is supported or does nothing if the parent relationship is not supported.

This method should only be called from inside an Element implementation method and is not intended for general use.

Specified by:
setParent in interface Node
Overrides:
setParent in class AbstractNode

supportsParent

public boolean supportsParent()
Description copied from interface: Node

supportsParent returns true if this node supports the parent relationship.

Some XML tree implementations are singly linked and only support downward navigation through children relationships. The default case is that both parent and children relationships are supported though for memory and performance reasons the parent relationship may not be supported.

Specified by:
supportsParent in interface Node
Overrides:
supportsParent in class AbstractNode

isReadOnly

public boolean isReadOnly()
Description copied from interface: Node

isReadOnly returns true if this node is read only and cannot be modified. Any attempt to modify a read-only Node will result in an UnsupportedOperationException being thrown.

Specified by:
isReadOnly in interface Node
Overrides:
isReadOnly in class AbstractNode

validate

protected void validate(String txt)
                 throws IllegalArgumentException
Throws:
IllegalArgumentException

convertToValue

protected Object convertToValue(String txt)


Copyright © 2001-2005 MetaStuff Ltd.. All Rights Reserved.