5 ベーシック・アセット・タイプの設計
AssetMakerユーティリティは、ベーシック・アセット・タイプを作成する場合に使用できます。コンテンツ・チームおよびマーケティング・チーム用にアセット・タイプを管理/配信システムに移行する場合は、事前にアセット記述子ファイルとアセット表の作成や、サブタイプの追加や、アソシエーション・フィールドの設定なども必要になります。
トピック:
5.1 AssetMakerユーティリティについて
ベーシック・アセット・タイプを作成するために、AssetMakerユーティリティは開発者が作成する記述子ファイルを使用してAssetType、SystemInfo、Category、Catalog、SystemSQLの各表でいくつか操作を実行します。
AssetMakerユーティリティが作業を開始するためには、新規アセット・タイプのプロパティが定義されている記述子ファイルが必要です。プロパティという用語は、データベース表の列とWebCenter Sitesの入力フォームのフィールドの両方を意味します。そのため、まずAssetMaker XMLタグを使用してWebCenter Sites XML
ファイル(アセット記述子ファイル)にベーシック・アセット・タイプを定義します。
次のステップは、ファイルをWebCenter Sitesにアップロードし、新しいアセット・タイプのデータベース表と、新しいタイプのアセットで作業(作成、編集、コピーなど)する際に使用するフォームを生成するWebCenter Sitesエレメントの2つのアイテムを、AssetMakerを使用して作成します。
この項には次のトピックが含まれます:
5.1.1 AssetMakerの仕組み
AssetMakerを使用して新しいベーシック・アセット・タイプを作成するには、次のステップに従います。
このタイプのアセットの作成、編集、調査などを行うと、AssetMakerによってAssetType
表に配置されているアセット記述子ファイルが解析され、このフォームがアセット・タイプに固有になるよう、WebCenter Sitesにその値が渡されます。アセット記述子ファイル内の文により、フィールドの入力タイプが決まり、フィールドの長さの制限が指定され、フィールドを検索フォームと検索結果フォームに表示するかどうかが決まります。
アセット・タイプを作成した後に、このアセット・タイプを使用するサイトでのアセット・タイプの有効化やスタート・メニューのショートカットの作成などが必要になります。
次の図には、AssetMakerの仕組みや、ベーシック・アセット・タイプが作成される際に使用するデータベース表がまとめてあります。
5.1.2 アセット記述子ファイル
AssetMaker XMLタグを使用して、システムに設計するアセット・タイプを定義するアセット記述子ファイルをコーディングします。
この項には次のトピックが含まれます:
5.1.2.1 アセット記述ファイルについて
アセット記述子ファイルとは、開発者がAssetMakerのタグを使用してベーシック・アセット・タイプを定義する有効なXML文書のことです。アセット記述子ファイルは、次を行います。
-
データ構造の観点からアセット・タイプを説明します。データベース表名、列名、列のデータ型、WebCenter Sitesフォームのフィールド・サイズを指定します。
-
指定されたタイプのアセットをユーザーが操作する際に、WebCenter Sitesによって表示されるHTMLフォームの書式設定を行います。HTMLフォームの書式設定とは、フォーム上のフィールドに名前を付け、必要なフォーマットでフィールド(チェック・ボックス、ラジオ・ボタン、ドロップダウン・リストなど)を表示し、フィールドの仕様(テキスト・フィールドに入力できる文字数など)を指定することなどです。
AssetMakerはアセット記述子ファイルを使用して、新しいアセット・タイプのデータベース表を作成します。指定されたタイプのアセットをコンテンツ・プロバイダが操作(作成や編集など)すると、AssetMakerはアセット記述子ファイルを解析し、ファイル内のデータを使用して、WebCenter Sitesが表示するフォームをカスタマイズします。
ノート:
参照用に、AssetMakerのサンプル記述子コードがWebCenter Sitesインストール媒体に提供され、「Samples」フォルダに格納されます。同じフォルダには、サンプル記述子ファイルを説明するreadme.txt
ファイルが格納されています。
5.1.2.2 フォーマットと構文について
すべてのアセット記述子ファイルの基本的なフォーマットは、次のとおりです。AssetMakerのそれぞれのタグの右側に、そのタグについての簡単な説明が示されています。
<?xml version="1.0" ?> <ASSET ...> Names the asset type (storage table) <PROPERTIES> Starts the properties specification section <PROPERTY ...> Specifies column and field name for the property <STORAGE .../> Specifies data type for the column <INPUTFORM .../> Specifies field format on New, Edit, Inspect forms <SEARCHFORM .../> Specifies field format on Advanced Search form <SEARCHRESULTS .../> Specifies which fields are shown in search results </PROPERTY> <PROPERTY ...> <STORAGE .../> <INPUTFORM .../> <SEARCHFORM .../> <SEARCHRESULTS .../> </PROPERTY> <PROPERTY ...> ...</PROPERTIES>
Ends the properties specification section</ASSET>
Ends the asset descriptor file
次の例は、AssetMakerのタグが使用できるパラメータの一部を示す、アセット記述子ファイルの構文です。
<?xml version="1.0" ?> <ASSET NAME="assetTypeName" DESCRIPTION=""assetTypeName" ...> <PROPERTIES> <PROPERTY NAME="fieldName1" DESCRIPTION="fieldName1"/> <STORAGE TYPE="VARCHAR" LENGTH="36"/> <INPUTFORM TYPE="TEXT" DESCRIPTION="fieldName1".../> <SEARCHFORM TYPE="TEXT" DESCRIPTION="fieldName1".../> <SEARCHRESULTS INCLUDE="TRUE"/> </PROPERTY> <PROPERTY NAME="fieldName2" DESCRIPTION="fieldName2"/> <STORAGE TYPE="INTEGER" LENGTH="4"/> <INPUTFORM TYPE="TEXT" DESCRIPTION="fieldName2".../> <SEARCHFORM TYPE="TEXT" DESCRIPTION="fieldName2".../> <SEARCHRESULTS INCLUDE="TRUE"/> </PROPERTY> ... </PROPERTIES> </ASSET>
WebCenter Sitesタグとそれらのパラメータ、およびサンプル・コードの詳細は、『Oracle WebCenter Sitesリファレンス・タグ・リファレンス』を参照してください。
5.1.2.3 AssetMakerのタグについて
-
アセット記述子ファイルは、次のように標準のXMLバージョンのタグで始まります。
<?xml version="1.0"?>
-
XMLバージョン・タグの後に続く
ASSET
タグが、アセット・タイプ、つまりWebCenter Sitesデータベースの記憶域表の名前を付けます。また、ASSET
タグはアセット・タイプの一部の動作属性や表示属性を設定し、たとえば、ASSET
タグは必須フィールドを指定するグラフィック表記を決定したり、アセットをプレビューできるかどうかを決定します。開始タグの
<ASSET>
は常にコードの1行目にあり、終了タグの<\ASSET>
は常にアセット記述子ファイルの最後の行にあります。アセット記述子ファイルごとにアセット・タイプは1つのみ作成されるため、各アセット記述子ファイルには一対のASSET
タグしか存在しないことに注意してください。 -
PROPERTIES
タグは、プロパティの説明が保持されているファイルのセクションをマークします。開始タグの<PROPERTIES>
は、常にアセット記述子ファイルの2番目の文になります。各アセット記述子ファイルには一対のPROPERTIES
しか存在しません。ノート:
PROPERTIES
タグは、PROPERTY
タグが不要な場合でも、アセット記述子ファイルごとに必要です。 -
PROPERTY
タグは、対になったPROPERTIES
タグ内にネストされていて、このタイプのアセットの列とフィールドを指定します。各PROPERTY
タグは、このプロパティに対してユーザーが入力する値を保持する列のデータベース名、および列の表示名(そのフィールド名)を指定し、この表示名は、このタイプのアセットを使用するユーザーに対してレンダリングされるフォーム上に表示されます。 -
PROPERTY
タグの各ペアの中にネストされるタグは、次のとおりです。-
STORAGE
: このプロパティによって構築されている列のデータ型を指定します。STORAGE
タグ内のデータ型は、futuretense.ini
ファイルのデータベース・エントリのプロパティが定義するデータ型の1つにマップする必要があります。 -
INPUTFORM
: 「新規」、「編集」、「調査」の各フォームのフィールドの名前とフォーマットを指定します。たとえば、そのフィールドは、ドロップダウン・リスト、チェック・ボックス、またはテキスト・フィールドになります。そのフィールドの入力タイプは、STORAGE
文で指定されたように、データベース列のデータ型と互換性がある必要があります。 -
SEARCHFORM
: 「詳細検索」フォームに表示される際のフィールド(プロパティ)のフォーマットを指定します。SEARCHFORM
文がPROPERTY
セクションから削除されると、定義されているフィールドは「詳細検索」フォームに表示されません。TYPE
パラメータの値をTable
またはDate
に設定すると、ドロップダウン・リストはアセット・タイプの「詳細検索」フォームには表示されますが、「標準検索」フォームには表示されません。 -
SEARCHRESULTS
: 検索実行後に検索結果フォームに表示されるフィールドを指定します。このフィールド値は、INCLUDE
パラメータがtrue
に設定されている場合にも表示されます。このタグはオプションです。標準フィールドを変更する場合には、
SEARCHRESULTS
を名前や説明に対してtrue
に設定しないでください。
-
AssetMakerタグおよびそれらのパラメータの詳細は、『Oracle WebCenter Sitesリファレンス・タグ・リファレンス』を参照してください。その項には、STORAGE TYPE
、INPUTFORM TYPE
およびSEARCHFORM TYPE
の各パラメータ間の依存性や制限についても記載されています。
5.1.3 アセット・タイプのデータベース表の列
AssetMakerにより新しいアセット・タイプに対してデータベース表が作成されると、アセット記述子ファイルのPROPERTY
タグで定義されたすべてのプロパティに対して列が作成され、その基本的な機能についてWebCenter Sitesで必要となるデフォルトの列が作成されます。各アセット・タイプの表内のデフォルトの列のリストについては、「ベーシック・アセット・タイプのデータベース表のデフォルトの列」を参照してください。
この項には次のトピックが含まれます:
5.1.3.1 ソース列: 特殊な場合
すべてのアセット・タイプ表には、source
列を入れることも可能です。WebCenter Sitesには、Source
表に行を追加する際に使用する、「一般的な管理」ツリーの「管理」ノードに、Source
表と「ソース」フォームが用意されています。この機能を使用して、アセットが最初に作成された場所を特定できます。ただし、前述の表に記載された列とは異なり、source
列はAssetMakerによるアセット・タイプ表の作成時に自動的に作成されません。ソース列を表に追加してアセット・フォームに表示させるには、そのPROPERTY
の説明をアセット記述子ファイルに追加する必要があります。例5-2を参照してください。
5.1.3.2 列の記憶域のタイプ
STORAGE TYPE
パラメータは列のデータ型を指定します。このデータ型は、wcs_properties.json
ファイルに配置されているWebCenter Sitesデータベース・プロパティによって定義されています。
次の表は、アセット・タイプの表の列に対応できるデータ型を示しています。
表5-1 STORAGE TYPEパラメータ
タイプ(汎用ODBC/JDBCデータ型) | プロパティ |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5.1.3.3 フィールドの入力タイプ
INPUT TYPE
パラメータは、WebCenter Sitesのフォームにデータが表示される際にフィールドへ入力する方法を指定します。次の表は、すべての入力タイプを示しています。フィールドへの入力タイプは、列のデータ型に対応している必要があることに注意してください。
表5-2 INPUT TYPEパラメータ
入力タイプ | 説明 |
---|---|
|
単一行のテキスト。
TEXT入力タイプの場合、 |
|
スクロール・バー付きのテキスト・ボックスで、複数行のテキストに対応します。
大量のテキストをフィールドに入力できるようにするには、URL列のコンテンツを表示するテキスト・ボックスを作成します。そうするには、 ユーザーが「保存」をクリックすると、この種類のフィールドに入力されたテキストは、このアセット・タイプのデフォルトの記憶域ディレクトリとして指定されたファイル・ディレクトリに保存されます。デフォルトの記憶域ディレクトリ(defdir)は、アセット記述子ファイル、またはアセット・タイプ作成時のAssetMakerフォームで指定できます。 ノート:
|
|
ファイル名(URL)を入力して「参照」ボタンを表示するフィールドです(それにより、ファイルへのパスとファイル名を入力するか参照して選択できるようになります)。 フィールドがアップロード・フィールドであることを指定した場合、 アップロード・フィールドに ユーザーが「保存」をクリックすると、WebCenter Sitesでは選択したファイルがアップロードされ、このアセット・タイプのデフォルトの記憶域ディレクトリとして指定されたファイル・ディレクトリに保存されます。デフォルトの記憶域ディレクトリ(defdir)は、アセット記述子ファイル、またはファイルのアップロード時のAssetMakerフォームで指定できます。 ノート:
|
|
選択可能なオプションのドロップダウン・リストが表示されるフィールドです。 リストに表示されるオプションを指定することも、オプションをデータベース(または外部の表)から選択して動的に表示するように問合せを指定することも可能です。 HTML入力タイプ |
|
チェック・ボックスのフィールドです。 チェック・ボックスのオプション名を指定することも、オプション名をデータベース(または外部の表)から選択して動的に表示するように問合せを指定することも可能です。この入力タイプにより、複数のオプションを選択できるようになります。 HTML入力タイプ |
|
ラジオ・ボタンの制御です。 ラジオ・ボタンのオプション名を指定することも、オプション名をデータベース(または外部の表)から選択して動的に表示するように問合せを指定することも可能です。この入力タイプにより、オプションを1つだけ選択できるようになります。 HTML入力タイプ |
|
CKEditorテキスト・エディタを使用してコンテンツを編集するフィールドです。 CKEditorフィールドを指定するには、フィールドをURLフィールドにすることをお薦めします。つまり、
|
|
ContentForm、ContentDetails、SearchFormいずれかのフォームにフィールドを表示する際に作成するエレメントをコールします。カスタム・エレメントは、次の場所のいずれかにあります。
|
5.1.3.4 標準アセット・フィールドのデータ型
WebCenter Sitesの標準アセット・フィールドの外観をカスタマイズできます。その他の変更内容はすべて下記のとおりフィールドのタイプに対応しています。
-
すべての標準フィールド。表示名を変更できます。
-
システム・フィールドではない標準フィールド。次の例外を除いて、データ型を変更しないでください。データ型が
VARCHAR
の長さのみを変更できます。 -
システム・フィールド。データ型(
VARCHAR
タイプのフィールドの長さも含めて)を変更しないでください。次の表は、標準フィールドのデータ型を示しています(フィールドがシステム・フィールドであるかどうかも示しています)。
表5-3 標準アセット・フィールドのデータ型
標準フィールド | システム・フィールド | データ型 |
---|---|---|
|
可 |
|
|
なし |
|
|
なし |
|
|
可 |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
可 |
|
|
可 |
|
|
可 |
|
|
可 |
|
|
可 |
|
|
可 |
|
|
可 |
|
|
可 |
|
|
なし |
|
|
なし |
|
5.1.4 アセット・タイプに対応したエレメントとSQL文
アセット記述子ファイルをアップロードした後、エレメントを登録します。エレメントを登録すると、AssetMakerによりAssetStubElementCatalog
表のエレメントがElementCatalog
表内のこのアセット・タイプに対応するディレクトリにコピーされます。さらに、このタイプのアセットに対する「簡易検索」フォームと「詳細検索」フォームに、WebCenter Sites検索を実装する複数のSQL文がコピーされます。
必要に応じて、SQL文、アセット・タイプ固有のエレメント、また場合によってはAssetStubElementCatalog
表のエレメントをカスタマイズできます。(オプション)アセット・タイプのエレメントのカスタマイズを参照してください。
ノート:
いかなる状況においても、その他のWebCenter Sitesエレメントを変更しないでください。
トピック:
5.1.4.1 エレメント
AssetMakerによって、次のネーミング規則に従って新しいアセット・タイプのエレメントがElementCatalog
表に格納されます。
OpenMarket/Xcelerate/AssetType/YourNewAssetType
たとえば、サンプル・アセット・タイプImageFileのエレメントは、次の場所にあります。
OpenMarket/Xcelerate/AssetType/ImageFile
次の表にAssetMakerによって各アセット・タイプについてコピーされたエレメントを示します。
表5-4 AssetMakerのエレメント
エレメント | 説明 |
---|---|
|
このタイプのアセットに対する「新規」フォームと「編集」フォームをレンダリングします。 この機能が起動されると、AssetMakerによってアセット記述子ファイルで |
|
このタイプのアセットに対する「調査」フォームを書式設定します。 この機能が呼び出されると、アセット記述子ファイルで |
|
このタイプのアセットに対する「簡易検索」フォームをレンダリングします。 この機能が呼び出されると、AssetMakerでは、アセット記述子ファイル内の |
|
このタイプのアセットに対する「詳細検索」フォームを書式設定します。 この機能が呼び出されると、AssetMakerでは、アセット記述子ファイル内の |
|
「詳細検索」フォームの個々のフィールドにSQL問合せを作成します。 「詳細検索」フォームがレンダリングされると、アセット記述子ファイルで |
|
システムで外部の検索エンジンが使用されると、「詳細検索」フォームの個々のフィールドでSQL文が作成されます。 この機能が呼び出されると、アセット記述子ファイルで |
|
|
|
|
|
「検索結果」ページを書式設定します。このページには、このタイプのアセットに対して、検索基準に適合するアセットが示されています。 このページがレンダリングされると、アセット記述子ファイルで |
|
このタイプのアセットが、サイト・ナビゲーション・タブ以外の、ツリーの任意のタブに表示される際の外観を決定します。 |
|
このタイプのアセットが「サイト」ツリーのサイト・ナビゲーション・ノードに表示される際の外観を決定します。 |
|
データベースに書き込む機能が完了する前にコールされます。つまり、アセットが保存される前の作成、編集、削除またはXMLPostの機能が稼働中に、このエレメントがコールされます。 このエレメントは、アセット記述子ファイルからは何も入力しません。ただし、直接カスタマイズできます。 |
|
データベースへの書込みが終了した後でコールされます。つまり、XMLPostでアセットが作成、編集、削除またはインポートされた後、このエレメントがコールされます。 このエレメントをカスタマイズできます。 |
5.1.4.1.1 PreUpdateエレメントとPostUpdateエレメントについて
アセットで実行できるアクションや手順を機能と呼びます。たとえば、New
、Edit
およびDelete
は、AdminインタフェースとOracle WebCenter Sites: Contributorインタフェースのユーザーがアセットの作成、編集および削除の際に起動できるすべての機能です。そのような機能は、PreUpdate
エレメントとPostUpdate
エレメントもコールします。
PreUpdate
エレメントとPostUpdate
エレメントを使用して、エレメントがコールされたときに各種操作を開始するロジックを格納します。PreUpdate
エレメントは機能が起動されたときにコールされ、PostUpdate
エレメントは、WebCenter Sitesがアセット情報をデータベースに書き込んだ後にコールされます。各エレメントには変数が含まれており、その変数の名前と値によりエレメントがコールされる条件が指定されます。Adminインタフェースから、またはContributorインタフェースやXMLPostユーティリティのフォーム・モードからエレメントをコールするには、変数にupdatetype
と名付けます。ContributorインタフェースのWebモードからエレメントをコールするには、変数にservicesUpdateType
と名付けます。たとえば、コンテンツ・マネージャがAdminインタフェースで稼働しており、そのシステムが記事のバッチを通信社からインポートするように構成されているとします。エレメントでこれらの操作をコーディングして、updatetype=remotepost
をエレメントがコールされる条件として設定すれば、インポートの直前にPreUpdate
エレメントの「ソース」フィールドの値をwirefeed
に、「署名行」フィールドの値をAPI
に設定できます。
ノート:
PreUpdate
エレメントとPostUpdate
エレメントは、WebCenter SitesユーザーがAdminインタフェースまたはContributorインタフェースで、「新規」、「編集」、「削除」の各機能を起動するとき、またはアセットがXMLPostを使用してインポートされるときに、常にコールされます。操作がPreUpdate
エレメントとPostUpdate
エレメントを使用して実行されるかどうかは、それらのエレメントのコード方法によります。デフォルトでは、アクションなしに設計されています。
PreUpdate
エレメントとPostUpdate
エレメントには、次のパスで、Explorerからアクセスできます。
ElementCatalog\OpenMarket\Xcelerate\AssetType
ノート:
Adminインタフェースで新規アセットまたは編集済のアセットを保存すると、PreUpdate
エレメントは2回コールされます。
最初のコールは、「新規」フォームまたは「編集」フォームがレンダリングされる前に実行されます。2回目のコールは、「新規」フォームまたは「編集」フォームで「保存」がクリックされた後に行われますが、この時点でWebCenter Sitesではアセット情報がデータベースに書き込まれていません。
前述の条件により、新規機能または編集機能が呼び出されると、PreUpdate
を使用して操作を1箇所または数箇所で実行できるようになり、それは、エレメントのupdatetype
変数の値に応じて、「新規」フォームか「編集」フォームがレンダリングされる前、アセット情報がデータベースに書き込まれる前、またはその両方のタイミングで発生します。
次の表は、updatetype
変数の値について定義しています。
表5-5 UpdateType変数の値
updatetype = | 説明 |
---|---|
|
Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが「新規」機能を起動した場合。
|
|
Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが新しいアセットを保存した場合:
|
|
Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが「編集」機能を起動した場合:
|
|
Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが編集済のアセットを保存した場合:
|
|
Adminインタフェースからユーザーがアセットを削除した場合:
|
|
ユーザーがXMLPost機能を呼び出してアセットをインポートする場合:
|
|
Webモードから保存された場合、 表5-6は、 |
次の表は、servicesUpdateType
変数の値について定義しています。
表5-6 servicesUpdateType変数の値(Contributorインタフェース)
servicesUpdateType = | 説明 |
---|---|
|
Contributorインタフェースでユーザーが新しいアセットを保存した場合:
|
|
Contributorインタフェースでユーザーが編集済のアセットを保存した場合:
|
|
Contributorインタフェースでユーザーがアセットを削除した場合:
|
5.1.4.2 SQL文
AssetMakerによって、次のネーミング規則に従ってSQL文がSystemSQL
表に格納されます。
OpenMarket/Xcelerate/AssetType/
YourNewAssetType
たとえば、サンプル・アセット・タイプImageFile
のエレメントは、次の場所にあります。
OpenMarket/Xcelerate/ImageFile
次の表は、AssetMakerによって作成されるSQLエレメントを示しています。
表5-7 SQLのエレメント
文 | 説明 |
---|---|
|
このタイプのアセットに対する「簡易検索」フォームと「詳細検索」フォームで使用される問合せを定義するSQL文です。 |
|
使用されません。 |
5.2 ベーシック・アセット・タイプの作成を開始する前に
効率的なアセット・タイプ・デザインを作成するには、フィールドの数、データ型、アセットのアソシエーションなど様々な点を考慮する必要があります。また、CMサイトがある開発システムと、適切な権限を持つユーザーIDをそれぞれ設定します。
5.2.1 アセット・タイプの設計の立案
必ずアセット・タイプを紙上で設計してから、アセット記述子ファイルのコーディングを開始してください。下記のような詳細を考慮します。
-
必要なフィールドは何か。
通常、情報を便利な単位にまとめて、使用するフィールド数を最小限にします。その単位を決定する際には、オンライン・サイトに表示する予定の情報と、データを入力するコンテンツ・プロバイダのデータ入力の必要性の両方を考慮します。
-
各フィールドに対する適切なデータ型は何か。
-
オプションのあるフィールドの場合、どのようにオプションを表示するか。
アセット記述子ファイルでコーディングされた静的リストにするか、または有効なオプションを記載した参照表にするか。
-
どのWebCenter Sitesの機能を使用して、このタイプのアセットを編成したりカテゴリ分けするか。
(ソース、カテゴリ、アセットのアソシエーションなど。)それぞれについて、その名前、および管理システムとオンライン・サイトの設計の両方で使用する方法を決定します。
-
サイト設計の実装にはこのタイプのアセットに、パブリッシュ先の公開ターゲットに基づいて異なるデフォルトのテンプレートを使用する必要があるのか。
必要な場合には、「サブタイプ」機能を使用する必要があります。このタイプのアセットに必要なサブタイプの名前を決定します。
5.2.2 開発システムの設定
また、開始する前に必ず開発システムを設定してください。このような準備ステップの詳細は、『Oracle WebCenter Sitesの管理』を参照してください。
-
適切なサイトを作成します。
-
管理者権限を持つ管理者専用のユーザー名を作成し、開発システムのすべてのサイトでそのユーザー名を有効にします。
TableEditor
がユーザー名に割り当てられていることを確認してください(確認できないと、アセット・タイプの作成はできなくなります)。ノート:
管理者権限がないと、「一般的な管理」ツリーの「管理」ノードにアクセスできず、この章に記載した手順を実行できません。便宜上、ユーザー名に
「デザイナ」
ロールと「GeneralAdmin」
ロールを割り当てます。そうすることで、すべてのタブと、サンプル・サイト内のアセットへのすべての既存の「スタート・メニュー」ショートカットにアクセスできるようになります。
5.3 ベーシック・アセット・タイプの作成
記述子ファイルが1つだけ必要な簡単なアセット・タイプの作成には、あまり時間がかかりません。一部のアセット・タイプでは、AssetMakerが作成するエレメント内のコードを変更したり、ドロップダウン・リストに情報を保持するためにデータベース表を追加できます。
ベーシック・アセット・タイプの作成のタスクは次のとおりです。
-
アセット記述子ファイルのWebCenter Sitesへのアップロード(「管理」タブを使用)。
-
アセット表の作成(アセット・タイプのエレメントを
AssetStubElementCatalog
表からElementCatalog
表の適切なディレクトリにコピーして、アセット・タイプを登録します)。 -
サイトでのアセット・タイプの有効化(アセット・タイプを使用できるようにスタート・メニューのショートカットを作成します)。
-
アセット記述子ファイルの微調整((必要に応じて)アセット・タイプ・エレメントを再登録します)。
-
(オプション)サブタイプの追加(新しいアセット・タイプの場合)。
-
(オプション)アソシエーション・フィールドの構成(新しいアセット・タイプの場合)。
-
(オプション)カテゴリの構成(新しいアセット・タイプの場合)。
-
(条件付き) MIMEタイプの追加(新しいアセット・タイプの場合)。
-
(オプション)索引付き検索を有効にするための検索エレメントの編集(WebCenter Sitesデータベース検索ユーティリティではなく、検索エンジンを使用して、検索フォームの背後にある論理を実行し、新しいアセット・タイプにそれを使用する場合)。
-
アセット・タイプのアイコンの作成と割当て(Contributorインタフェースのみ) (Contributorインタフェースのナビゲーション・ツリー(「サイト・ツリー」、「コンテンツ・ツリー」および「ワーク」ツリー)でアセット・タイプを表すアイコンを作成して割り当てます)。
-
アセット・タイプのテンプレートのコーディング。「テンプレートおよびCSElementのエレメントのコーディング」も参照してください。
-
他のシステムへのアセット・タイプの移動(管理と配信)。これにより、管理者は、ワークフローの設定、スタート・メニュー・アイテムの作成など、アセット・タイプ作成の最後のステップを完了できます。
5.3.1 アセット記述子ファイルのコーディング
「アセット記述子ファイル」で説明されているとおり、次に示すのがアセット記述子ファイルの基本的な書式です。
<?xml version="1.0" ?> <ASSET NAME="assetName"...> <PROPERTIES> <PROPERTY.../> <STORAGE.../> <INPUTFORM.../> <SEARCHFORM.../> <SEARCHRESULTS.../> </PROPERTY> <PROPERTY... /> <STORAGE.../> <INPUTFORM.../> <SEARCHFORM.../> <SEARCHRESULTS.../> </PROPERTY> </PROPERTIES> </ASSET>
アセット記述子ファイルをコーディングするには、『Oracle WebCenter Sitesリファレンス・タグ・リファレンス』を参照し、そのガイドの説明に従ってタグを使用してファイルをコーディングします。ファイルをコーディングするには、ExplorerのネイティブXMLエディタを使用するか、その他のXMLエディタを使用します。
標準アセット・フィールドをアセット記述子ファイルに追加すると、標準アセット・フィールドの外観をカスタマイズできます。フィールドの記憶域タイプの変更は、条件付きとなります。たとえば、システム・フィールドの記憶域タイプは変更できません。標準フィールドのリスト、それらの記憶域タイプ、および記憶域タイプに許可された変更の詳細は、「標準アセット・フィールドのデータ型」を参照してください。
この項では、サンプルのアセット記述子ファイルとコーディング固有のプロパティの例を示します。
この項では、次の例を示します。
例5-1 サンプルのアセット記述子ファイル: ImageFile.xml
アセット記述子ファイルImageFile.xml
の例を次に示します。
<!-- this is the description of an asset --> <ASSET NAME="ImageFile" DESCRIPTION="ImageFile" MARKERIMAGE="/Xcelerate/data/help16.gif" PROCESSOR="4.0" DEFDIR="c:\FutureTense\Storage\ImageFile"> <PROPERTIES> <PROPERTY NAME="source" DESCRIPTION="Source"> <STORAGE TYPE="VARCHAR" LENGTH="24"/> <INPUTFORM DESCRIPTION="Source" TYPE="SELECT" TABLENAME="Source" OPTIONDESCKEY="description" OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/> <SEARCHFORM DESCRIPTION="Source" TYPE="SELECT" TABLENAME="Source" OPTIONDESCKEY="description" OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/> </PROPERTY> <PROPERTY NAME="urlpicture" DESCRIPTION="Image File"> <STORAGE TYPE="VARCHAR" LENGTH="255"/> <INPUTFORM TYPE="UPLOAD" WIDTH="36" REQUIRED="NO" LINKTEXT="Image"/> </PROPERTY> <PROPERTY NAME="urlthumbnail" DESCRIPTION="Thumbnail File"> <STORAGE TYPE="VARCHAR" LENGTH="255"/> <INPUTFORM TYPE="UPLOAD" WIDTH="36" REQUIRED="NO" LINKTEXT="Image"/> </PROPERTY> <PROPERTY NAME="mimetype" DESCRIPTION="Mimetype"> <STORAGE TYPE="VARCHAR" LENGTH="36"/> <INPUTFORM TYPE="SELECT" SOURCETYPE="TABLE" TABLENAME="MimeType" OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype" SQL="SELECT mimetype, description FROM MimeType WHERE keyword = 'image' AND isdefault = 'y'" INSTRUCTION="Add more options to mimetype table with isdefault=y and keyword=image"/> <SEARCHFORM DESCRIPTION="MimeType" TYPE="SELECT" SOURCETYPE="TABLE" TABLENAME="MimeType" OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype" SQL="SELECT mimetype, description FROM MimeType WHERE keyword = 'image' AND isdefault = 'y'"/> </PROPERTY> <PROPERTY NAME="width" DESCRIPTION="Width"> <STORAGE TYPE="INTEGER" LENGTH="4"/> <INPUTFORM TYPE="TEXT" WIDTH="4" MAXLENGTH="4" REQUIRED="NO" DEFAULT=""/> <SEARCHFORM DESCRIPTION="Width is" TYPE="TEXT" WIDTH="4" MAXLENGTH="4" VERB="="/> </PROPERTY> <PROPERTY NAME="height" DESCRIPTION="Height"> <STORAGE TYPE="INTEGER" LENGTH="4"/> <INPUTFORM TYPE="TEXT" WIDTH="4" MAXLENGTH="4" REQUIRED="NO" DEFAULT=""/> <SEARCHFORM DESCRIPTION="Height is" TYPE="TEXT" WIDTH="4" MAXLENGTH="4" VERB="="/> </PROPERTY> <PROPERTY NAME="align" DESCRIPTION="Alignment"> <STORAGE TYPE="VARCHAR" LENGTH="8"/> <INPUTFORM TYPE="SELECT" SOURCETYPE="STRING" OPTIONVALUES="Left,Center,Right" OPTIONDESCRIPTIONS="Left,Center,Right"/> <SEARCHFORM DESCRIPTION="Alignment" TYPE="SELECT" SOURCETYPE="STRING" OPTIONVALUES="Left,Center,Right" OPTIONDESCRIPTIONS="Left,Center,Right"/> </PROPERTY> <PROPERTY NAME="artist" DESCRIPTION="Artist"> <STORAGE TYPE="VARCHAR" LENGTH="64"/> <INPUTFORM TYPE="TEXT" WIDTH="36" MAXLENGTH="64" REQUIRED="NO" DEFAULT=""/> <SEARCHFORM DESCRIPTION="Artist contains" TYPE="TEXT" WIDTH="36" MAXLENGTH="64"/> </PROPERTY> <PROPERTY NAME="alttext" DESCRIPTION="Alt Text"> <STORAGE TYPE="VARCHAR" LENGTH="255"/> <INPUTFORM TYPE="TEXT" WIDTH="48" MAXLENGTH="255" REQUIRED="NO" DEFAULT=""/> <SEARCHFORM DESCRIPTION="Alt Text contains" TYPE="TEXT" WIDTH="48" MAXLENGTH="255"/> </PROPERTY> <PROPERTY NAME="keywords" DESCRIPTION="Keywords"> <STORAGE TYPE="VARCHAR" LENGTH="128"/> <INPUTFORM TYPE="TEXT" WIDTH="48" MAXLENGTH="128" REQUIRED="NO" DEFAULT=""/> <SEARCHFORM DESCRIPTION="Keywords contain" TYPE="TEXT" WIDTH="48" MAXLENGTH="128"/> </PROPERTY> <PROPERTY NAME="imagedate" DESCRIPTION="Image date"> <STORAGE TYPE="TIMESTAMP" LENGTH="8"/> <INPUTFORM TYPE="ELEMENT" WIDTH="24" MAXLENGTH="48" REQUIRED="NO" DEFAULT="" INSTRUCTION="Format: yyyy-mm-dd hh:mm"/> <SEARCHFORM DESCRIPTION="Image date" TYPE="ELEMENT" WIDTH="48" MAXLENGTH="128"/> </PROPERTY> </PROPERTIES> </ASSET>
例5-2 ソース列とフィールドの追加
WebCenter Sitesの「一般的な管理」ツリーの「管理」ノードには「ソース」機能備わっていますが、デフォルトでソース列は作成されません。ソース機能を新しいアセット・タイプで使用するには、ソース列とフィールドにプロパティ文を追加する必要があります。
次の点に注意してください。
-
STORAGE TYPE
はVARCHAR
,に、LENGTH
は24
に設定する必要があります。 -
INPUTFORM
SOURCETYPE
はTABLE
,に、TABLENAME
はSource
に設定する必要があります。
次に例を示します。
<PROPERTY NAME="source" DESCRIPTION="Source"> <STORAGE TYPE="VARCHAR" LENGTH="24"/> <INPUTFORM TYPE="SELECT" TABLENAME="Source" OPTIONDESCKEY="description" OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/> <SEARCHFORM DESCRIPTION="Source" TYPE="SELECT" TABLENAME="Source" OPTIONDESCKEY="description" OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/> </PROPERTY>
例5-3 標準アップロード・フィールドの作成
「参照」ボタンを備えたアップロード・フィールドを作成するには、PROPERTY
文を次のようにコーディングします。
-
PROPERTY NAME
に設定する文字列では、先頭の文字をurl
にする必要があります。 -
STORAGE TYPE
の値をVARCHAR
に設定する必要があります。 -
INPUT TYPE
の値はUPLOAD
に設定する必要があります。
ImageFile
アセット記述子ファイルのアップロード・フィールドのコード・スニペットは、次のとおりです。
<PROPERTY NAME="urlpicture" DESCRIPTION="Image File"> <STORAGE TYPE="VARCHAR" LENGTH="255"/> <INPUTFORM TYPE="UPLOAD" WIDTH="36" REQUIRED="NO" LINKTEXT="Image"/> </PROPERTY>
ノート:
アップロード・フィールドで選択できるファイルのサイズは、1024 MBに制限されています。
例5-4 テキスト・ボックスを使用したアップロード・フィールドの作成
(ファイルの選択に使用する「参照」ボタンでなく)テキストを入力できるテキスト・ボックスを使用してアップロード・フィールドを作成するには、PROPERTY
文を次のようにコーディングします。
-
PROPERTY NAME
に設定する文字列では、先頭の文字をurl
にする必要があります。 -
STORAGE TYPE
の値をVARCHAR
に設定する必要があります。 -
INPUT TYPE
の値はTEXTAREA
に設定する必要があります。
次のコード・スニペットでは、url
列のテキスト・エリア・フィールドが作成されます。
<PROPERTY NAME="urlbody" DESCRIPTION="Article Body"> <STORAGE TYPE="VARCHAR" LENGTH="256"/> <INPUTFORM TYPE="TEXTAREA" WIDTH="400" HEIGHT="100" REQUIRED="YES"/> </PROPERTY>
例5-5 CKEditorを使用したアップロード・フィールドの作成
CKEditorのフィールドを作成するには、次のようにプロパティ文をコーディングします。
-
PROPERTY NAME
では、先頭の文字をurl
にする必要があります。したがって、フィールドでURL列を使用します(そうしないと、フィールドが小さくなりすぎる恐れがあります)。 -
STORAGE TYPE
の値をVARCHAR
に設定する必要があります。 -
INPUT TYPE
の値はCKEDITOR
に設定する必要があります。
<PROPERTY NAME="urlbody" DESCRIPTION="Body"> <STORAGE TYPE="VARCHAR" LENGTH="50"/> <INPUTFORM TYPE="CKEDITOR" WIDTH="300" HEIGHT="300" REQUIRED="YES" INSTRUCTION="Be concise! No more than 3 paragraphs."/> </PROPERTY>
タイプVARCHAR
の長さは、データが格納されているファイルへのパスの長さです。これは、通常100未満です。長さの値が大きすぎる場合(5000など)、データベースはデータをCLOBとして格納するため、データ記憶域に関する問題の原因になります。また、データがファイルではなくデータベースに格納されるため、URLフィールドが破損する恐れがあります。
例5-6 バイナリ・ファイルをアップロードするアップロード・フィールドの作成
次のコードは、blob
をアップロードできるフィールドを作成します。MIMETYPE
を指定しないと、「編集」フォームおよび「調査」フォームにblob
を表示できなくなります。
-
PROPERTY NAME
に設定する文字列では、先頭の文字をurl
にしないでください。 -
STORAGE TYPE
の値をBINARY
に設定する必要があります。
<PROPERTY NAME="type_binary" DESCRIPTION="Binary"> <STORAGE TYPE="BINARY"/> <INPUTFORM TYPE="UPLOAD" WIDTH="24" MAXLENGTH="64" MIMETYPE="application/msword" LINKTEXT="Edit with Microsoft Word" INSTRUCTION="maps to cc.blob"/> </PROPERTY>
アップロード・フィールドに関する次の点を考慮してください。
-
PROPERTY NAMEが文字urlで始まるアップロード・フィールドの場合、アップロードされるファイルのファイル・システム・パスのみがデータベースに格納されます。そのため、この場合、
STORAGE TYPE
をVARCHAR
に設定する必要があります。 -
PROPERTY NAMEが文字urlで始まらないアップロード・フィールドの場合、アップロードされるファイルのデータが
BINARY
形式でデータベースに存在します。そのため、この場合、STORAGE TYPE
をBINARY
に設定する必要があります。
例5-7 パス、ファイル名、開始日および終了日の有効化
パス、ファイル名、開始日および終了日の列は特殊な例です。
AssetMakerにより、PROPERTY
文を使用しないでパス、ファイル名、開始日および終了日の列が作成されます。ただし、アセット記述子ファイルにそれらの列に対するPROPERTY
文を記述しないと、列は存在してもそれらのフィールドはアセット・フォームに表示されません。
これらの列について、次の事項に注意してください。
-
path
:STORAGE TYPE
をVARCHAR
に、LENGTH
を255
に設定する必要があります。 -
filename
:STORAGE TYPE
をVARCHAR
に、LENGTH
を128
に設定する必要があります。 -
startdate
:STORAGE TYPE
をTIMESTAMP
に設定する必要があります。 -
enddate
:STORAGE TYPE
をTIMESTAMP
に設定する必要があります。ノート:
これらの標準列のいずれかをアセット記述子ファイルに追加しても、記憶域タイプがこのリストに指定されているものと一致しない場合には、AssetMakerでアセット・タイプを作成できません。
次に例を示します。
<PROPERTY NAME="path" DESCRIPTION="Path"> <STORAGE TYPE="VARCHAR" LENGTH="255"/> <INPUTFORM DESCRIPTION="Path" TYPE="TEXT" LENGTH="255"/> </PROPERTY>
例5-8 問合せを使用したドロップダウン・リストのオプションの取得
プロパティのINPUTFORM TYPE
がSELECT
の場合、WebCenter Sitesの選択フィールドのドロップダウン・リストには、OPTIONDESCRIPTIONS
パラメータで設定した項目の静的リスト、またはWebCenter Sitesでデータベース表から動的に取得した項目のリストが移入されます。
ドロップダウン・リストを表から動的に移入する選択フィールドの別の例は、imagefileフォームのMimetypeフィールドで、このフィールドでは、そのオプションに対するMimeType
表を問い合せます。コードは次のとおりです。
<PROPERTY NAME="mimetype" DESCRIPTION="Mimetype"> <STORAGE TYPE="VARCHAR" LENGTH="36"/> <INPUTFORM TYPE="SELECT" SOURCETYPE="TABLE" TABLENAME="mimetype" OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype" SQL="SELECT mimetype, description FROM mimetype WHERE keyword = 'image' AND isdefault = 'y'" INSTRUCTION="Add more options to mimetype table with isdefault=y and keyword=image"/> <SEARCHFORM DESCRIPTION="Mimetype" TYPE="SELECT" SOURCETYPE="TABLE" TABLENAME="mimetype" OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype" SQL="SELECT mimetype, description FROM mimetype WHERE keyword ='image' AND isdefault = 'y'"/> </PROPERTY>
この例は、データベース表からの項目を選択するだけではなく、追加のSQL問合せによってデータベース表から返される項目をさらに制限するフィールドも示しています。
例5-9 問合せを使用したラジオ・ボタンのラベルの取得
RADIO
をプロパティのINPUTFORM TYPE
として使用し、OPTIONDESCRIPTIONS
パラメータで設定した項目の静的リスト、またはWebCenter Sitesがデータベース表から動的に取得した項目のリストを使用して各ラジオ・ボタンにラベルを入力します。
次のサンプル・コードは、CreditCard
表から取得したラベルでラジオ・ボタンを作成します。
<PROPERTY NAME="sqlrbcc" DESCRIPTION="SQL RB Credit Card"> <STORAGE TYPE="VARCHAR" LENGTH="4"/> <INPUTFORM TYPE="RADIO" SOURCETYPE="TABLE" TABLENAME="CreditCard" RBVALUEKEY="ccvalue" RBDESCKEY="ccdescription" /> <SEARCHFORM TYPE="SELECT" DESCRIPTION="Credit Card:" SOURCETYPE="TABLE" TABLENAME="CreditCard" OPTIONVALUEKEY="ccvalue" OPTIONDESCKEY="ccdescription" SQL="SELECT ccvalue,ccdescription FROM CreditCard ORDER BY ccdescription"/> </PROPERTY>
例5-10 ELEMENT入力タイプを使用したフィールドの作成
必要に応じてフィールドをアセット・フォームに表示するには、ELEMENT
入力タイプを使用して、カスタム・コードをコールします。この方法は、アセット・フィールドの作成または標準アセット・フィールドの外観の変更に使用しますが、標準アセット・フィールドの記憶域タイプは変更できません。
ELEMENT
フィールドには、BLOB
など、どのような記憶域のタイプでも指定できます。フィールドの入力タイプをELEMENT
に設定した場合、WebCenter Sitesではそのフィールドを表示する際にカスタム・エレメントがコールされます。カスタム・エレメントは、次の場所のいずれかにあります。
ContentFormフォーム上のフィールドの場合:
OpenMarket/Xcelerate/AssetType/myAssetType/ContentForm/fieldname
ContentDetailsフォーム上のフィールドの場合:
OpenMarket/Xcelerate/AssetType/myAssetType/ContentDetails/fieldname
SearchFormフォーム上のフィールドの場合:
OpenMarket/Xcelerate/AssetType/myAssetType/SearchForm/fieldname
myAssetType
はカスタム・フィールドを作成しているアセット・タイプであり、fieldnameはカスタム・フィールドの名前であることに注意してください。
アセット記述子ファイルからの次の抜粋では、ELEMENT
入力タイプが使用されています。
<PROPERTY NAME="imagedate" DESCRIPTION="Image date"> <STORAGE TYPE="TIMESTAMP" LENGTH="8"/> <INPUTFORM TYPE="ELEMENT" WIDTH="24" MAXLENGTH="48" REQUIRED="NO" DEFAULT="" INSTRUCTION="Format: yyyy-mm-dd hh:mm"/> <SEARCHFORM DESCRIPTION="Image date" TYPE="ELEMENT" WIDTH="48" MAXLENGTH="128"/> </PROPERTY>
入力フォームではカスタマイズされたフィールドが使用されますが、検索フォームとコンテンツ詳細フォームではデフォルトのフィールドが表示されることに注意してください。
次のコードの抜粋は、記述子ファイルがコールするエレメントです。
<!-- OpenMarket/Xcelerate/AssetType/ImageFile/ContentForm/imagedate - - INPUT - Variables.AssetType Variables.fieldname Variables.fieldvalue- default or value for this field Variables.datatype - from STORAGE tag in ADF for this field Variables.helpimage - help icon Variables.alttext - help text from INPUT tag in ADF Other fields from input tag are in: Variables.assetmaker/property/Variables.fieldname/inputform/[tag attribute] - field name used in form should be Variables.AssetType:Variables.fieldname - OUTPUT - --> Enter date in the format yyyy-mm-dd hh:mm:ss<br/> <setvar NAME="inputfieldsize" VALUE="Variables.assetmaker/property/Variables.fieldname/inputform/width"/> <callelement NAME="OpenMarket/Xcelerate/Scripts/FormatDate"/> <INPUT TYPE="text" SIZE="Variables.inputfieldsize" NAME="Variables.AssetType:Variables.fieldname" VALUE="Variables.fieldvalue" REPLACEALL="Variables.inputfieldsize,Variables.fieldvalue,Variables.fieldname, Variables.AssetType"onChange="padDate(this.form.elements['Variables.AssetType: Variables.fieldname'].value,this,'Variables.AssetType:Variables.fieldname' );"/> </FTCS>
ELEMENT
入力タイプを使用して必要な数のフィールドをカスタマイズできますが、フィールドごとに個別のエレメントを記述する必要があります。
5.3.2 アセット記述子ファイルのWebCenter Sitesへのアップロード
アセット・タイプに対応したアセット記述子ファイルをコーディングした後、AssetMakerを使用してそれをアップロードして新しいエレメントを登録します。
5.3.4 アセット・タイプの構成
AssetMakerで新しいアセット・タイプが作成されると(「アセット記述子ファイルのWebCenter Sitesへのアップロード」)、アイコンと新しいアセット・タイプを構成するための管理フォームも作成され、「一般的な管理」ツリーの「管理」ノードに配置されます。
アセット・タイプを構成するには:
5.3.5 サイトでのアセット・タイプの有効化
新しいエレメントがアセット・タイプにレンダリングするフォームを調べる前に、作業するサイトでアセットを有効にし、それに対して簡単なスタート・メニュー・アイテムを作成する必要があります。
アセット・タイプを有効にして、それらにスタート・メニュー・アイテムを作成する手順は、『Oracle WebCenter Sitesの管理』を参照してください。
5.3.6 アセット記述子ファイルの微調整
新しいタイプの新しいアセットを作成し、「新規」、「編集」、「調査」および「検索」の各フォームを調べます。(このタイプの新しいアセットを作成するには、ツールバーの「新規」をクリックし、前述の手順で作成したスタート・メニュー・ショートカットを選択します。)
フォームを調べた後、アセット記述子ファイルを変更する必要が生じることがあります。
次のいずれかの項目を比較的少ないステップで変更できます。
-
アセット・タイプのWebCenter Sitesフォームに表示されるフィールドの並替え。
-
フィールド名(
PROPERTY DESCRIPTION
の値)の変更 -
INPUTFORM
、SEARCHFORM
、SEARCHRESULTS
いずれかの文におけるなんらかの変更
前述のリストになんらかの変更を加えるには、次のステップを実行します。
- Explorerを使用して、「アセット記述子ファイルのWebCenter Sitesへのアップロード」でアップロードしたアセット記述子ファイルを開いて変更します。
- 変更を保存します。
- アセット・タイプのエレメントを登録しなおします。
アセット・タイプのデータベース表の作成後は、そのスキーマを変更できません。スキーマの変更内容を次に示します。
-
列名(既存の
PROPERTY
文のNAME
パラメータ)の変更。 -
列のデータ型(既存の
PROPERTY
文のSTORAGE TYPE
またはLENGTH
)の変更。 -
新しいプロパティ(新しい
PROPERTY
文)の追加。これにより表に新しい列が追加されます。 -
プロパティ(既存の
PROPERTY
文)の削除。これにより表から列が削除されます。
したがって、前述のリストのいずれかの変更を実行するには、まずアセット・タイプを削除し、アセット記述子ファイルを変更し、アセット・タイプを再び作成します。
AssetStubElementCatalog
表からElementCatalog
表のアセット・タイプのディレクトリにコピーしたエレメントをカスタマイズした場合、変更内容はエレメントを再登録した時点で上書きされることに注意してください。
5.3.7 (オプション)アセット・タイプのエレメントのカスタマイズ
コンテンツ管理システムでアセット・タイプのエレメントをカスタマイズする方法を次に示します。
-
特定のアセット・タイプに固有な変更の場合、Explorerを使用して、そのアセット・タイプのエレメントを
ElementCatalog
表で変更します。PreUpdateエレメントとPostUpdateエレメントについてを参照してください。 -
すべてのタイプのアセットに同じ変更を加えるには、Explorerを使用して、
AssetStubElementCatalog
表のソース・エレメントを変更してから、アセット・タイプを作成します。その方法では、一度だけカスタマイズする必要があります。
ノート:
AssetStubElementCatalog
表のソース・エレメントのカスタマイズが必要な場合もありますが、サポートされていません。スタブ・エレメントをカスタマイズする場合には、次の条件で上書きされることを考慮してください。
-
スタブ・エレメントを変更するには、新規に加えた変更を必要とするすべてのアセット・エレメントを再登録する必要があります。アセット・エレメントを再登録すると、AssetMakerがエレメントの新規コピーを
AssetStubElementCatalog
表からElementCatalog
表内のアセット・タイプのディレクトリ(パスはElementCatalog\OpenMarket\Xcelerate\AssetType
)に移動し、そのプロセスで既存のエレメントを上書きします。AssetType
ディレクトリにあるカスタマイズしたエレメントは上書きされます。 -
WebCenter Sitesアップグレード・プロセスでは、通常、新しいソース・エレメントは
AssetStubElementCatalog
表にインストールされます。スタブ・エレメントのコードの変更は、アップグレード後にアセット・タイプを再登録すると上書きされます。
すべてのカスタマイズのトラッキングについては、常に細心の注意を払ってください。その方法で、必要に応じて作業を作成しなおすことができます。
変更可能なアセット・タイプ・エレメントの詳細は、「エレメント」を参照してください。
5.3.8 (オプション)サブタイプの追加
サブタイプとは、アセットがレンダリングされる方法に基づいたベーシック・アセット・タイプのサブクラスです。サブタイプを使用して、各公開ターゲットでそのタイプおよびサブタイプのアセットに対する個々のデフォルトの承認テンプレートを定義します。
次のステップを実行して、サブタイプを作成します。
5.3.9 (オプション)アソシエーション・フィールドの構成
アソシエーションとは、親子関係を説明するアセット・タイプ固有の関係、または個々のアセットやアセットのサブタイプ間のリンクのことです。アソシエーションは、「ベーシック・アセット・モデル」で説明されています。
テンプレート・エレメントをコーディングする際に、これらの関係の名前を使用して個々のアセットやサブタイプを特定するため、オブジェクト名でオブジェクトを参照する必要はありません。たとえば、イメージ・ファイル・アセットが記事アセットに関連付けられているサイトでは、テンプレート・エレメントは、アセットの名前ではなくアソシエーションの名前で関連付けられたイメージ・ファイル・アセットを抽出するようにコーディングされます。これにより、テンプレートをコーディングしなおす必要なく、記事に異なるイメージ・ファイルをテンプレートで表示できます。
アソシエーションは、アセット・フォームのフィールドとして表されます。これらのフィールドはアセット記述子ファイルからは作成されません。かわりに、「一般的な管理」ツリーの「管理」ノードの「アセットのアソシエーション」フォームを使用します。
アソシエーション・フィールドを追加するには:
5.3.10 (オプション)カテゴリの構成
カテゴリを使用して、サイト設計に対応した一部の表記規則に従ってアセット・タイプを編成します。すべてのベーシック・アセット・タイプに「カテゴリ」フィールド(列)がデフォルトで備わっていますが、それは必須フィールドではなく、使用する必要はありません。
カテゴリを追加するには:
作成したカテゴリは、新規アセットの作成またはアセットの編集時に「カテゴリ」フィールドのドロップダウン・リストに表示されます。
5.3.11 (条件付き) MIMEタイプの追加
MimeType
表には、MIMEタイプのフィールドに表示できるMIMEタイプ・コードが保持されています。MimeType
表をアセット記述子ファイルで参照する場合、アセットにMIMEタイプを追加する必要があります。たとえば、イメージファイルとスタイルシートの両方のアセット・タイプで、横に「参照」ボタンのあるフィールドをアップロードしてあるとします。アップロード・フィールドでファイルを選択したら、「MIMEタイプ」ドロップダウン・リストから選択したファイルのMIMEタイプを指定します。
イメージ・ファイル・アセット・タイプとスタイルシート・アセット・タイプの「MIMEタイプ」フィールドは、keyword
列に基づいたMIMEタイプ・コードのMimeType
表を問い合せます。
-
keyword
がstylesheet
に設定されているMIMEタイプ・コードが、「スタイルシート」フォームの「MIMEタイプ」フィールドのドロップダウン・リストに表示されます。 -
keyword
がimage
に設定されているMIMEタイプ・コードが、「イメージ・ファイル」フォームの「MIMEタイプ」フィールドのドロップダウン・リストに表示されます。
デフォルトでは、スタイルシートのファイルはCSS
ファイル、イメージファイルのファイルはGIF
ファイルまたはJPEG
ファイルになります。これらのアセット・タイプ、独自のカスタム・アセット・タイプ、またはその他の理由に対するMIMEタイプ・コードを追加できます。
「MIMEタイプ」ドロップダウン・リストにMIMEタイプを追加するには:
5.3.12 (オプション)索引付き検索を有効にするための検索エレメントの編集
WebCenter SitesとOracle WebCenter Sites: Engageには、標準検索と詳細検索を実行する独自のデータベースSQL検索メカニズムが備わっています。ただし、サポートされているサード・パーティの検索エンジンのいずれかに管理システムを設定することも可能です。構成情報は、『Oracle WebCenter Sitesの管理』を参照してください。
管理システムで検索エンジンを使用する場合、各アセットは作成後または編集後に保存される際に索引付けされます。デフォルトでは、デフォルト・フィールドのみが索引付けされます(リストは、「ベーシック・アセット・タイプのデータベース表のデフォルトの列」を参照してください)。アセット記述子ファイル内のPROPERTY
文で作成したフィールドを索引付けするには、次のエレメントでフィールド用の文を追加します。
-
OpenMarketXcelerate/AssetType/YourAssetType/IndexAdd.xml
-
OpenMarketXcelerate/AssetType/YourAssetType/IndexReplace.xml
アセット・タイプのカスタム・フィールドをこれらのエレメントに追加するには、WebCenter Sites INDEX
タグを使用してこれらのエレメント用の表記規則に従います。
5.3.13 アセット・タイプのアイコンの作成と割当て(Contributorインタフェースのみ)
Contributorインタフェースのナビゲーション・ツリー(「サイト・ツリー」、「コンテンツ・ツリー」および「ワーク」ツリー)でアセット・タイプを表すアイコンを作成して割り当てます。アイコンはイメージ・ファイルのいずれかのタイプに指定できます(PNG、GIFなど)。この例では、タイプPNGのイメージ・ファイルが作成されます。
5.3.14 アセット・タイプのテンプレートのコーディング
アセット・タイプの作成と該当するタイプのアセットに対応するテンプレートのコーディングは、反復プロセスです。
-
アセット・タイプを作成して、テンプレート作成前に該当するタイプのアセットに対応するテンプレートを作成する必要がありますが、データ設計の微調整の必要がある領域は、テンプレートをコーディングしてコードをテストした後にのみ明らかになる可能性が高いようです。
テンプレートおよびCSElementのエレメントのコーディングを参照してください。