转换阶段

在实际导入之前,源数据经过验证和准备:它是转换阶段。

转换操作

转换阶段的目的是转换内容(默认情况下仅转换 DITA 内容),以及生成/准备元数据。

内容转换涉及:
  • 针对 Content Manager DTD 验证 DITA 内容。
  • filemap.xml 文件的创建,用于在下一个项目中进行映射。
  • 用内部链接中的标识符替换文件路径。
  • 生成 Content Manager 的条件 (ishcondition)。
  • 文档类型的转换,例如从 //OASIS////RWS//
元数据的准备涉及:
  • 生成对象的标识符。
  • .3sish 文件的创建。
  • Post -XSL 的执行。ContentImporter.xsl 文件作为 XSL 文件的示例提供。
转换适用于具有以下扩展名的文件:
  • .dita
  • .ditamap
  • .xml

Content Importer 将忽略具有其他文件扩展名的文件,但图像除外。根据通过用户界面配置的分辨率映射,为具有文件扩展名的图像准备元数据。

导入类型

内容仅在标准导入中转换。

元数据仅在标准翻译导入中进行修改。post-XSL 仅在标准导入中执行。

验证

DITA 映射和主题根据 Content Manager DTD 进行验证。使用位于 Content Manager 服务器上的 catalog.xml 文件来查找它们。

标识符生成

以下属性的值将转换为对象的标识符:
  • 根元素上的 @id 属性
  • 所有元素上的 @href 属性
  • @conref@conrefend 属性
不会修改 @keyref 属性的值。
Content Importer 将使用现有对象标识符(以 GUID 开头)或用户提供的标识符(如果它们存在于以下某个项目中):
  • .3sish 文件(或现有 .met 文件,但最好是 .3sish)。
  • 要导入的对象的文件名。
  • 现有 filemap.xml 文件(如果用户手动将其添加到源内容中,这是可能的,但不推荐)。

Content Manager 条件生成

DITA 条件处理属性及其值都将被转换为 Content Manager 条件。例如,otherprops="screen_shots" 转换为 ishcondition="otherprops=screen_shots"

文件生成

Content Importer 会将以下文件添加到转换文件夹:
  • .3sish 文件,存储元数据。
  • filemap.xml,存储映射信息,其中包含存储库中对象的文件路径(不同于用户可以作为输入提供的 filemap.xml)。
  • import.status,存储有关元数据和内容文件的转换或导入的状态信息。
  • 滚动日志文件:创建 Import Report.log 文件。默认情况下,它在达到最大大小时在名称中接收日期标记,并创建另一个文件。当文件数达到最大值时,将删除最旧的文件。在 Nlog 配置中设置行为和最大级别。
默认情况下,在转换目录中的元数据文件 (.3sish) 中设置以下元数据:
元数据字段导入类型
作者使用 Content Importer 时登录用户的名称。标准
标题
DITA 映射
<标题>元素的值。如果未找到任何内容,则为<映射>元素上 @title 属性的值。如果未找到任何内容,则为文件名。
DITA 主题
<标题>元素的内容。如果<标题>元素的内容包含 @conref@conkeyref 属性,则不解析此值。
图形
对象的原始文件名。
标准
版本1标准
语言默认语言。标准
解决方法默认分辨率(仅限图形)。标准
状态设置 > XML 设置 > 状态中定义的相应初始状态,大多数情况下为草稿标准
状态导入后的翻译状态字段中的状态。如果指定此值,则会覆盖现有值。翻译

如果源目录中存在元数据文件(.3sish.met),则会将元数据复制到转换目录中的相应元数据文件 (.3sish) 中。

位于转换目录中的 .3sish 文件已被自定义 post-XSL 文件修改(如果指定)。

恢复并重新启动

您可以在转换阶段暂停和恢复。然后,转换继续进行剩余的操作。

如果在转换阶段(例如,取消导入时)中断导入,然后重新启动转换,则 Content Importer 仅在中断之前转换尚未成功转换的文件。此外:
  • 添加的文件进行了转换。
  • 已更改的文件进行了转换。
  • 从源文件夹中删除的文件也将从转换后的文件中删除。

如果用户在源文件夹中提供了 filemap.xml 文件,或者在中断后更改了导入设置,则所有文件将再次转换,无论它们之前是否转换过。