😎

Lightweight DITA 1.0 Draft(2017)→Draft(2022)で何が変わっているのか

2024/09/21に公開

ぶっちゃけDTDに追加履歴がコメントで残されているのでそれを見ればいいのだけれど。筆者は後追いでdiscussionを追ったりしているだけなので、経緯や意図の誤りがあればご指摘ください。

DITA 1.3→ DITA 2.0

2017時点のdraftでは、LwDITAはDITA 1.3のサブセットのようなものだった。サブセットになれていなかった原因は、ざっくりいえば動画・音声のためのコンポーネントと、emphasisドメインのコンポーネント。あとsimpletableの自由度。DITAはSpecialization(特殊化または専門化)という拡張のための仕組みを持つため、仕組みに沿っているという意味ではサブセットの範囲内とはいえるが少々厳しい。何となれば単純化を目的とする仕様で拡張を使うというのは学習難易度的にもよろしくない。

そこで取られた解決手段は、1.3ではなく2.0のサブセット仕様となるようにすること。2.0の策定チームと協調してやっていくこととなり、2.0でこのはみ出した部分を基本仕様に入れてもらおうというワケだ。まあ、人口に膾炙した構造の取り込みの面もあるので、DITA側の進化に取り入れてもらうのは自然ではある。

構成DTDのファイル名変更

lw-topic.dtdのように変更された。マップ、トピック両用のcommon用のファイルが分離追加。DITAと同じく、共通部は基本topic/*クラス。

example構造の追加

セクショニング系の構造であるexampleが入った。前なかったよね? 名前の通り、例示用の構造。

XDITA
<example><title>たとえばの話</title>
   ...
</example>

MDITAでは{.example}で対応するらしい。Pandoc Header Attribitesの記法やね。

MDITA
## たとえばの話 {.example}

...

HDITAでは<div data-class="example"><h2>... となる。<section>ではないので、それはそれで齟齬が起きそうな気がしないでもない。

fn構造の配置

<body>>直下に<fn>は置けないのでは?」という話があり、<div>の下に置く形となった。形式上のdivである。不備の系統ではあるが、見た目上のインパクトがあるため立項。

XDITA

<p>もっと大きなヤマ<xref href="#topic/fn1"></xref>をしませんか。</p>

<div>
<fn id="fn1"><p>案件</p></fn>
</div>

<tt>の追加

highlightドメインとして<tt>の追加。まあ<pre>でインラインもブロックもやる、というのは実運用と離れすぎるよね。筆者がこの不在をDraft 01で使いにくいと思っていた箇所なので助かる。

XDITA
<p>コマンドは<tt>bin/dita</tt>です。</p>
HDITA
<p>コマンドは<code>bin/dita</code>です。</p>
MDITA
コマンドは`bin/dita`です。

<data><othermeta> (2023)

メタデータを扱うために、primitiveに近く何でもありに近い<data>を使っていたのが、<othermeta>に置き換えられた。<othermeta>の場合、記述可能な箇所がメタデータ部へ限定されることが明確になる。

進行しているのか分からないその他の話

主にMDITAで、

  • map用の記法をYAMLにしてしまった方がいいのではないか議論
  • MDITAのHTML直書きの立ち位置

参考資料

組版・ドキュメンテーション勉強会

Discussion