構造化オーサリング

構造化オーサリングとは何か、およびコンテンツルールが構造化オーサリング用に Adobe FrameMaker でどのように定義されているかを理解します。

このトピックの内容

概要

非構造化オーサリングワークフローでは、比較的自由な流れの物語ベースの文書を作成します。 例えば、見出しがあって、その後に段落や、キャプション付きのグラフィックが続くような文書を作成できます。 構造化オーサリングでは、内容ルールにより、類似の情報がすべて一貫した構造を持つことが強制されます。例えば、以下のような内容ルールを強制することができます。

このような内容ルールは、文書型定義(DTD)またはXML スキーマで定義されます。 このような内容ルールに準拠しているかどうかは、DTD や XML スキーマに対して自動的にチェックされます。

例えば、自宅の住所の構造を考えてみましょう。 住所には、社員の名前、番地・号、字名、市区町村、郵便番号を含めることを内容ルールが要求していると仮定します。 非構造化オーサリングの場合、家屋番号のない住所が発見されるのは、編集や校閲のときだけです。 構造化オーサリングに、構造の完全性は自動的に検証されます。 したがって、一貫した構成とシーケンスが強制および保証されます。

利点

情報の一貫した構成が保証されます

ビュレットリストに 2 つ以上の項目を含める必要があることや、 画像にキャプションを含める必要があることを必須条件とする構造化アプリケーションを作成できます。

情報の構成が自動的に検証されます

文書の構造が破損している場合は、それを示す表示キューが表示されます。

Figure 1. ここでは、DITA トピックにタイトルエレメントが表示されていません。
文書構造が破損していることを示す表示キュー

内容の一貫性

構造を強制すると、文書セット内の複数の文書で内容の一貫性が高められます。

内容の再利用をサポート

FrameMaker が提供する DITAVAL、属性によるフィルターの適用、関係テーブルのようなユーザーインターフェイスベースの内容再利用機能を使用すると、内容を簡単に再利用できます。

文書に情報を追加するメタデータをサポート

テキストや画像などの内容に加え、メタデータも構造化文書に関連付けることができます。 例えば、文書の作成者です。 属性を使用して、メタデータを文書内の特定のエレメントに関連付けることもできます。 「属性によるフィルターの適用」機能を使用すると、属性値を設定して構造化文書の内容をそれらの属性に基づきフィルターできます。

内容と書式の分離

文書の作成者は内容を重視します。 最終出力の書式と体裁は公開ワークフローで調整されます。 例えば、プリント出力ではオンライン出力と異なるフォントが使用される場合があります。

ただし、FrameMaker は構造化アプリケーションの書式設定をサポートしているため、 構造化されたオーサリング環境には書式設定された内容が表示されます。 これにより、文書の書式設定に関する表示キューを取得できます。

Figure 2. XML ビュー
書式設定されたコンテンツの XML ビュー

Figure 3. WYSIWYG ビュー
書式設定されたコンテンツの WYSIWYG ビュー

ローカライゼーションの労力を削減

構造化文書は内容と書式を分離します。このローカライゼーション技術により、ローカライゼーションの労力とコストが大幅に削減されます。

SGML、XML、XHTML

FrameMaker を使用すると、構造化文書の取り込みおよび書き出しを SGML と XML(XHTML 1.0 を含む)のどちらの形式でも行うことができます。 構造化文書のファイルは、一度 に取り込むと、SGML ファイルでも XML ファイルでもなくなり、構造化 FrameMaker 文書になります。 文書を元の形式に戻すには、その文書を SGML または XML として保存します。

SGML

Standard Generalized Markup Language (SGML) は、データの交換と格納に関するすべてのマークアップ言語の国際標準です。

SGML は手続き型のマークアップ言語ではなく記述的な言語であり、異なるシステムが同じ文書を処理できることを意味します。各システムは、関連するセクションに対して、それぞれ異なる処理命令を適用します。

SGML は、Document Type Definition (DTD) を実装した最初の言語です。DTD には、文書の構成要素と構造によって文書の形式を定義する働きがあります。 同じ文書型に属するそれぞれの文書は、一律に検証し、処理することができます。

ある DTD の構造に適合している文書を検証済み文書と呼びます。

XML

