使用Xerces-J的DOM方式进行XML程序设计

--Element


  1. 简介与背景知识
  2. Xerces对DOM的实现
  3. 如何使用
  4. 动态创建一个DOM树
  5. 使用XMLSerializer序列化DOM对象
  6. 使用DOM的程序的实例

Element

Node界面派生的界面我们首先要介绍的是Element界面,这个界面用来描述一个用</>或者<…>…</…>表示的部分。在一个Element的实例里面可以包含一个或者多个的Attr(属性的缩写),如XML语句<testElement attr1=”1” attr2=”2”/>用DOM来描述就是一个tag叫做testElement的Element,包含两个Attr,一个名字为attr1,值为1,另一个名字为attr2,值为2。Element界面继承了Node的所有方法和数据,其特有的方法内容如表4。

表4:Element界面的特有方法
方法 使用说明
String getAttribute(String name) 调用此方法可以获取属性的值,参数为属性名,返回值为属性值。
Attr getAttributeNode(String name) 调用此方法可以获取属性节点的引用,参数为属性名,返回值为属性节点的引用。
Attr getAttributeNodeNS(String

namespaceURI, String localName)
调用此方法可以获取属性节点的引用,参数为属性的名空间和属性的局域名,返回值为属性节点的引用。
String getAttributeNS(String

namespaceURI, localName)
调用此方法可以获取属性的值,参数为属性的名空间和属性的局域名,返回值为属性值。
NodeList getElementsByTagName(String name) 调用此方法可以获取所有具有参数指定的tag的子Element,并且在一个NodeList中返回。
NodeList getElementsByTagNameNS(String

namespaceURI, String localName)
同上一方法,但是tag的名字用名空间表示。
String getTagName() 返回这个Element的tag。例如XML语句<test>…</test>将会返回test。
boolean hasAttribute(String name) 这个方法检验是否有指定属性名的属性。
boolean hasAttributeNS(String

namespaceURI,String localName)
同上方法,但是属性名用名空间表示。
void removeAttribute(String name) 删除一个属性,参数为属性名。
Attr removeAttributeNode(Attr oldAttr) 删除一个属性,参数为属性节点。
void removeAttributeNS(String

namespaceURI,String localName)
删除一个属性,参数为名空间URI和局域名。
void setAttribute(String name, String value) 设置一个属性的值,第一个参数是属性名,第二个参数是属性值。如果该属性在设置之前不存在,则增加一个新的属性。
Attr setAttributeNode(Attr newAttr) 设置一个属性节点,参数为一个Attr对象。
Attr setAttributeNodeNS(Attr newAttr) 设置一个属性节点,参数为一个带名空间和局域名的Attr对象。
void setAttributeNS(String namespaceURI, String qualifiedName,String value) 设置一个属性的值,第一个参数是名空间,第二个参数是属性名,第三个参数是属性值。如果该属性在设置之前不存在,则增加一个新的属性。