Altova XMLSpy 2023 Professional Edition

无论您的文档是基于DTD,还是XML Schema,您都可以定义实体以在Authentic视图中使用。完成定义后,这些实体将显示在“实体”输入助手和上下文菜单的插入实体子菜单中。当您在“实体”输入助手中双击一个实体时,将在光标位置插入该实体。

 

如果您需要在文档的多个位置使用文本字符串、XML片段或一些其他外部资源,则使用实体是很有用的。您可以在“定义实体”对话框中定义实体,它其实是所需数据的短名称。定义实体后,您可以在文档中的多个位置使用它。这可以帮助您节省时间,并大大增强维护工作。

 

您可以在文档中使用两种广泛类型的实体:已解析的实体,即XML数据(文本字符串或XML文档的片段),或未解析的实体,即非XML数据,例如二进制文件(通常是图形、声音或多媒体对象)。每个实体都有一个名称和一个值。对于已解析的实体,实体就是XML数据的一个占位符。实体的值可以是XML数据本身,也可以是一个指向包含XML数据的.xml文件的URI。在未解析的实体的情况下,实体的值是一个指向非XML数据文件的URI。

 

要定义实体,请执行以下操作:

 

1.单击Authentic | 定义XML实体。这将打开“定义实体”对话框。

dlgDefineEntities

2.名称字段中输入您的实体的名称。这就是将出现在“实体”输入助手中的名称。

3.类型字段中,从下拉列表中选择实体的类型。有三种类型可供选择。Internal实体是指要使用的文本存储在XML文档本身。选择PUBLICSYSTEM将指定该资源位于XML文件之外,并将分别使用公共标识符或系统标识符进行定位。系统标识符是指一个提供资源位置的URI。公共标识符是指一个与位置无关的标识符,它使一些处理器能够识别该资源。如果您同时指定公共标识符和系统标识符,则公共标识符将被解析为系统标识符,并使用系统标识符。

4.如果您选择了PUBLIC作为类型,请在PUBLIC字段中输入您的资源的公共标识符。如果您选择了Internal或SYSTEM作为类型,则PUBLIC字段将被禁用。

5.值/路径字段中,您可以输入以下任何一项:

 

如果实体类型是Internal,请输入文本字符串作为实体值。请勿用引号来分隔条目。您输入的任何引号都将被视为文本字符串的一部分。

如果实体类型是SYSTEM,请输入该资源的URI,或使用浏览按钮选择本地网络上的资源。如果该资源包含已解析的数据,则它必须是一个XML文件(即,它必须具有.xml扩展名)。或者,该资源可以是一个二进制文件,例如GIF文件。

如果实体类型是PUBLIC,则必须在此字段中额外输入系统标识符。

 

6.NDATA条目告诉处理器,此实体不需要被解析,而是要被发送到适当的处理器。因此,NDATA字段应仅用于未解析的实体。

 

对话功能

您可以通过单击相应的按钮来追加、插入和删除实体。您还可以通过单击列标题,根据任何一列的字母值对实体进行排序;单击一次以升序排序,两次以降序排序。您还可以调整对话框大小以及列宽。

 

一旦在XML文档中使用了实体,它就会被锁定并无法在“定义实体”对话框中编辑。锁定的实体将由第一列中的锁定符号指示。对实体进行锁定会确保XML文档对于实体是有效的。(如果实体被引用但未被定义,则文档是无效的。)

 

重复的实体会被标记。

 

限制

 

无论是在对话框、Authentic视图,还是在XSLT输出中,包含在另一个实体中的实体都不会被解析,并且此类实体的&字符会以其转义形式显示,即&

外部实体在Authentic视图中不被解析,除非实体是一个图像文件并作为特性值输入,该特性已在Schema中被定义为ENTITYENTITIES类型。当使用从SPS中生成的XSLT处理文档时,此类实体将被解析。

 

© 2017-2023 Altova GmbH