- All Implemented Interfaces:
Serializable
Jakarta XML Binding representation of an Xml Element.
This class represents information about an Xml Element from both the element declaration within a schema and the element instance value within an xml document with the following properties
- element's xml tag
name
value
represents the element instance's attribute(s) and content model- element declaration's
declaredType
(xs:element @type
attribute) scope
of element declaration- boolean
nil
property. (element instance'sxsi:nil
attribute)
The declaredType
and scope
property are the
Jakarta XML Binding class binding for the xml type definition.
Scope
is either JAXBElement.GlobalScope
or the Java class representing the
complex type definition containing the schema element declaration.
There is a property constraint that if value
is null
,
then nil
must be true
. The converse is not true to enable
representing a nil element with attribute(s). If nil
is true, it is possible
that value
is non-null so it can hold the value of the attributes
associated with a nil element.
- Since:
- 1.6, JAXB 2.0
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
Designates global scope for an xml element. -
Field Summary
Modifier and TypeFieldDescriptionJava datatype binding for xml element declaration's type.protected final QName
xml element tag nameprotected boolean
true iff the xml element instance has xsi:nil="true".protected final Class
<?> Scope of xml element declaration representing this xml element instance.protected T
xml element value. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns the Java binding of the xml element declaration's type attribute.getName()
Returns the xml element tag name.Class
<?> getScope()
Returns scope of xml element declaration.getValue()
Return the content model and attribute values for this element.boolean
Returns true iff this xml element declaration is global.boolean
isNil()
Returnstrue
iff this element instance content model is nil.boolean
Returns true iff this xml element instance's value has a different type than xml element declaration's declared type.void
setNil
(boolean value) Set whether this element has nil content.void
Set the content model and attributes of this xml element.
-
Field Details
-
name
xml element tag name -
declaredType
-
scope
Scope of xml element declaration representing this xml element instance. Can be one of the following values: -JAXBElement.GlobalScope
for global xml element declaration. - local element declaration has a scope set to the Java class representation of complex type defintion containing xml element declaration. -
value
xml element value. Represents content model and attributes of an xml element instance. -
nil
protected boolean niltrue iff the xml element instance has xsi:nil="true".
-
-
Constructor Details
-
JAXBElement
Construct an xml element instance.
- Parameters:
name
- Java binding of xml element tag namedeclaredType
- Java binding of xml element declaration's typescope
- Java binding of scope of xml element declaration. Passing null is the same as passingGlobalScope.class
value
- Java instance representing xml element's value.- See Also:
-
JAXBElement
-
-
Method Details
-
getDeclaredType
-
getName
Returns the xml element tag name. -
setValue
-
getValue
-
getScope
Returns scope of xml element declaration.- Returns:
GlobalScope.class
if this element is of global scope.- See Also:
-
isNil
public boolean isNil()Returns
true
iff this element instance content model is nil.This property always returns
true
whengetValue()
is null. Note that the converse is not true, when this property istrue
,getValue()
can contain a non-null value for attribute(s). It is valid for a nil xml element to have attribute(s). -
setNil
public void setNil(boolean value) Set whether this element has nil content.
- See Also:
-
isGlobalScope
public boolean isGlobalScope()Returns true iff this xml element declaration is global. -
isTypeSubstituted
public boolean isTypeSubstituted()Returns true iff this xml element instance's value has a different type than xml element declaration's declared type.
-