2

我正在尝试解析一个简单的 xsd 文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> 
<xsd:element name="NickName" type="xsd:string">
    <xsd:annotation>
        <xsd:documentation>
            <Description>nick name</Description>
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>
</xsd:schema>

我想获取整个 NickName 元素,我正在使用以下命令

NodeList nodes = xsdDocument.getDocumentElement().getElementsByTagName("element");

但我在节点中得到空值。谁能帮我理解我在这里做错了什么。我正在尝试获取 xsd 中标签名称为“元素”的所有节点我在这里缺少什么吗?

4

1 回答 1

2

您应该使用Element.getElementsByTagNameNS()来考虑命名空间:

NodeList nodes = xsdDocument.getDocumentElement().getElementsByTagNameNS("http://www.w3.org/2001/XMLSchema", "element");
于 2013-10-10T00:56:29.850 回答