【问题标题】:DITA DTD constraint for table and figure表和图的 DITA DTD 约束
【发布时间】:2015-06-24 19:29:06
【问题描述】:

谁能帮我创建 DITA DTD 约束?

我想为图形、图像和表格创建约束。
带有 alt 标签的图像标签 mandatroy
我希望图形标题也是强制性的,而表格标题、desc 和 thead 至少包含一个条目。

【问题讨论】:

    标签: dtd dita


    【解决方案1】:

    创建imageConstraints.mod:

    <!ENTITY altReq-constraint 
      "(topic altReq-c)">
    
    <!ENTITY % image.content
                           "((%alt;),
                             (%longdescref;)?)">
    

    然后将其包含在您的 shell DTD 中,例如

    <!ENTITY % altReq-c-def  
      PUBLIC "-//FOO//ELEMENTS DITA 1.2 Required Alt Constraint//EN" 
      "imageConstraint.mod">
    %altReq-c-def;
    

    并将其添加到 included-domains 实体

    <!ENTITY included-domains "...
                               &altReq-constraints;">
    

    图形和表格遵循相同的模式。

    您不能强制使用 DTD 的至少一个表头条目规则,因为您需要使用例如Schematron。

    【讨论】:

    • 谢谢!..我在图形和表格约束方面遇到了一些复杂情况。在图和表中还有其他几个元素。我需要在约束中声明所有元素和实体吗?
    • 是的,你需要将你想要的元素添加到figtable中,没有捷径可以让它们成为强制性的。
    【解决方案2】:

    我的 DTD 知识有点生疏,但我相信如果你正在修改 DTD 并且元素是可选的,它旁边会有一个问号

    <!ELEMENT title (#PCDATA )>
    <!ELEMENT figure (title?) > 
    

    要使title 是必需的,删除?

    <!ELEMENT title (#PCDATA )>
    <!ELEMENT figure (title) >
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-13
      • 1970-01-01
      • 1970-01-01
      • 2012-01-02
      • 1970-01-01
      相关资源
      最近更新 更多