Package org.apache.xml.utils
Class QName
java.lang.Object
org.apache.xml.utils.QName
- All Implemented Interfaces:
Serializable
Class to represent a qualified name: "The name of an internal XSLT object,
specifically a named template (see [7 Named Templates]), a mode (see [6.7 Modes]),
an attribute set (see [8.1.4 Named Attribute Sets]), a key (see [14.2 Keys]),
a locale (see [14.3 Number Formatting]), a variable or a parameter (see
[12 Variables and Parameters]) is specified as a QName. If it has a prefix,
then the prefix is expanded into a URI reference using the namespace declarations
in effect on the attribute in which the name occurs. The expanded name
consisting of the local part of the name and the possibly null URI reference
is used as the name of the object. The default namespace is not used for
unprefixed names."
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionQName()
Constructs an empty QName. 20001019: Try making this public, to support Serializable?Construct a QName from a string, without namespace resolution.Construct a QName from a string, without namespace resolution.Constructs a new QName with the specified namespace URI and local name.Constructs a new QName with the specified namespace URI and local name.Constructs a new QName with the specified namespace URI, prefix and local name.Constructs a new QName with the specified namespace URI, prefix and local name.Construct a QName from a string, resolving the prefix using the given namespace stack.Construct a QName from a string, resolving the prefix using the given namespace stack.QName
(String qname, PrefixResolver resolver) Construct a QName from a string, resolving the prefix using the given namespace stack.QName
(String qname, PrefixResolver resolver, boolean validate) Construct a QName from a string, resolving the prefix using the given namespace stack.QName
(String qname, Element namespaceContext, PrefixResolver resolver) Construct a QName from a string, resolving the prefix using the given namespace context and prefix resolver.QName
(String qname, Element namespaceContext, PrefixResolver resolver, boolean validate) Construct a QName from a string, resolving the prefix using the given namespace context and prefix resolver. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Override equals and agree that we're equal if the passed object is a QName and it matches the name of the arg.boolean
Override equals and agree that we're equal if the passed object is a string and it matches the name of the arg.Returns the local part of the qualified name.Get the local part of the qualified name.static String
getLocalPart
(String qname) Returns the local name of the given node.Get the namespace of the qualified name.Returns the namespace URI.Returns the namespace prefix.static String
getPrefixFromXMLNSDecl
(String attRawName) This function tells if a raw attribute name is a xmlns attribute.static String
getPrefixPart
(String qname) Returns the local name of the given node.static QName
getQNameFromString
(String name) Given a string, create and return a QName objectint
hashCode()
Return the cached hashcode of the qualified name.static boolean
isXMLNSDecl
(String attRawName) This function tells if a raw attribute name is a xmlns attribute.Return the string representation of the qualified name using the the '{ns}foo' notation.toString()
Return the string representation of the qualified name, using the prefix if available, or the '{ns}foo' notation if not.
-
Field Details
-
S_XMLNAMESPACEURI
The XML namespace.- See Also:
-
-
Constructor Details
-
QName
public QName()Constructs an empty QName. 20001019: Try making this public, to support Serializable? -- JKESS -
QName
Constructs a new QName with the specified namespace URI and local name.- Parameters:
namespaceURI
- The namespace URI if known, or nulllocalName
- The local name
-
QName
Constructs a new QName with the specified namespace URI and local name.- Parameters:
namespaceURI
- The namespace URI if known, or nulllocalName
- The local namevalidate
- If true the new QName will be validated and an IllegalArgumentException will be thrown if it is invalid.
-
QName
Constructs a new QName with the specified namespace URI, prefix and local name.- Parameters:
namespaceURI
- The namespace URI if known, or nullprefix
- The namespace prefix is known, or nulllocalName
- The local name
-
QName
Constructs a new QName with the specified namespace URI, prefix and local name.- Parameters:
namespaceURI
- The namespace URI if known, or nullprefix
- The namespace prefix is known, or nulllocalName
- The local namevalidate
- If true the new QName will be validated and an IllegalArgumentException will be thrown if it is invalid.
-
QName
Construct a QName from a string, without namespace resolution. Good for a few odd cases.- Parameters:
localName
- Local part of qualified name
-
QName
Construct a QName from a string, without namespace resolution. Good for a few odd cases.- Parameters:
localName
- Local part of qualified namevalidate
- If true the new QName will be validated and an IllegalArgumentException will be thrown if it is invalid.
-
QName
Construct a QName from a string, resolving the prefix using the given namespace stack. The default namespace is not resolved.- Parameters:
qname
- Qualified name to resolvenamespaces
- Namespace stack to use to resolve namespace
-
QName
Construct a QName from a string, resolving the prefix using the given namespace stack. The default namespace is not resolved.- Parameters:
qname
- Qualified name to resolvenamespaces
- Namespace stack to use to resolve namespacevalidate
- If true the new QName will be validated and an IllegalArgumentException will be thrown if it is invalid.
-
QName
Construct a QName from a string, resolving the prefix using the given namespace context and prefix resolver. The default namespace is not resolved.- Parameters:
qname
- Qualified name to resolvenamespaceContext
- Namespace Context to useresolver
- Prefix resolver for this context
-
QName
Construct a QName from a string, resolving the prefix using the given namespace context and prefix resolver. The default namespace is not resolved.- Parameters:
qname
- Qualified name to resolvenamespaceContext
- Namespace Context to useresolver
- Prefix resolver for this contextvalidate
- If true the new QName will be validated and an IllegalArgumentException will be thrown if it is invalid.
-
QName
Construct a QName from a string, resolving the prefix using the given namespace stack. The default namespace is not resolved.- Parameters:
qname
- Qualified name to resolveresolver
- Prefix resolver for this context
-
QName
Construct a QName from a string, resolving the prefix using the given namespace stack. The default namespace is not resolved.- Parameters:
qname
- Qualified name to resolveresolver
- Prefix resolver for this contextvalidate
- If true the new QName will be validated and an IllegalArgumentException will be thrown if it is invalid.
-
-
Method Details
-
getNamespaceURI
Returns the namespace URI. Returns null if the namespace URI is not known.- Returns:
- The namespace URI, or null
-
getPrefix
Returns the namespace prefix. Returns null if the namespace prefix is not known.- Returns:
- The namespace prefix, or null
-
getLocalName
Returns the local part of the qualified name.- Returns:
- The local part of the qualified name
-
toString
Return the string representation of the qualified name, using the prefix if available, or the '{ns}foo' notation if not. Performs string concatenation, so beware of performance issues. -
toNamespacedString
Return the string representation of the qualified name using the the '{ns}foo' notation. Performs string concatenation, so beware of performance issues.- Returns:
- the string representation of the namespace
-
getNamespace
Get the namespace of the qualified name.- Returns:
- the namespace URI of the qualified name
-
getLocalPart
Get the local part of the qualified name.- Returns:
- the local part of the qualified name
-
hashCode
public int hashCode()Return the cached hashcode of the qualified name. -
equals
Override equals and agree that we're equal if the passed object is a string and it matches the name of the arg.- Parameters:
ns
- Namespace URI to compare tolocalPart
- Local part of qualified name to compare to- Returns:
- True if the local name and uri match
-
equals
Override equals and agree that we're equal if the passed object is a QName and it matches the name of the arg. -
getQNameFromString
Given a string, create and return a QName object- Parameters:
name
- String to use to create QName- Returns:
- a QName object
-
isXMLNSDecl
This function tells if a raw attribute name is a xmlns attribute.- Parameters:
attRawName
- Raw name of attribute- Returns:
- True if the attribute starts with or is equal to xmlns
-
getPrefixFromXMLNSDecl
This function tells if a raw attribute name is a xmlns attribute.- Parameters:
attRawName
- Raw name of attribute- Returns:
- Prefix of attribute
-
getLocalPart
Returns the local name of the given node.- Parameters:
qname
- Input name- Returns:
- Local part of the name if prefixed, or the given name if not
-
getPrefixPart
Returns the local name of the given node.- Parameters:
qname
- Input name- Returns:
- Prefix of name or empty string if none there
-