转换阶段
在实际导入之前,源数据经过验证和准备:它是转换阶段。
转换操作
转换阶段的目的是转换内容(默认情况下仅转换 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 时登录用户的名称。 | 标准 |
| 标题 |
| 标准 |
| 版本 | 1 | 标准 |
| 语言 | 默认语言。 | 标准 |
| 解决方法 | 默认分辨率(仅限图形)。 | 标准 |
| 状态 | 中定义的相应初始状态,大多数情况下为草稿。 | 标准 |
| 状态 | 导入后的翻译状态字段中的状态。如果指定此值,则会覆盖现有值。 | 翻译 |
如果源目录中存在元数据文件(.3sish 或 .met),则会将元数据复制到转换目录中的相应元数据文件 (.3sish) 中。
位于转换目录中的 .3sish 文件已被自定义 post-XSL 文件修改(如果指定)。
恢复并重新启动
您可以在转换阶段暂停和恢复。然后,转换继续进行剩余的操作。
如果在转换阶段(例如,取消导入时)中断导入,然后重新启动转换,则 Content Importer 仅在中断之前转换尚未成功转换的文件。此外:
- 添加的文件进行了转换。
- 已更改的文件进行了转换。
- 从源文件夹中删除的文件也将从转换后的文件中删除。
如果用户在源文件夹中提供了 filemap.xml 文件,或者在中断后更改了导入设置,则所有文件将再次转换,无论它们之前是否转换过。