假设使用Java 11,我调用了XML DOM方法Element.getAttributes()
并检索了NamedNodeMap
。假设我将此NamedNodeMap
传递给某个正在通过属性查找但无法访问原始Element
的实用程序方法。
在我的实用程序方法中,假设我要从attr
实例中删除一些任意属性namedNodeMap
。我该怎么办?
我可以调用namedNodeMap.removeNamedItemNS(attr.getNamespaceURI(), attr.getLocalName())
,并且我假设它可以与从支持名称空间的解析器派生的DOM树一起使用。但是它也可以与非命名空间感知的DOM树一起使用吗?
还是我应该打电话给namedNodeMap.removeNamedItemNS(attr.getNodeName())
?可以与支持名称空间的DOM一起使用吗?
是否还有其他一些可取的方法可以从命名节点图中删除属性节点?还是唯一引用原始Element
并调用element.removeAttributeNode(attr)
的方法?