CT-1500:プロファイル

Collaboration Toolsのプロファイルは、Collaboration ToolsのAPIとTcl/tkスクリプトを使用したカスタマイズ内容、パーサー、コンテンツタイプを特定するものです。

このチュートリアルでは、Collaboration Toolsライブラリ内でMicrosoft Officeドキュメントを管理するためのプロファイルを作成する方法を学習します。

コンテンツ定義は、Collaboration Toolsによって管理され、Organize browser内で表示可能な情報とデータのタイプに関する情報をカプセル化します。この情報には以下が含まれます:
  • コンテンツに関連付けられたメタデータ
  • メタデータ間の依存関係
  • コンテンツタイプとその他の間で作成可能な関係性

適切なコンテンツ定義フォーマットで記述できるものであれば、どのようなタイプの情報やファイルもCollaboration Toolsによって管理できます。

コンテンツ定義を作成するには、HyperWorks XMLスキーマに従ったシンプルな.xmlファイルを使用します。
注: Collaboration Toolsには、スキーマを検証するXMLパーサーがないため、作成時、コンテンツタイプのXML記述について外部での検証を可能にする設定が必要です。
  • ドキュメントのルートは、ContentType要素で、必須属性としてnameが付随しています。これにはメタデータのリストが含まれています。
  • 各メタデータには、nameとtypeという必須属性があります。他にも多くの属性がありますが(下記参照)、例を通じてこれらを確認してください。
  • “mandatory”属性がtrueの場合、コンテンツがライブラリに発行されるときに、この属性に値が設定されている必要があります。この場合、“defaultvalue”を設定することをお勧めします。
  • メタデータには、有効な値のセットを設定できます。
メタデータ属性
  • name(必須 - string): メタデータの名前。
  • type(必須 - string): メタデータの値タイプ。string、int、float、booleanのいずれかを指定する必要があります。
  • dname(boolean): trueの場合、メタデータは関連コンテンツの名前として使用されます。
    注: dnameは、コンテンツ定義あたり1つのメタデータに対してのみtrueにできます。
  • editable(boolean): trueの場合、メタデータは編集可能です。
  • displayable(boolean): trueの場合、メタデータは表示されます。
  • mandatory(boolean): trueの場合、コンテンツの作成時に、ユーザーがメタデータを入力する必要があります。
  • displayName(string): メタデータの表示名。
  • defaultvalue(string): メタデータのデフォルト値。
  • category(string): メタデータのカテゴリー。

パーサーは、ファイルがライブラリに追加されると、それらのファイルから自動的に情報を抽出します。抽出された情報は、コンテンツメタデータまたはインデックス付けされたメタデータとして保存され、Organize browserでコンテンツを検索する際に使用できます。検索は、メタデータベースまたは全文ベースで行うことができます。

librarypreferences.xmlファイルの更新

一般的なプロファイルは次のもので構成されています:Install.tcl:プロファイルのインストール用、libraryprofiles.xml:コンテンツ定義、パーサー、カスタム統合用.tclファイルのパスを含む、Mainフォルダー:カスタムスクリプト、コンテンツ定義用.xmlファイル、パーサー用.tclファイルを含む。

  1. この開始パッケージzipファイル(OfficeProfile_Raw.zip)をHyperWorks Enterpriseのhwe.zipディレクトリからコピーし、使いやすい場所に抽出します(例: C: \OfficeProfiles\)。開始パッケージには、編集する必要のない汎用的なinstall.tclファイルが含まれています。次に、libraryprofiles.xmlファイルを確認します。次の図は、一般的なlibraryprofile.xmlファイルを示しています。


    図 1.
  2. プロファイル名を変更するには、次のように行を編集します:


    図 2.
  3. 次のようにコンテンツ定義のパスを編集します:


    図 3.
  4. 次のようにカスタム統合情報を編集します。この情報は、Organize browserでカスタム操作を実行するために使用される適切なTclプロシージャを指すためにコアによって使用されます。


    図 4.
  5. パーサーのTclファイルを指す、parser.xmlファイルのパスを編集します。以降のステップでは、parser.xmlの内容を確認します。


    図 5.
  6. 次のようにpreferencesファイルのパスを編集します:


    図 6.
  7. 更新したlibrarypreferences.xmlファイルを保存します。

Officeドキュメントのコンテンツ定義の作成

ここでは、Officeドキュメントのコンテンツ定義を作成します。\Profile_Main\ContentDefinitionsフォルダーには、プロファイルのすべてのコンテンツ定義ファイルが含まれています。作成しているのは、このプロファイルの1つのコンテンツ定義のみであるため、開始パッケージには1つのコンテンツの.xmlファイルのみが含まれます。1つのプロファイルには複数のコンテンツ定義を含めることができます。

  1. Profile_Main\ContentDefintitionsにある.xmlファイルの名前をOfficeDocument.xmlに変更します。
  2. OfficeDocument.xmlファイルをテキストエディターで開いて、ファイルタイプを変更し、保存します。これにより、このコンテンツタイプにはWord、Excel、PowerPointの3つのファイルタイプが含まれていることがコアに通知されます。


    図 7.
  3. 次に、Tcl内のパーサーコードを指しているparser.xmlを見てみましょう。\Profiles_Main\parser.xmlをテキストエディターで開き、次のように情報を編集します。moduleは使用するTclパッケージをコアに通知し、namespaceはデータを解析するために使用するTcl名前空間をコアに通知します。


    図 8.

