public interface NamespaceContext
只读XML接口名称空间上下文处理。
XML命名空间具有以下属性:
XMLConstants.XMLNS_ATTRIBUTE
(“xmlns”)之后的属性名称的一部分 例如: <element xmlns:prefix="http://Namespace-name-URI">
所有get*(*)
方法在当前范围内操作命名空间URI和前缀解析。
请注意,命名空间URI可以绑定到当前作用域中的多个前缀。 当多个XMLConstants.XMLNS_ATTRIBUTE
(“xmlns”)命名空间声明发生在同一起始标签中并引用相同的命名空间URI时,可能会发生这种情况。 例如
<element xmlns:prefix1="http://Namespace-name-URI"
xmlns:prefix2="http://Namespace-name-URI">
当在逻辑父元素层次结构中的多个XMLConstants.XMLNS_ATTRIBUTE
(“xmlns”)命名空间声明中使用相同的命名空间URI时,也会发生这种情况。
例如
<parent xmlns:prefix1="http://Namespace-name-URI">
<child xmlns:prefix2="http://Namespace-name-URI">
...
</child>
</parent>
前缀只能绑定到当前作用域中的单个命名空间URI。
String getNamespaceURI(String prefix)
获取命名空间URI绑定到当前作用域中的前缀。
当通过前缀请求命名空间URI时,下表描述了所有可能的前缀值返回的命名空间URI值:
getNamespaceURI(prefix)
return value for specified prefixes prefix parameter Namespace URI return value DEFAULT_NS_PREFIX
("") default Namespace URI in the current scope or XMLConstants.NULL_NS_URI("")
when there is no default Namespace URI in the current scope bound prefix Namespace URI bound to prefix in current scope unbound prefix XMLConstants.NULL_NS_URI("")
XMLConstants.XML_NS_PREFIX
("xml") XMLConstants.XML_NS_URI
("http://www.w3.org/XML/1998/namespace") XMLConstants.XMLNS_ATTRIBUTE
("xmlns") XMLConstants.XMLNS_ATTRIBUTE_NS_URI
("http://www.w3.org/2000/xmlns/") null
IllegalArgumentException
is thrown
prefix
- 前缀查找
IllegalArgumentException
- 当
prefix
是
null
String getPrefix(String namespaceURI)
获取前缀绑定到当前作用域中的命名空间URI。
要获取绑定到当前作用域中的命名空间URI的所有前缀,请使用getPrefixes(String namespaceURI)
。
当通过Namespace URI请求前缀时,下表描述了所有Namespace URI值返回的前缀值:
getPrefix(namespaceURI)
return value for specified Namespace URIs Namespace URI parameter prefix value returned <default Namespace URI> XMLConstants.DEFAULT_NS_PREFIX
("") bound Namespace URI prefix bound to Namespace URI in the current scope, if multiple prefixes are bound to the Namespace URI in the current scope, a single arbitrary prefix, whose choice is implementation dependent, is returned unbound Namespace URI null
XMLConstants.XML_NS_URI
("http://www.w3.org/XML/1998/namespace") XMLConstants.XML_NS_PREFIX
("xml") XMLConstants.XMLNS_ATTRIBUTE_NS_URI
("http://www.w3.org/2000/xmlns/") XMLConstants.XMLNS_ATTRIBUTE
("xmlns") null
IllegalArgumentException
is thrown
namespaceURI
- 要查找的
namespaceURI
URI
IllegalArgumentException
- 当
namespaceURI
是
null
Iterator getPrefixes(String namespaceURI)
获取绑定到当前作用域中的命名空间URI的所有前缀。
一个迭代器上的String元素以任意的, 依赖于实现的顺序返回。
Iterator
是不可修改的。 例如remove()
方法会抛出UnsupportedOperationException
。
当通过Namespace URI请求前缀时,下表描述了所有Namespace URI值返回的前缀值:
getPrefixes(namespaceURI)
return value for specified Namespace URIs Namespace URI parameter prefixes value returned bound Namespace URI, including the <default Namespace URI> Iterator
over prefixes bound to Namespace URI in the current scope in an arbitrary, implementation dependent, order unbound Namespace URI empty Iterator
XMLConstants.XML_NS_URI
("http://www.w3.org/XML/1998/namespace") Iterator
with one element set to XMLConstants.XML_NS_PREFIX
("xml") XMLConstants.XMLNS_ATTRIBUTE_NS_URI
("http://www.w3.org/2000/xmlns/") Iterator
with one element set to XMLConstants.XMLNS_ATTRIBUTE
("xmlns") null
IllegalArgumentException
is thrown
namespaceURI
- 要查找的
namespaceURI
URI
Iterator
用于绑定到当前作用域中的命名空间URI的所有前缀
IllegalArgumentException
- 当时
namespaceURI
是
null