public interface NamespaceContext
javax.xml.namespace.NamespaceContext |
用于只读XML名称空间上下文处理的接口。
XML名称空间具有以下属性:
XMLConstants.XMLNS_ATTRIBUTE
("xmlns") in the Namespace declaration例如: <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">This can also occur when the same Namespace URI is used in multiple
XMLConstants.XMLNS_ATTRIBUTE
("xmlns") Namespace declarations in the logical parent element hierarchy. e.g.
<parent xmlns:prefix1="http://Namespace-name-URI"> <child xmlns:prefix2="http://Namespace-name-URI"> ... </child> </parent>
前缀只能绑定到当前作用域中的 单个名称空间URI。
也可以看看:
Public methods |
|
---|---|
abstract String |
getNamespaceURI(String prefix) 获取名称空间URI绑定到当前作用域中的前缀。 |
abstract String |
getPrefix(String namespaceURI) 在当前作用域中获取绑定到名称空间URI的前缀。 |
abstract Iterator |
getPrefixes(String namespaceURI) 获取绑定到当前作用域中的名称空间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 when there is no default Namespace URI in the current scope |
bound prefix | Namespace URI bound to prefix in current scope |
unbound prefix | |
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 |
Parameters | |
---|---|
prefix |
String : prefix to look up |
Returns | |
---|---|
String |
Namespace URI bound to prefix in the current scope |
String getPrefix (String namespaceURI)
在当前作用域中获取绑定到名称空间URI的前缀。
要获取绑定到当前作用域中名称空间URI的所有前缀,请使用 getPrefixes(String)
。
当通过名称空间URI请求前缀时,下表描述了所有名称空间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 |
Parameters | |
---|---|
namespaceURI |
String : URI of Namespace to lookup |
Returns | |
---|---|
String |
prefix bound to Namespace URI in current context |
Iterator getPrefixes (String namespaceURI)
获取绑定到当前作用域中的名称空间URI的所有前缀。
通过字符串元素的迭代器以任意的 依赖于 实现的顺序返回。
Iterator
不可修改。 例如remove()
方法将抛出UnsupportedOperationException
。
当按名称空间URI请求前缀时,下表描述了所有名称空间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 |
Parameters | |
---|---|
namespaceURI |
String : URI of Namespace to lookup |
Returns | |
---|---|
Iterator |
Iterator for all prefixes bound to the Namespace URI in the current scope |