この項の内容は次のとおりです。
フラグメントは、HTMLまたはスクリプト(クライアント側のJavaScriptおよびサーバー側のIdocを含む)の自己完結型のスニペットで、Webサイトの複数のテンプレートで再利用可能な値を含むことができます。
フラグメントは、<IMG SRC=xxx>、<SCRIPT SRC=xxx>、<$ docLoadResource(xxx) $>などのタグを使用して他のファイルへの参照も格納できます。外部参照されるファイルやリソースは、フラグメント・アセットとして機能するため、フラグメントの使用時には常に参照可能である必要があります。
単純なフラグメントは、テンプレートの任意の場所に挿入できるアトミック・コンテンツを格納できます。より複雑なフラグメントでは、一部のコンテンツをページの<head>に配置し、他のコンテンツを<body>に配置する必要があります。<body>では、コンテンツをページの先頭や末尾に、またはカーソルの現在の位置に配置できます。つまり、フラグメントには、複数のフラグメント・スニペットを格納できます。
1つの<head>スニペットに対して複数の<body>スニペットを含めることはできますが、推奨されません。主に、ページの<head>を使用するフラグメントは、リージョン・テンプレートやサブテンプレートに配置できないためです。これは、リージョン・テンプレートもサブテンプレートも完全なHTMLページではなく、<head>が含まれていないためです。フラグメントは、Site Studioアーキテクチャの柔軟な性質に最も合うよう<body>のみを使用して作成される必要があります。<body>のみを使用すると、ページ・テンプレート、サブテンプレートおよびリージョン・テンプレートでフラグメントを使用できます。
ページ・テンプレートには<head>が含まれ、フラグメントで使用される場合、<head>と<body>の両方をフラグメントに含めることができます。ただし、これらのフラグメントで、<ssinfo> XMLデータ・アイランドが作成されます。詳細は、6.8項「<ssinfo> XMLデータ・アイランドのフラグメント・インスタンスの構造」を参照してください。
設計者は、Webサイトにおけるフラグメントの使用場所に応じて、フラグメントのルック・アンド・フィールまたは動作を変更できます。この機能は、フラグメント・パラメータの使用により可能になります。フラグメント・パラメータにより、フラグメントの作成者は特定の変数パラメータを指定できます。サイト設計者は、フラグメントをテンプレートに実際に追加するときに、これらのパラメータを選択できます。
0(ゼロ)個以上のフラグメント・パラメータ定義(名前、タイプ、デフォルト値)。これらは、フラグメント・スニペットで参照されますが、フラグメント・インスタンスを含むページごとに一意に宣言されます。
1つ以上のフラグメント・スニペット。これらは、フラグメントをテンプレートに追加する際にコンテンツを配置する必要のある場所を示す識別子を備えた、HTMLまたはスクリプトの断片です。
0(ゼロ)個以上のフラグメント・アセット。これらは、Webページでの使用時にフラグメントから参照できるローカル・ファイルです。
フラグメントは、一般的に2つのスニペットで構成されます。1つ目のスニペットは、通常、ページの<head>に存在し、ページを書式設定するCSSファイルを参照するか、フラグメントの実装の一部または全部を提供するJavaScriptファイルを参照します。2つ目のスニペットは、通常、ページの<body>のドロップ・ポイントに存在し、フラグメントのプレゼンテーションを含みます。このスニペットは、インクルードされた.jsファイルにより提供されるメソッドのJavaScriptコールのように単純なこともあれば、HTML、JavaScriptおよびIdocスクリプトのコレクションを格納することもあります。
Site Studioでは、個々のフラグメントをフラグメント・ライブラリに格納します。フラグメントごとに独自のライブラリに格納することや、関連するフラグメントをまとめて同じライブラリに格納することが可能です。フラグメント・ライブラリは、次のような管理対象オブジェクトとしてコンテンツ・サーバーに格納されます。
Oracle Content Serverでは、プライマリ・ファイルまたは代替ファイル、あるいはその両方としてコンテンツ・アイテムを管理します(Oracle Content Serverのヘルプを参照)。これらのファイルは、Site Studioのプライマリおよびセカンダリ・ページとは無関係です。混同しないように注意してください。
注意: 前述のプライマリ・ファイルとしてチェックインされるフラグメント・アセットのZIPファイルを、フラグメント・アセットとフラグメント定義ファイルの両方を含むフラグメント・ライブラリのZIPファイルと混同しないでください。フラグメント・ライブラリのZIPファイルは、デザイナのフラグメント・ライブラリのアップロードおよびダウンロード・ユーティリティで使用するもので、フラグメント・ライブラリをより簡単に管理できます。デザイナのフラグメント管理ユーティリティを使用せずにコンテンツ・サーバーの管理対象フラグメント・ライブラリに直接アクセスする場合は、フラグメント・アセットのZIPファイルを管理するだけで済みます。 |
フラグメント定義ファイルには、ライブラリ内の各フラグメントを定義する1つ以上の<fragment>要素を格納した<fragments>ルート要素が含まれます。フラグメント定義ファイルの正確な構文は、「フラグメント定義ファイル」で説明します。詳細は、6.7項「フラグメント定義ファイル」を参照してください。
コンテンツ・サーバーにフラグメント・ライブラリを追加する場合、コンテンツ・サーバーの標準のチェックイン・ページは使用しません。かわりに、デザイナによるフラグメント・ライブラリのアップロード機能を使用します。この機能により、管理対象コンテンツ・アイテムをチェックインし、フラグメント・アセットのZIPファイルのコピーを次の適切なランタイムweblayoutディレクトリに抽出します(CS_nameはコンテンツ・サーバーの名前です)。
CS_name\weblayout\fragments
このパスは、次の2つのIdoc変数のいずれかを使用して、フラグメントのサーバー側Idocスクリプトで参照できます。
製品に付属するフラグメント定義ファイル(サンプル・フラグメント)内の<fragments>ルート要素は、デザイナ・アプリケーション内で編集または削除されないように、読取り専用属性が設定されています。この属性を設定または解除するGUIは公開されていません。出荷時に設定済のフラグメントは、Site Studioの将来のリリースへのアップグレード時に上書きされる予定のため、変更されないように設計されています。
もちろん、設計者は、これらのフラグメントをコピーおよび編集して、独自のコピーに変更を加えることができます。
ツールボックスを使用すると、フラグメントをドラッグアンドドロップで簡単にテンプレートに配置できますが、スクリプトによる方法を使用してフラグメントをソースに直接配置する場合があります。
フラグメントを追加するには、wcmFragmentスクリプトをテンプレートで使用します。タグがリージョン・テンプレートまたはサブテンプレートで使用される場合、最初のドロップポイント・スニペットのみが使用されます。
タグがページ・テンプレートで使用される場合、レガシー<ssinfo> XMLデータ・アイランドがSite Studioに挿入されます。詳細は、6.8項「<ssinfo> XMLデータ・アイランドのフラグメント・インスタンスの構造」を参照してください。
パラメータ
fragmentInstanceId: ページ上のフラグメント・インスタンスのID。動的リストなど複数ページを返すフラグメントの区別に使用されます。IDによって、動的リストで問合せ結果の異なるページを表示できます。たとえば、あるフラグメントは問合せ結果の1ページ目で、他のフラグメントは独自の結果の3ページ目を表示できます。両方のフラグメントに同じIDが使用されている場合、一方の問合せの結果の特定のページに移動するようクリックすると、他方のフラグメントで独自の結果の同じ番号のページが表示されます。
fragmentDocName: フラグメント・ライブラリのdDocName。
fragmentId: 指定されたライブラリ内のフラグメントのID。
snippetId: 指定されたフラグメント内のスニペットのID。
tagProperties: フラグメントのプロパティの名前付き値ペア。
サンプル・コード
<!--$wcmFragment("fragmentInstanceID", "fragmentDocName", "fragmentID", "snippetID", "ssTheme=default", "ssHoverColor=", "ssTextColor=", "ssFocusColor=", "ssShowHome=true", "ssShowNext=false", "ssClassName=IDocNavTabsTop")-->
各フラグメントには、フラグメント・ライブラリのフラグメント定義ファイルで定義されたスニペットが含まれます。フラグメント・スニペットは、次の3つの方法でフラグメントにインクルードできます。
simple: フラグメント・スニペットは、追加のマークアップなしにレイアウト・ページに直接追加され、フラグメントとして認識または管理されなくなります。
inline: フラグメント・スニペットは、レイアウト・ページに直接追加されますが、フラグメントとして認識および管理されるように前後に特殊なマークアップが付きます。
reference: フラグメント・スニペットは、レイアウト・ページに実際に追加されず、かわりにインクルード・ファイルのようにスニペットへの参照が追加されます(同時に、フラグメントとして認識および管理されるように前後にマークアップが付きます)。
ごく単純なスニペット以外には、インクルード・メカニズムとしてreferenceを使用することを強くお薦めします。この方法であれば、フラグメントがサイト全体で何度も使用される場合でも、スニペット・コンテンツを単一の場所で管理できます。
インラインおよび参照スニペットの前後に配置される特殊なマークアップの正確な構文は、9.14項「ssIncludeXml」を参照してください。参照によりインクルードされるスニペットは、ssIncludeXml()というスクリプト拡張機能を使用してレイアウト・ページに追加されます。
このスクリプト拡張機能により、管理対象XMLファイルから要素をインクルードしてレイアウト・ページに配置するIdocメカニズムが提供されます。ssIncludeXml()のパラメータには、フラグメント・ライブラリのフラグメント定義ファイルのdDocNameと、抽出されるXMLノードのXPath式が含まれます。(その他のパラメータの詳細は、9.14項「ssIncludeXml」を参照してください)。抽出されるXMLノードのコンテンツは、現在のテンプレートの有効範囲で詳細に評価され、必要に応じて追加のサーバー側Idocスクリプトがインクルードされます。
設計者は、カスタム・セクション・プロパティを定義して、Webサイトの各セクションの各プロパティに一意の値を割り当てることができます(『Oracle WebCenter Content Site Studio Designerユーザーズ・ガイド』を参照。定義と値は、Webサイト・プロジェクト・ファイルに格納されます。
カスタム・セクション・プロパティは、それ自体では役に立ちません。カスタム・プロパティが役に立つのは、レイアウト・ページ内(より一般的には、フラグメント・スニペット内)でクライアント側またはサーバー側スクリプトに参照される場合のみです。カスタム・セクション・プロパティの値にアクセスする場合、クライアント側JavaScriptとサーバー側Idocスクリプトを使用する2つの主な方法があります。
クライアント側のランタイム生成ファイルsitenavigation.jsには、現在のWebサイト階層の定義を格納したNavNodeオブジェクトの配列が含まれます(5.2.1項「sitenavigation.js」を参照)。現在のセクションの値を含む各カスタム・セクション・プロパティは、cp_で始まる名前を持つメンバー変数のそのセクションに対応するNavNodeオブジェクト内に格納されます。
カスタム・セクション・プロパティのこれらのクライアント側表現が最もよく使用されるのは、ナビゲーション・フラグメント内です。ナビゲーション・フラグメントは、NavNodeオブジェクトを反復処理し、cp_XXXメンバー変数の存在を検出して使用することで、表示されるナビゲーション・スキームをカスタマイズできます。cp_XXXメンバー変数は、存在する場合としない場合があるため、パラメータへのアクセスは、Site Studioで提供される次の2つのJavaScriptメソッドを使用することでより簡単になります。
customSectionPropertyExists (prop): カスタム・セクション・プロパティが存在するかどうかを示すtrueまたはfalseの値を戻します。このメソッドがtrueを戻した場合、カスタム・セクション・プロパティを直接使用できます。
getCustomSectionProperty (prop): カスタム・セクション・プロパティの値が存在する場合、その値を戻します。存在しない場合、空の文字列を戻します。
これらの2つのメソッドのアクションは、Site Studioに付属するCSP Sample Navigation (client)フラグメントで確認できます(『Oracle WebCenter Content Site Studio Designerユーザーズ・ガイド』を参照)。
サーバー側Idocスクリプトを使用してカスタム・セクション・プロパティにアクセスする場合、次の複数の方法を使用できます。
ssGetNodeProperty (name): このスクリプト拡張機能は、現在のWebサイト・セクションの名前付きプロパティの値を取得します。
ssGetNodeProperty (nodeId, name): このスクリプト拡張機能は、指定されたWebサイト・セクションの名前付きプロパティの値を取得します。
SS_GET_ALL_NODE_PROPERTIESサービス: このサービスは、指定されたWebサイト・セクションのすべてのカスタム・セクション・プロパティのリストを取得します。
これらのアクションは、Site Studioに付属するCSP Sample Navigation (server)、CSP Sample Dynamic ListおよびSample CSP Page Titleフラグメントで確認できます(『Oracle WebCenter Content Site Studio Designerユーザーズ・ガイド』のサンプル・フラグメントに関する項を参照)。
カスタム・セクション・プロパティは、sitenavigation.xmlファイルのサイト階層のXMLレンディションにも格納されます(5.2.3項「sitenavigation.xml」)を参照。そのため、サーバー側スクリプトを使用してこのXMLファイルを解析するナビゲーション・フラグメントを作成する場合、各セクションのカスタム・セクション・プロパティに対するアクセス権も保持している必要があります。
プロパティの名前は、引用符で囲む必要があります。つまり、特定のノードのlabelプロパティを取得する場合であれば、次のように記述します。
<!--$label = ssGetNodeProperty(nodeId, "label")-->
フラグメント定義ファイルは、純粋なXMLファイルであり、ファイルの割当て先のコントリビューション・リージョンからその構造を継承したコンテンツを格納しています。コーディングの観点からは、フラグメント・ライブラリのフラグメント定義ファイルは次のように表現されます。
<fragments> <fragment> <parameters> <parameter> param definition goes here </parameter> <parameter> another param def goes here </parameter> </parameters> <snippets> <snippet> HTML snippet goes here </snippet> <snippet> another HTML snippet goes here </snippet> </snippets> <elements> <element> element definition goes here </element> <element> another element def goes here </element> </elements> </fragment> </fragments>
フラグメント定義ファイルには、通常、次のタグが含まれます。
<fragments>タグは、フラグメント・ライブラリを表します。
パラメータ
id: フラグメント・ライブラリの一意の名前または識別子。
name: フラグメント・ライブラリの表示名。
readonly: Trueに設定すると、ライブラリのフラグメントはデザイナで編集できなくなります。
<fragment>タグは、単一のフラグメント定義を表します。
パラメータ
id: フラグメントの一意の名前または識別子。スニペットを参照によりインクルードする場合にXPath式で使用されます。
name: フラグメントの表示名。
language: フラグメント実装のためのサーバー側言語。使用可能な言語は、idoc、aspまたはjspです。
type: このフラグメントのタイプ。フラグメントが表示されるデザイナ・ツールボックスのカテゴリを決定するのに使用されます。また、フラグメントが静的リストと動的リストのどちらであるかも決定されます。使用可能なタイプは、navigation、staticlist、dynamiclistまたはotherです。
icon: デザイナ・ツールボックスでこのフラグメント用に使用するアイコンの名前。事前定義された次のフラグメント・アイコンのリストから選択します。
アイコン名 | イメージ |
---|---|
region | |
wysiwyg | |
plaintext | |
image1 | |
image2 | |
list1 | |
list2 | |
list3 | |
list4 | |
list5 | |
list6 | |
tree | |
horizontalrule | |
nonbreakingspace | |
linebreak | |
span | |
div | |
heading1 | |
heading2 | |
heading3 | |
heading4 | |
heading5 | |
heading6 | |
copyright | |
flash | |
companylogo | |
documents |
<parameters>: 0(ゼロ)個以上のパラメータのコレクション。詳細は、6.7.3項「<parameter>」を参照してください。
<snippets>: 0(ゼロ)個以上のスニペットのコレクション。詳細は、6.7.4項「<snippet>」を参照してください。
<elements>: 0(ゼロ)個以上の要素のコレクション。詳細は、6.7.6項「<element>」を参照してください。
<parameter>タグは、フラグメントの単一のパラメータを表します。このタグの属性は次のとおりです。
パラメータ
name: パラメータ名。
type: パラメータ・タイプ。次のものがあります。
text: 単純なテキスト型パラメータ。1つ以上の<option>子タグを使用して、事前定義済の選択項目のリストを格納できます。
boolean: 単純なTrue/False型パラメータ。
integer: 単純な整数型パラメータ。
float: 単純な浮動小数点型パラメータ。
size: HTMLサイズ(10px、50%、3ptなど)を表すパラメータ。
color: 色の値(RGBまたはHTMLの色名を使用)。
url: URL。
manageddoc: 「検索結果」ページで選択された、Oracle Content Serverの管理対象ドキュメントのdDocName。問合せパラメータは、<querytext>子タグを使用して指定できます。
managedurl: 「検索結果」ページで選択された、Oracle Content Serverの管理対象ドキュメントのDocUrl。問合せパラメータは、<querytext>子タグを使用して指定できます。
managedquery: CAPTURE_QUERYページで選択された問合せテキスト文字列。
cssstyle: CSSスタイル属性を表すテキスト・パラメータ。このタイプは、textタイプのように動作します。(将来的な使用を意図しています。)
siteid: 「サイトの選択」ダイアログで選択された、コンテンツ・サーバーの同じインスタンスに含まれるいずれかのWebサイトのsiteId値。
nodeid: 「セクションの選択」ダイアログのサイト階層を通じて選択された、WebサイトのいずれかのセクションのnodeId値。
custom: <customgui>子タグを使用して値を入力するための独自のカスタムGUIを提供するパラメータ。
description: 「フラグメント・パラメータ値」ダイアログに表示されるパラメータの説明。
required: レイアウト・ページにフラグメントを追加する場合にそのフラグメントのパラメータが必須であるかどうかを指定するtrueまたはfalseの値。
optionsonly: 1つ以上の<option>子タグに使用可能な事前定義済のオプションが提供されている場合にのみ適用することを示すTrueまたはFalseの値。
<parameter>タグは、パラメータのデフォルト値(在する場合)を表すテキストを格納できます。また、次のオプションの子タグも格納できます。
<option>: textタイプのパラメータについて、1つ以上のオプション・タグを使用して、事前定義済の選択項目のリストを指定します。詳細は、6.7.3.1項「<option>」を参照してください。
<querytext>: manageddocおよびmanagedurlタイプのパラメータのQueryText値が含まれます。詳細は、6.7.3.2項「<querytext>」を参照してください。
<validate>: パラメータを検証するためのカスタマイズされたスクリプト関数が含まれます。詳細は、6.7.3.3項「<validate>」を参照してください。
<convert>: パラメータを挿入する前に変換するためのカスタマイズされたスクリプト関数が含まれます。詳細は、6.7.3.4項「<convert>」を参照してください。
<customgui>: パラメータ値を入力するための独自のGUIを提供するカスタマイズされたHTMLスニペットが含まれます。詳細は、6.7.3.5項「<customgui>」を参照してください。
<option>タグは、選択リストの単一のオプションを表します。textタイプのパラメータにのみ適用されます。<option>タグは、選択リストに表示されるテキストを格納する必要があります。このタグの属性は次の1つです。
value: このオプションが選択されたときに挿入する値。この属性は、オプションに表示される値と挿入される値が同じ場合は任意指定です。
たとえば、次のようになります。
<option>Option 1</option> <option>Option 2</option> <option>Option 3</option> <option>Option 4</option>
または
<option value="A">Option A</option> <option value="B">Option B</option> <option value="C">Option C</option> <option value="D">Option D</option>
<querytext>タグは、コンテンツ・サーバーで検索を実行する場合に使用する問合せパラメータを表します。manageddocまたはmanagedurlタイプのパラメータにのみ適用されます。このタグは、CDATAセクション内に問合せテキストを格納します。このタグは属性を持ちません。
たとえば、次のようになります。
<querytext> <![CDATA[ dExtension <matches> `gif` <or> dExtension <matches> `jpg` ]]> </querytext>
<validate>タグは、オプションであり、パラメータをフラグメント・スニペットに挿入する前に検証するためのカスタマイズされたスクリプト・ルーチンを表します。スクリプト・ルーチンは、任意のWSH互換スクリプト言語(VBScriptやJScript)で記述できます。このルーチンには、単一の文字列を入力として使用するvalidateという単一の関数が含まれる必要があります。
関数の戻り値は、次のいずれかになります。
ブール: パラメータが有効か無効かを表すTrueまたはFalseの値。
または
文字列: パラメータが有効の場合、空の文字列を戻し、パラメータが無効の場合、エラー・メッセージを戻します。
<validate>タグは、CDATAセクション内にスクリプトを格納します。このタグの属性は次の1つです。
language: このスクリプトで使用する言語(VBScriptまたはJScript)。
たとえば、次のようになります。
<validate language="VBScript"> <![CDATA[ Function validate(strInput) If InStr(strInput, "hello") > 0 Then validate = "" Else validate = "Error, ValidatedParam must contain " _ "the text 'hello' somewhere in the string" End If End Function ]]> </validate>
注意: <validate>タグは、使用できますが、フラグメント・エディタ・ユーザー・インタフェースには表示されません。つまり、現在はサポートされていません。 |
<convert>タグは、オプションであり、パラメータをフラグメント・スニペットに挿入する際に変換するためのカスタマイズされたスクリプト・ルーチンを表します。スクリプト・ルーチンは、任意のWSH互換スクリプト言語(VBScriptやJScript)で記述できます。このルーチンには、単一の文字列を入力として使用し、変換後の文字列を出力として返すconvert
という単一の関数が含まれる必要があります。
<convert>タグは、CDATAセクション内にスクリプトを格納します。
パラメータ
language: このスクリプトで使用する言語(VBScriptまたはJScript)。
たとえば、次のようになります。
<convert language="VBScript"> <![CDATA[ Function convert(strInput) If StrComp(strInput, "") = 0 Then convert = "(empty)" Else convert = "Your Value Was [" & strInput & "]" End If End Function ]]> </convert>
注意: <convert>タグは、使用できますが、フラグメント・エディタ・ユーザー・インタフェースには表示されません。つまり、現在はサポートされていません。 |
<customgui>タグは、customタイプのパラメータ専用です。このタグにより、フラグメント設計者は、フラグメント・パラメータを入力するための独自の(単純な)GUIを提供できます。このタグは、標準のHTMLまたはJavaScriptを含むことが可能なCDATAセクション内にHTMLスニペットを格納します。
このタグは、4つのJavaScriptメソッドを通じてSite Studioと対話します。
window.external.GetValue(): パラメータの初期値を取得するメソッド。カスタム・パラメータは、プレーン・テキスト・パラメータと同じように処理を開始しますが、編集フィールドにはカスタムGUIを表示するためのボタン(図6-1)があります。このメソッドは、編集フィールドから現在の値を取得します。
window.external.OnOK(): Site Studioに対して、処理が終了し、SetValue()メソッドにより渡された値を承認する必要があることを指示するメソッド。
window.external.OnCancel(): Site Studioに対して、処理が終了したが、SetValue()メソッドにより渡された値を無視する必要があることを指示するメソッド(値が存在する場合)。
たとえば、次のようになります。
<customgui> <![CDATA[ <HTML> <HEAD> <SCRIPT language="javascript"> function initialize() { strResult = window.external.GetValue() + "00000"; bold.checked = (strResult.charAt(0) == "1"); italic.checked = (strResult.charAt(1) == "1"); underlined.checked = (strResult.charAt(2) == "1"); font.checked = (strResult.charAt(3) == "1"); } function getvalue() { strResult = ""; strResult = strResult + (bold.checked ? "1" : "0"); strResult = strResult + (italic.checked ? "1" : "0"); strResult = strResult + (underlined.checked ? "1" : "0"); strResult = strResult + (font.checked ? "1" : "0"); return strResult; } </SCRIPT> </HEAD> <BODY onload="initialize();"> Welcome to my Customized Parameter Input Screen. This example could perhaps be used as a starting point for entering the contribution suppression flags.<BR> <TABLE> <TR> <TD>Allow BOLD</TD> <TD><INPUT type="checkbox" id="bold"></TD> </TR> <TR> <TD>Allow ITALIC</TD> <TD><INPUT type="checkbox" id="italic"></TD> </TR> <TR> <TD>Allow UNDERLINED</TD> <TD><INPUT type="checkbox" id="underlined"></TD> </TR> <TR> <TD>Allow Font Changes</TD> <TD><INPUT type="checkbox" id="font"></TD> </TR> <TR><TD COLSPAN="2"> </TD></TR> <TR> <TD COLSPAN="2"> <INPUT type="button" value="OK" onclick="window.external.SetValue(getvalue()); window.external.OnOK();"/> <INPUT type="button" value="Cancel" onclick="window.external.OnCancel();"/> </TD> </TR> </TABLE> </BODY> ]]> </customgui>
注意: <customgui>タグは、使用できますが、フラグメント・エディタ・ユーザー・インタフェースには表示されません。つまり、現在はサポートされていません。 |
<snippet>タグは、フラグメントの単一のスニペットを表します。
パラメータ
id: フラグメント定義におけるスニペットの一意の識別子。
location: スニペットを配置するレイアウト・ページの場所。head、topofbody、drop-pointおよびbottomofbodyの4箇所があります。
include: スニペットをテンプレートにインクルードする方法。
simple: スニペット・コンテンツを直接テンプレートにコピーし(フラグメント・インスタンスの詳細でスニペットをマークアップしません)、最初の挿入時にスニペット・コンテンツで%paramname%を検索してパラメータを直接インライン置換します。
inline: スニペット・コンテンツを直接テンプレートにコピーし、フラグメント・スニペットとしてアトミックに処理され、移動、編集および削除できるように、フラグメント・インスタンス・スニペットとしてコンテンツをマークします。
reference: ssIncludeXml()コールをテンプレートに挿入し、フラグメント・スニペットとしてアトミックに処理され、移動、編集および削除できるように、フラグメント・インスタンス・スニペットとしてそのコールをマークします。
<snippet>タグには、フラグメントの単一のアトミック・コンテンツを構成するHTMLまたはスクリプトの完全な単一のスニペットが含まれます。このスニペット・コンテンツは、CDATAセクション内に格納されます。また、このタグは、次のオプションの子タグを格納できます。
<designview: >デザイナの設計ビューに表示されるスニペットの設計時表現。
<designview>タグは、デザイナの「設計」ビューに表示されるフラグメント・スニペットのオプションの設計時ビューを表します(デフォルト表示はフラグメント名です)。このタグは、CDATAセクション内にHTMLを格納します。このタグは属性を持ちません。
たとえば、次のようになります。
<designview> <![CDATA[ example copyright fragment goes here ]]> </designview>
フラグメント・インスタンスとそのパラメータを定義する構造は、デザイナ・アプリケーションにより<ssinfo> XMLデータ・アイランドで管理されます。データ・アイランドには、ページ・テンプレートのフラグメント・インスタンスごとに単一の<fragmentinstance>タグが含まれ、各タグにはフラグメント・インスタンス・パラメータを宣言するIdocスクリプトが含まれます。<ssinfo>データ・アイランドは、<head>スニペットを含むフラグメントがページ・テンプレートに追加された場合に使用されます。リージョン・テンプレートやサブテンプレートに追加されたフラグメントでは、<ssinfo> XMLデータ・アイランドは生成されません。
静的リストや動的リストなどの拡張フラグメント・タイプでは、<fragmentinstance>タグに追加の子タグを格納できます。これらのタグとその属性の正確な構文は、Site Studio 10gR3のテクニカル・リファレンス・ガイドを参照してください。