Altova XMLSpy 2023 Professional Edition

当在CustomCatalog.xml(或任何其他将被XMLSpy读取的目录文件)中创建条目时,仅使用OASIS目录规范的以下元素。下方列出了每个元素及其特性值的说明。有关更详细的说明,请参见XML目录规范。请注意,每个元素都可以采用xml:base特性,用来指定该元素的基URI。

 

<public publicId="PublicID of Resource" uri="URL of local file"/>

<system systemId="SystemID of Resource" uri="URL of local file"/>

<uri name="filename" uri="URL of file identified by filename"/>

<rewriteURI uriStartString="StartString of URI to rewrite" rewritePrefix="String to replace StartString"/>

<rewriteSystem systemIdStartString="StartString of SystemID" rewritePrefix="Replacement string to locate resource locally"/>

 

请注意以下几点:

 

在没有公共标识符的情况下,与大多数样式表一样,系统标识符将通过system元素直接映射至URL。

一个URI可以使用uri元素映射到另一个URI。

rewriteURIrewriteSystem元素分别允许重写URI或系统标识符的起始部分。这允许替换文件路径的开头,从而实现对另一个目录的定位。有关这些元素的更多信息,请参见XML目录规范

 

从2014版开始,XMLSpy严格遵循XML目录规范(OASIS标准V1.1,2005年10月7日)。本规范严格区分了外部标识符查找(有公共ID或系统ID的查找)和URI查找(非公共ID或系统ID的URI)。因此,必须将命名空间URI视为简单的URI,而不是公共ID或系统ID,并且必须用作URI查找,而不是外部标识符查找。在早于2014版的XMLSpy版本中,Schema命名空间URI是通过<public>映射进行转换的。从2014版开始,必须使用<uri>映射。

 

在2014版之前: <public publicID="http://www.MyMapping.com/ref" uri="file:///C:/MyDocs/Catalog/test.xsd"/>  

从2014版起: <uri name="http://www.MyMapping.com/ref" uri="file:///C:/MyDocs/Catalog/test.xsd"/>

 

XMLSpy如何查找引用的Schema

Schema在XML文档中是通过xsi:scemaLocation特性来引用的(如下所示)。xsi:schemaLocation特性的值有两部分:命名空间部分(绿色)和URI部分(突出显示)。
 

xsi:schemaLocation="http://www.xmlspy.com/schemas/orgchart OrgChart.xsd"

 

以下给出的是XMLSpy按顺序遵循的如何查找被引用的Schema的步骤。该Schema在第一个成功的步骤中被加载。

 

1.在目录中查找xsi:schemaLocation值的URI部分。如果找到了映射,包括rewriteURI映射,则使用生成的URI加载Schema。

2.在目录中查找xsi:schemaLocation值的命名空间部分。如果找到了映射,包括rewriteURI映射,则使用生成的URI加载Schema。

3.使用xsi:schemaLocation值的URI部分加载Schema。

 

文件扩展名和根据Schema进行智能编辑

通过目录文件,您还可以指定带有特定文件扩展名的文档应按照您指定的Schema中的规则应用XMLSpy的智能编辑功能。例如,如果您为根据HTML DTD有效的(HTML)文件创建了一个自定义文件扩展名.myhtml,则可以通过将以下文本元素添加到CustomCatalog.xml作为 <catalog> 元素的子级来为带有这些扩展名的文件启用智能编辑。

 

<catalog>

 ...

<spy:fileExtHelper ext="myhtml" uri="schemas/xhtml/xhtml1-transitional.dtd"/>

 ...

</catalog>

 

这将在XMLSpy中为.myhtml文件启用根据XHTML 1.0 Transitional DTD的智能编辑功能(自动完成、输入助手等)。请参见%AltovaCommonSchemasFolder%\Schemas\xhtml文件夹中的catalog.xml文件,其中包含类似的条目。

 

XML Schema规范

XML Schema规范信息内置于XMLSpy,并且根据此内部信息对XML Schema(.xsd)文档的有效性进行检查。因此,在XML Schema文档中,不应对任何定义XML Schema规范的Schema进行引用。

 

%AltovaCommonSchemasFolder%\Schemas\schema文件夹中的catalog.xml文件包含对实现旧版XML Schema规范的DTD的引用。您不应该用这些Schema来验证您的XML Schema文档。如果您希望根据这些旧版建议创建文档的话,包含引用的文件只是为了向XMLSpy提供编辑所需的输入助手信息。

 

 

© 2017-2023 Altova GmbH