サンプル: シンプルな目次

www.altova.com すべてを展開/折りたたむ このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  SPS ファイル: 高度な機能 > 目次、参照、ブックマーク >

サンプル: シンプルな目次

ChaptersSimple.sps という名前の目次の基本的な機能のデモを行うためのサンプル SPS ファイルが (マイ) ドキュメントフォルダー 以下にある、C:\Documents and Settings\<username>\My Documents\Altova\StyleVision2019\StyleVisionExamples\Tutoria;\TOC に収められています。この SPS は、章ベースのドキュメントを記述するためのコンテンツモデルにより構成されるスキーマをベースにしています。ChaptersSimple.sps を StyleVision にて開くと、スキーマツリーウィンドウにてスキーマの構造を確認することができます(以下のスクリーンショットを参照)。次にあるセクションの、 サンプル: 階層ならびに連続的な目次 では、同じスキーマをベースにしたより複雑な目次サンプルについて記述されます。

 

TutTOC1_SchemaStructure

 

ドキュメント要素の helpproject には、子要素に topics 要素が含まれています。topics 要素には topic 要素を任意の数だけ含めることができ、各々の topic 要素には別の topic 子孫要素を含めることができます。最初のレベルにある topic 要素はドキュメントの章として考えることができ、その子孫要素の topic 要素を節や小節として考えることができます。

 

この SPS により、ドキュメントの上部に配置されている目次が作成され、各章の名前(最初のレベルにある topic)が表示されます。目次の作成を行うには以下に記されるステップを踏むことになります:

 

1.目次レベル内部のデザイン構造: 1つ以上のレベルをデザインドキュメントへ挿入することで、(出力)ドキュメントの構造が作成されます。この階層構造が、目次へ反映される構造となります。このサンプルでは説明を分かりやすくするために、1つの目次レベルだけが Topic テンプレートにて作成されています。デザイン内にあるレベルは1つしか無いため、後になって目次テンプレートが作成された場合でも、最初のレベルしか意味を持たないことになります。
2.目次ブックマークの作成: ステップ 1 で作成された目次レベル内に目次ブックマークを(デザインドキュメント内部に)作成します。これにより、目次テンプレート内部にある目次参照から、目次ブックマークへの指定を行うことができるようになります。目次ブックマークでは、目次アイテムに表示されるテキストを指定することもできます。
3.目次テンプレートの作成: ドキュメント内部に目次を作成するためのテンプレートです。デザインドキュメント内にある目次レベルの構造に対応するレベル参照により構成されます。例えば、目次テンプレート内に3つのネストされたレベル参照が存在する場合、少なくとも3つのネストされたレベルをデザインドキュメントにも作成する必要があります。このセクションで紹介される例には、デザインドキュメント内にある1つの目次レベルに対応するかたちで、レベル参照が1つだけ作成されています。レベル参照内部には目次参照が配置されます。目次参照により、目次にて対応するレベルの目次アイテムが生成されます。

 

SPS の構造とレベル

SPS におけるデザインの構造を確認してください。(緑色の $XML タグが表示されている)メインテンプレートには目次が含まれていることに注目してください。メインテンプレートにある (その他のコンテンツ) により、グローバルテンプレートならびにデフォルトテンプレートが適用されます。メインテンプレートの外側にあるその他の SPS デザインが、グローバルテンプレートとなります。

 

目次定義(デザインにある目次レベルならびに目次ブックマーク)は、topic に対するグローバルテンプレート内に配置されています(以下のスクリーンショットを参照)。このグローバルテンプレートには条件分岐タグが挿入されており、topic 要素の祖先要素がいくつあるかに従って topic 要素の切り分けが行われ、章、節、小節に対して異なる処理が行われることになります。

 

TutTOC1_TopicBkmk

 

上のスクリーンショットには、最初の条件分岐(つまり最初のレベルで章に対する topic 要素)のコンテンツが示されています。topic 要素の開始タグにて目次レベルが作成されている点に注目してください。その他2つの条件分岐では、topic テンプレートに対して条件分岐は作成されておらず、結果として1つの目次レベルにしかドキュメントは割り当てられず、それが(章に対する)最初のレベルの topic 要素となります。

 

 

目次ブックマークの作成

topic 要素の子孫である header 内部(para 要素の外側)に目次ブックマークが作成されています(以下のスクリーンショットにある黄色のタグ)。目次ブックマークは、トップレベルの各 topic 要素に対するアンカーとして使用されます。

 

TutTOC2_TopicBkmk

 

目次ブックマークのプロパティはプロパティサイドバーにて編集することができます(以下のスクリーンショットを参照)。

 

TutTOC1_TopicBkmkProps

 

グループプロパティでは目次ブックマークグループがセットされます。このサンプルの場合、このプロパティに対して MyTOC という値が指定されています。ブックマークが作成されると、ブックマークグループが目次にて参照され、同じレベル内に配置された異なる目次グループを指定するのに使用することができるようになります。ID プロパティにより、作成されたブックマークインスタンスに対してユニークな ID を指定することができます。参照されていなければ削除プロパティにより、参照されていないブックマークが削除されるようになります。使用されるテキストプロパティにより、目次における目次アイテムのテキストとして使用されるテキストエントリーを指定することができます。ブックマークのコンテンツ(デザインにおけるブックマークの開始ならびに終了タグ間にあるコンテンツ)、または XPath 条件式からテキストを取得することができます。このサンプルでは、XPath 条件式を使用することで、最初のレベルにある topic 要素のヘッダーテキストが返されます。

 

目次テンプレート

目次テンプレート内部では、最初のレベル参照 (levelref) tag_TOCRefLevelTag が挿入されています(以下のスクリーンショットを参照)。このレベル参照は、章を表す topic 要素にて作成された最初のレベルに対応することになります(上記の SPS の構造とレベルを参照ください)。

 

TutTOC1_SimpleTemplate

 

このレベル参照内部には目次参照 (TOCref) tag_TOCRef3 が挿入されます。この目次参照により、(i) MyTOC という名前のブックマークグループ内にあるブックマークの選択(上記の目次ブックマークの作成を参照)、そして (ii) スコープ内にあるブックマークの選択が行われます。これらの設定は目次参照が選択されている状態でプロパティサイドバーにて行うことができるほか、デザイン内の目次参照を右クリックして、コンテキストメニューから関連する編集コマンドを選択することで行うことができます。

 

目次アイテムの外観は、目次の目次参照タグにて指定することができます。目次参照タグ内部を右クリックして、コンテキストメニューから挿入するコンポーネントを選択することで、番号のフォーマット、テキスト、リーダー、そしてページ参照を挿入することができます。これらの各コンポーネントをデザインにて選択し、プロパティサイドバーにあるプロパティを修正することで、コンポーネントの編集を行うことができます。

 

 


(C) 2019 Altova GmbH