XML 检测设置

按内容识别 XML 文件类型

多个 XML 文件类型可以有相同的文件扩展名(通常为 *.xml)。SDL 文件支持软件通过使用文件类型的检测设置来匹配文件内容,从而区分这些文件类型。特定 XML 文件类型所需的根元素便是检测设置的一个简单示例。您可以在 XML 文件类型设置的检测页面中指定检测设置。

检测页面可让您使用以下 XML 项目的任意组合来识别文件类型:
选项说明
根元素

用于根元素的一个或多个名称,如 my_root

DOCTYPE 声明

例如:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

xsi:schemaLocation

用于指定 schema 位置的 URL。这将匹配文件中的 schemaLocationno NamespaceSchemaLocation 属性

xmlns:声明

一个或多个命名空间 URL

XPath 规则

一个或多个 XPath 规则

示例 - 指定根元素

若要指定根元素,请使用元素名称(无尖括号),例如:

email

SDL 文件支持软件将根据此名称匹配任何含有根 <email> 的 XML 文件,例如:

<email>
<sendto> John Brown </sendto>
</email>

示例 - 指定 schemaLocation URL

如果您提供了 schemaLocation:http://www.sdl.com/xml/SdlExample.xsd,则 SDL 文件支持软件将匹配任何使用以下其中一个 schemaLocations 的 XML 文件:

xsi:schemaLocation="http://www.sdl.com/xml/SdlExample.xsd"

xsi:noNamespaceSchemaLocation="http://www.sdl.com/xml/SdlExample.xsd"

示例 - 指定命名空间 URL

如果提供命名空间 http://www.w3.org/1999/ xhtml,则 SDL 文件支持软件将匹配任何包含 <html xmlns="http://www.w3.org/1999/ xhtml"> 的 XML 文件。

示例 - 指定多个根元素

若指定了两个根元素,例如:

email

post

则以下两个 XML 文件都将与新文件类型匹配:

<email> 
<sendto>Mary Brown</sendto>
</email> 
<post>
<sendto>John Brown</sendto>
</post>

示例 - 指定任何 XML 文档

若提供了根元素名称

*

(即,一个星号),则任何 XML 文档都将与此文件类型匹配。通常,如果您有此类包罗规范,您可将其置于 XML 文件类型列表的底部,以便优先使用更精确的规范。