Extensible Markup Language (XML) は、特に Web 向けの構造化された情報を表現する汎用的な形式です。 HTML や SGML と同様に、XML でもエレメントと構造を使用する必要があります。

ただし、XML は拡張性があるという点において HTML とは異なります。 XML では、エレメントだけでなく、エレメントの順序、エレメント同士の関係、エレメントの処理や表示の方法なども定義できます。

XML を使って、コンテンツに適した構造を定義および実装しましょう。 ある DTD の構造に適合している XML 文書を検証済み文書と呼びます。標準の XML 仕様に準拠するエレメントを使用する XML 文書を整形式文書と呼びます。

XHTML 1.0

Extensible HyperText Markup Language (XHTML) は、HTML の拡張版であると共に、XML に準拠しており、XML ベースのアプリケーションで操作できるように設計されています。そのため、HTML 形式の文書は、標準 XML ツールで表示、編集、検証が可能です。 XHTML を使用すると、文書の内容について上位互換性と下位互換性を維持しながら、HTML から XML に容易に移行することができます。

XML と XHTML 1.0 の比較

XML は、スタイルベースで段落志向のワープロや DTP の代わりに、構造化オーサリングの基盤を提供します。 XML では、階層構造から構成されるエレメントによって内容を記述します。

ワープロ環境(非構造化 FrameMaker など)では、様々な文書コンポーネントの間の関係は、ページ上の書式から明らかです。 ただし、ワープロ文書は段落の並びから構成されるので、このような関係を文書ファイルは表現できません。 例えば、非構造化 FrameMaker では、Body 段落スタイルとその前にある見出し 1 スタイルの従属関係を表現できません。 ただし、構造化オーサリングでは、文書コンポーネントの間の階層関係を表現できます。

DITA および DocBook

Adobe FrameMaker の技術文書にただちに利用できる構造化アプリケーションには、DITA と DocBook の 2 つがあります。

DITA

DITA (ダーウィン情報タイピングアーキテクチャ) は、オーサリングおよびパブリッシング向けの XML データモデルです。これは、OASIS DITA 技術委員会によって定義され、維持されているオープンスタンダードです。DITA は、一連のエレメントと属性、および技術文書用に特別に設計された定義済み構造を提供します。

DITA 1.3 には、次の 5 つの特殊なトピックタイプが含まれています。

  • タスク

  • 概念

  • リファレンス

  • 用語集エントリ

  • トラブルシューティング

例えば、DITA の一般的なエレメントには次が含まれます。 <title><shortdesc><prolog><body><p><fig><image><table>、および <related-links>

以下は、DITA の特徴的な機能の一部です。

  • DITA はトピック指向です。 各トピックは、複数のコンテキストで再利用できる内容の一部にすることができます。

  • DITA はコンテキストから内容を切り離すので、DITA では、複数の情報のアーキテクチャが可能です。 また、DITA を拡張すると、情報の種類を定義することもできます。

  • DITA はトピックベースです。 DITA の提供する基本的なトピックは 3 種類ですが、これらは各ユーザーの必要性に合わせて特殊化することができます。

  • DITA では、文書セットの中の XML ファイルへのリンクを含む DITA マップを使用します。各 XML ファイルは、トピックまたはトピックの集まりです。

  • FrameMaker は PDF、Responsive HTML5、iOS および Android 用モバイルアプリ、EPUB、Kindle、Microsoft HTML Help (CHM)、および Basic HTML に DITA を公開できます。

DocBook

DocBook もまた、技術論文や技術文書のために設計されたオープンスタンダードです。 DocBook は、技術書や技術論文に、そのような文書が意図する構造を持つ DTD を提供します。

例えば、DocBook の一般的なエレメントには次が含まれます。 <article><section><title><articleinfo> および <pubdate>

以下は、DocBook の特徴的な機能の一部です。

  • DocBook はブックや章を重視します。

  • DocBook は、本来階層的で、真の単一ソース化のために開発される必要があります。 内容は、コンテキストから独立していません。

  • DocBook には、固定された大きなエレメントおよび属性のセットがあります。

  • DocBook では、他の全ファイルを含む XML インクルードファイルを提供しています。

  • DocBook の出力には、PDF、HTML、HTML Help が含まれます。また、他の出力形式にも多少の開発作業で拡張することができます。