public interface TypeInfo
TypeInfo
interface represents a type referenced from Element
or Attr
nodes, specified in the schemas associated with the document. The type is a pair of a namespace URI and name properties, and depends on the document's schema. If the document's schema is an XML DTD [XML 1.0], the values are computed as follows:
Attr
node, typeNamespace
is "http://www.w3.org/TR/REC-xml"
and typeName
represents the [attribute type] property in the [XML Information Set] . If there is no declaration for the attribute, typeNamespace
and typeName
are null
. Element
node, typeNamespace
and typeName
are null
. If the document's schema is an XML Schema [XML Schema Part 1] , the values are computed as follows using the post-schema-validation infoset contributions (also called PSVI contributions):
null
. Note: At the time of writing, the XML Schema specification does not require exposing the declared type. Thus, DOM implementations might choose not to provide type information if validity is not valid.
Note: Other schema languages are outside the scope of the W3C and therefore should define how to represent their type systems using TypeInfo
.
See also the Document Object Model (DOM) Level 3 Core Specification.
Modifier and Type | Field | Description |
---|---|---|
static final int |
DERIVATION_EXTENSION |
If the document's schema is an XML Schema [XML Schema Part 1] , this constant represents the derivation by extension. |
static final int |
DERIVATION_LIST |
If the document's schema is an XML Schema [XML Schema Part 1] , this constant represents the list. |
static final int |
DERIVATION_RESTRICTION |
If the document's schema is an XML Schema [XML Schema Part 1] , this constant represents the derivation by restriction if complex types are involved, or a restriction if simple types are involved. |
static final int |
DERIVATION_UNION |
If the document's schema is an XML Schema [XML Schema Part 1] , this constant represents the union if simple types are involved. |
Modifier and Type | Method | Description |
---|---|---|
String |
getTypeName() |
The name of a type declared for the associated element or attribute, or null if unknown. |
String |
getTypeNamespace() |
The namespace of the type declared for the associated element or attribute or null if the element does not have declaration or if no namespace information is available. |
boolean |
isDerivedFrom |
This method returns if there is a derivation between the reference type definition, i.e. the TypeInfo on which the method is being called, and the other type definition, i.e. the one passed as parameters. |
static final int DERIVATION_RESTRICTION
static final int DERIVATION_EXTENSION
static final int DERIVATION_UNION
DERIVATION_RESTRICTION
or DERIVATION_EXTENSION
, T2 is derived from the other type definition by DERIVATION_RESTRICTION
, T1 has {variety} union, and one of the {member type definitions} is T2. Note that T1 could be the same as the reference type definition, and T2 could be the same as the other type definition.static final int DERIVATION_LIST
DERIVATION_RESTRICTION
or DERIVATION_EXTENSION
, T2 is derived from the other type definition by DERIVATION_RESTRICTION
, T1 has {variety} list, and T2 is the {item type definition}. Note that T1 could be the same as the reference type definition, and T2 could be the same as the other type definition.String getTypeName()
null
if unknown.String getTypeNamespace()
null
if the element does not have declaration or if no namespace information is available.boolean isDerivedFrom(String typeNamespaceArg, String typeNameArg, int derivationMethod)
TypeInfo
on which the method is being called, and the other type definition, i.e. the one passed as parameters.typeNamespaceArg
- the namespace of the other type definition.typeNameArg
- the name of the other type definition.derivationMethod
- the type of derivation and conditions applied between two types, as described in the list of constants provided in this interface.false
. If the document's schema is an XML Schema, the method will return true
if the reference type definition is derived from the other type definition according to the derivation parameter. If the value of the parameter is 0
(no bit is set to 1
for the derivationMethod
parameter), the method will return true
if the other type definition can be reached by recursing any combination of {base type definition}, {item type definition}, or {member type definitions} from the reference type definition.
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.xml/org/w3c/dom/TypeInfo.html