如何检查 XML 文件是否使用 XML 架构定义 (XSD)?例如,如果您解压缩一个签名的 odt 文件(LibreOffice 或 OpenOffice 文本文档),则 META-INF 目录中的签名文件是documentsignatures.xml。在这个文件中,属性xmlns
定义了元素的默认命名空间<Signature>
和<document-signatures>
. 该属性既没有xmlns:xsi
对 XML 模式实例 (XSI) 名称空间的引用,也没有对 XML 模式文件"http://www.w3.org/2001/XMLSchema-instance"
的属性引用。因此,不应在任何方案下验证 documentsignatures.xml 文件的全部内容。那是对的吗?xsi:schemaLocation
xmldsig-core-schema.xsd
以下是相应 XML 文档documentsignatures.xml的第一行:
<?xml version="1.0" encoding="UTF-8"?>
<document-signatures xmlns="urn:oasis:names:tc:opendocument:xmlns:digitalsignature:1.0">
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#" Id="ID_006900630020002d0084000e004a008b009b00a6006f004b007c007b002d007f">
<SignedInfo>...
问候
卡伦