将xsd架构与Dom4j一起使用时,从xpath表达式中获取null

问题描述 投票:1回答:1

我正在尝试在我的应用程序中使用dom4j,但在解析以下XML文件时遇到了问题:

<menu xmlns="http://example.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://example.com/ my-schema.xsd">
    <content>
        <caption>aaa</caption>
        <description>vvvv</description>
    </content>
</menu>

我初始化了dom4j解析器,现在我正在尝试检索描述节点:

Node node = document.selectSingleNode( "/menu/content/description" );

((我知道我可以使用迭代器,但是xpath更适合我)

我有null而不是描述节点。

[当我试图找出问题所在时,我从xml中删除了模式声明(因此开始时只有简单的简单<menu>),然后工作得很好

我宁愿有那个XSD声明,所以我做错了什么?

提前感谢!

xpath xsd dom4j
1个回答
0
投票

xpath失败的原因是它不支持名称空间。

© www.soinside.com 2019 - 2024. All rights reserved.