You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否使用DITA配置文件属性排除导出内容?

实现DITA内容的反向条件排除(仅标记需移除的内容)

DITA原生条件处理通常基于包含规则(比如用audience、props等属性指定要保留的内容),但要实现仅标记少量需排除的内容,可通过以下两种实用方式实现:

方法1:直接用DITA-OT参数反向过滤

  1. 给需要排除的元素添加自定义属性,示例:
    <note deny="commercial">这是商业敏感内容,发布时需移除</note>
    
  2. 调用DITA-OT发布时,通过filter参数指定反向过滤规则:
    dita --input=你的主题地图.ditamap --format=html5 --filter=exclude/@deny="commercial"
    
    该命令会让DITA-OT自动移除所有带有deny="commercial"属性的元素。

方法2:自定义DITA-OT插件(适配复杂场景)

如果需要更灵活的排除逻辑(比如多维度排除),可以编写轻量插件:

  • 扩展DITA-OT的过滤处理阶段,添加对deny属性的识别逻辑
  • 配置插件参数,支持发布时动态指定要排除的deny属性值

注意事项

  • 自定义属性(如deny)需要在DITA的DTD或Schema中声明,避免文档验证报错
  • 若使用DITA 1.3及以上版本,也可借助props属性的扩展能力,比如写props="deny-commercial",再通过过滤规则匹配该值

内容的提问来源于stack exchange,提问作者ianmayo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 11:57:03