有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使这个简单的文档有效

<DB>

<foo />

<bar />

</DB>

我有一个问题——当我开始解析(DOM)时,它说文档无效。 我已经检查了问题所在,问题是:

Line: 4 
Column: 6

Error:  Can not find declaration of element 'DB'.

Error Position: <DB> 

请帮忙:)


共 (2) 个答案

  1. # 1 楼答案

    XML文档必须格式良好,并且应该有效。解析器(几乎)永远不会接受格式不正确的文档,并且(大多数)解析器可以被告知检查文档的有效性

    如果文档遵循XML规范中标记为格式良好的所有语法规则,则文档是格式良好的文档。这是关于标签的正确打开和关闭,属性的正确使用等等

    如果文档不仅格式良好,而且符合其自身模式中定义的语法(可以是文档类型定义(DTD)或XML模式定义(XSD)),则文档是有效的

    在您的例子中,文档显然是格式良好的,并且由于它没有引用模式,所以它不是无效的

    问题可能是,您让解析器验证文档,这根本不可能,因为没有模式。尽管如此,如果是这样的话,错误消息将非常具有误导性

  2. # 2 楼答案

    在不太了解如何解析文档的情况下,我能给出的唯一建议是,解析器可能需要一个模式或DTD来定义元素(所有元素:DB、foo和bar)

    如果您不想编写schema/DTD,另一个选项是(如果可能的话,使用您的解析器)告诉解析器不要验证文件。一些解析器实现允许您指定一个标志,告诉它不要验证文档