パーサーのTclコード

前のステップでは、適切なTclコードを指すようにparser.xmlファイルを編集しました。ここでは、パーサーのTclコードを確認します。ここでは、開始パッケージコードの編集は不要です。

\Profiles_Main\OfficeParser1.0\OfficeFileParser.tclをテキストエディターで開きます。
プロシージャ::custom::integration::office::officeFileParser::impl_canParseは、ファイルを解析できるかどうかをコアに通知します。そのファイルを解析できるかどうかを判断するための独自のロジックを追加できます。
注: 戻り値が0の場合は、そのファイルを解析できないことがコアに通知されます。この場合、そのファイルは一般ファイルとしてライブラリに追加されます。戻り値が1の場合は、そのファイルを解析できることがコアに通知されます。以下のコードでは、ファイルの拡張子をチェックして、拡張子が.docx.pptx、または.xlsxの場合は、戻り値を1に設定します。それ以外の場合は、0を返します。プロシージャ::custom::integration::office::officeFileParser::impl_Parseは、情報を解析して、解析した情報を、ライブラリに追加されるコンテンツに関するメタデータとして設定します。以下のコードでは、ParsedDocument_addMetadataというAPIを使用して、表示名がファイル名として設定されます。詳細については、Collaboration ToolsのAPIドキュメントをご参照ください。


図 9.

Organizeブラウザのカスタマイズ

ここでは、Organize browserのカスタマイズに取り組みます。プロファイルを介して、独自のカスタムコンテキストメニューやツールバーアイコンを追加できるほか、ライフサイクル操作の前または後に実行されるカスタムプロシージャを用意することができます。例えば、コンテンツがチェックインされた後に“Check in successful”というメッセージを表示する場合は、チェックイン後の呼び出しの一部としてこのメッセージを追加できます。詳細については、Collaboration Toolsのプロファイルに関するドキュメントをご参照ください。

この演習では、既存のコンテキストメニュープロシージャを編集して、Organize browserからクリックされたときにメッセージが表示されるようにします。

  1. Profiles_Main\OfficeIntegration1.0\officeIntegration.tclファイルをテキストエディターで開きます。
  2. プロシージャprocedure ::custom::integration::office::CtxMenuAddCustomItemsを検索します。コアは、このプロシージャを参照してカスタムコンテキストメニューを追加します。
  3. 以下のように次のコマンド-command "::custom::integration::office::ShowMessage $objを追加します:


    図 10.
    カスタムコンテキストメニューがクリックされた後のアクションとして、別のプロシージャ::custom::integration::office::ShowMessageを呼び出していることに注目してください。次のコードをofficeIntegration.tclファイルにコピーします。以下の行は、.tclファイル内のどこに貼り付けてもかまいません。


    図 11.

プロファイルのインストール

  1. プロファイルをインストールするには、C:\OfficeProfile\install.tclを実行します。
    インストールが完了したら、TclコマンドウィンドウにInstallation Completeというメッセージが表示されます。
  2. プロファイルのインストールが完了した後に、セッションを再開します。

Officeプロファイルを使用した新規ライブラリの作成

  1. Organize browserから、Repository typeとしてPersonalを選択します。
  2. Libraryからコンボボックスを選択して、New Libraryを選択します。
    New Libraryダイアログが開きます。
  3. Nameを入力して、このライブラリの作成場所のパスを選択します。
  4. Profile欄をクリックし、インストール済みリストを表示して、Office Profileを選択します。Workspaceはデフォルトのままにします。
  5. OKをクリックして、新しいライブラリを作成します。

Officeライブラリへの新規コンテンツの追加

前のステップでは、Officeプロファイルを使用して新しいライブラリを作成しました。ここでは、このライブラリにPowerPointドキュメントを追加します。

  1. New ContentツールバーからOfficeDocumentを選択します。
    New Office Documentダイアログが開きます。
  2. Documents行のValue領域をクリックし、File Browserをクリックしてブラウズし、Officeファイルを選択します。
  3. Openをクリックします。File Nameは自動的に入力されます。
  4. File Type行で、適切なファイルタイプを選択します。
    前に作成したパーサーに対する拡張機能として、この値を自動的に設定するようにこのパーサーを更新できます。
  5. SaveをクリックしてPowerPointファイルをライブラリに追加します。


    図 12.

カスタムコンテキストメニューの表示

ここでは、新しいカスタムコンテキストメニューを追加する操作を確認します。

  1. 以前にライブラリに追加したPowerPointFileコンテンツを選択します。
  2. これを右クリックして、コンテキストメニューを表示します。
    使用可能なコンテキストメニューのリストの一番上に、カスタムメニューが表示されます。
  3. カスタムコンテキストメニューを選択して、ファイル名を表示します。
  4. OKをクリックしてOrganize browserに戻ります。

まとめ

このチュートリアルでは、新しいプロファイルを作成して、新しいコンテンツ定義を追加し、新しいパーサーを追加して、ファイル名を表示するようにコンテキストメニューをカスタマイズしました。

Collaboration Toolsのプロファイルを使用して、さらに多くのことを実行できます。詳細については、Collaboration ToolsのプロファイルとAPIに関するドキュメントをご参照ください。