【发布时间】:2010-12-05 15:33:42
【问题描述】:
SAX API-s 如何根据模式/DTD 验证 XML?
我的理解是 SAX API-s 逐块读取 XML 文档,并且不将先前读取的块存储在内存中。所以我不清楚 API 如何在不将其全部保存在内存中的情况下验证文档。 ??
【问题讨论】:
标签: xml validation sax
SAX API-s 如何根据模式/DTD 验证 XML?
我的理解是 SAX API-s 逐块读取 XML 文档,并且不将先前读取的块存储在内存中。所以我不清楚 API 如何在不将其全部保存在内存中的情况下验证文档。 ??
【问题讨论】:
标签: xml validation sax
您无需将整个 XML 树保存在内存中即可对其进行验证。只是那些目前被验证的部分需要在内存中。例如,如果您需要确认像 root/child*/property* 这样的结构,那么实际上只需要检查子父关系,因此我们只需要存储前一个元素来验证这一点。当然,如果结构更复杂,将使用更多的内存来验证复杂的约束。
【讨论】: