public abstract class QualifiedNameValue extends AtomicValue implements AtomicMatchKey
Modifier and Type | Field and Description |
---|---|
protected StructuredQName |
qName |
NaN_MATCH_KEY, typeLabel
Constructor and Description |
---|
QualifiedNameValue() |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getClarkName()
Get the QName in Clark notation, that is "{uri}local" if in a namespace, or "local" otherwise
|
java.lang.String |
getLocalName()
Get the local part
|
java.lang.String |
getNamespaceURI()
Get the namespace part.
|
java.lang.String |
getPrefix()
Get the prefix.
|
java.lang.String |
getPrimitiveStringValue()
Get the string value as a String.
|
StructuredQName |
getStructuredQName()
Get the equivalent StructuredQName
|
AtomicMatchKey |
getXPathComparable(boolean ordered,
StringCollator collator,
int implicitTimezone)
Get an object value that implements the XPath equality and ordering comparison semantics for this value.
|
int |
hashCode() |
int |
identityHashCode()
Get a hashCode that offers the guarantee that if A.isIdentical(B), then A.identityHashCode() == B.identityHashCode()
|
boolean |
isIdentical(AtomicValue v)
Determine whether two atomic values are identical, as determined by XML Schema rules.
|
static AtomicValue |
makeQName(java.lang.String prefix,
java.lang.String uri,
java.lang.String local,
AtomicType targetType,
java.lang.CharSequence lexicalForm,
ConversionRules rules)
Factory method to construct either a QName or a NOTATION value, or a subtype of either of these.
|
javax.xml.namespace.QName |
toJaxpQName()
Construct a javax.xml.namespace.QName from this QualifiedNameValue
|
java.lang.String |
toString()
The toString() method returns the name in the form QName("uri", "local")
|
asAtomic, asMapKey, atomize, checkPermittedContents, checkValidInJavascript, copyAsSubType, effectiveBooleanValue, equals, getCanonicalLexicalRepresentation, getCardinality, getComponent, getItemType, getPrimitiveType, getSchemaComparable, getStringValue, getStringValueCS, getUType, head, isIdentical, isNaN, itemAt, iterate, iterator, process, setTypeLabel
getLength, isStreamed, reduce, subsequence
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
asAtomic
getLength
reduce, subsequence
protected StructuredQName qName
public static AtomicValue makeQName(java.lang.String prefix, java.lang.String uri, java.lang.String local, AtomicType targetType, java.lang.CharSequence lexicalForm, ConversionRules rules) throws XPathException
prefix
- the prefix part of the value. Use "" or null for the empty prefix.uri
- the namespace URI part of the value. Use "" or null for the non-namespacelocal
- the local part of the valuetargetType
- the target type, which must be xs:QName or a subtype of xs:NOTATION or xs:QNamelexicalForm
- the original lexical form of the value. This is needed in case there are facets
such as pattern that check the lexical formrules
- the conversion rules to be appliedXPathException
- if the value cannot be converted.public final java.lang.String getPrimitiveStringValue()
getPrimitiveStringValue
in class AtomicValue
public final java.lang.String getClarkName()
public final java.lang.String getLocalName()
public final java.lang.String getNamespaceURI()
public final java.lang.String getPrefix()
public AtomicMatchKey getXPathComparable(boolean ordered, StringCollator collator, int implicitTimezone)
getXPathComparable
in class AtomicValue
ordered
- true if an ordered comparison is required. In this case the result is null if the
type is unordered; in other cases the returned value will be a Comparable.collator
- the collation to be used for the comparisonimplicitTimezone
- the XPath dynamic evaluation context, used in cases where the comparison is contextpublic int hashCode()
hashCode
in class java.lang.Object
public boolean isIdentical(AtomicValue v)
AtomicValue
Note that even this check ignores the type annotation of the value. The integer 3 and the short 3 are considered identical, even though they are not fully interchangeable. "Identical" means the same point in the value space, regardless of type annotation.
NaN is identical to itself.
isIdentical
in class AtomicValue
v
- the other value to be compared with this onepublic int identityHashCode()
identityHashCode
in interface IdentityComparable
identityHashCode
in class AtomicValue
public java.lang.String toString()
toString
in class AtomicValue
public javax.xml.namespace.QName toJaxpQName()
public StructuredQName getStructuredQName()
Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.