Metadata Designer

Ooyala Flexを非常に優れたものとするコンポーネントのひとつが、Metadata Frameworkです。Ooyala FlexのMetadata Frameworkを使用すると、ユーザーは幅広いフィールドタイプを含むデータモデル(スキーマ)を定義することができます。実際、メタデータスキーマは、関連フィールドの単純なコレクションです。

Metadata Designerは、メタデータモデルを視覚的にデザインできるデータモデリングデザインツールです。実行にHTML5を使用しているため、読み込みもアクセスも高速です。

Ooyala Flex Metadata Frameworkの機能を以下にまとめます。

  • コンテナフィールドタイプの定義が可能であり、フィールドを階層的にネストできる
  • アクセスコントロールをフィールドごとに割り当て可能
  • フィールドに検索可能のマークを付けることができる(デフォルトではマークなし)
  • フィールドに編集可能のマークを付けることができる(デフォルトではマークあり)
  • 一部のフィールドではフォーマットルールをサポート
  • 一部のフィールドでは検証ルールをサポート
  • 数値タイプのフィールドでは単位をサポート
  • フィールドは拡張可能であり、新規のフィールドタイプも作成可能
  • フィールドはさまざまなフォームオプションをサポート(選択、ラジオボタンなど)
  • フィールドは、同じフィールドのインスタンスを複数作成できるよう多重性をサポート(1~*、1、0~*、0~1)
  • フィールドにはデフォルト値を割り当て可能
  • オブジェクトフィールドを使用して、表示されている他のOoyala Flexオブジェクトにリンクできる
  • Ooyala Flexがスキーマにインデックスを付けるため、Ooyala Flexのテキスト検索で検索可能

メタデータスキーマはオブジェクトタイプと関連付けることができます。いったんオブジェクトタイプと関連付けると、新規オブジェクトをインスタンス生成するたびに、メタデータの新規インスタンスがインスタンス生成され、そのオブジェクトと関連付けられます。実際、メタデータスキーマを作成してそれをOoyala Flexオブジェクトタイプと関連付けることで、データをモデル化して独自のオブジェクトタイプを作成したり、既存のOoyala Flexオブジェクトを(バリアント作成を通じて)カスタマイズしたりすることができます。

メタデータスキーマとインスタンス

Ooyala Flexのメタデータスキーマを完全に理解するには、メタデータスキーマとメタデータインスタンスの違いを知ることが大切です。

「メタデータ定義」と「メタデータスキーマ」は置き換えて使うことのできる用語であり、同じ意味を持ちます。

注記:メタデータ定義とメタデータスキーマは置き換えて使うことのできる用語であり、同じ意味を持ちます。

メタデータスキーマ(構造)

メタデータスキーマは、フィールドタイプ、フィールド名、アクセス、検証ルール、階層などデータモデルの構造を定義します。スキーマインスタンスごとに値が異なるため、このモデルは値を含みません。

スキーマ定義はOoyala Flexオブジェクトのタイプのひとつであり、作成および編集が可能です。メタデータスキーマには以下のルールが適用されます。

  • Ooyala Flexオブジェクトタイプに関連付けられている必要がある。
  • メタデータをサポートする新規のOoyala Flexオブジェクトがインスタンス生成されると、そのオブジェクトに対して新規のメタデータインスタンスが自動的に作成される。
  • フィールドが1つ以上存在する必要がある。

メタデータスキーマを保存すると、変更されたスキーマで定義されている新しいデータモデルが関連するスキーマインスタンスすべてに適用されるよう、毎回マージが実行されます。フィールドを削除するとデータが失われるため、アクションはよく考えてから行ってください。

メタデータインスタンス(スキーマのインスタンス)

メタデータインスタンスとは、メタデータスキーマのインスタンスのことです。メタデータスキーマに関連付けられたOoyala Flexオブジェクトが作成されると、メタデータインスタンスが作成されます。新規メタデータインスタンスが作成されると、そのスキーマに関連付けられているフィールドはすべてメタデータインスタンス内のフィールドインスタンスに変換されます。フィールドインスタンスはオリジナルのフィールドを参照し、さらに値を取得および保存することも可能にします。

最初はメタデータスキーマとメタデータインスタンスの違いを把握するのが難しいかもしれません。メタデータスキーマをアンケートのテンプレートだと考えてみてください。さまざまなフィールドタイプ(複数選択、はい/いいえ、説明など)の多様な質問で構成されています。このテンプレートはアンケートの構造やプロパティを定義しますが、それ自体は回答ではありません。1つのアンケートテンプレートは、回答済みアンケートという形式のあらゆる種類の回答の作成に使用することができます。テンプレートから作成された回答済みのアンケートが「インスタンス」、オリジナルのテンプレートが「スキーマ」です。つまり、メタデータスキーマはメタデータインスタンスの構造を定義しますが、値は定義しないのです。メタデータインスタンスは、独自の値のコレクションを持つメタデータスキーマの1つのインスタンスです。

以下の図は、上記のメタデータスキーマのスクリーンショットに基づくメタデータインスタンスのスクリーンショットです。上のスキーマでは単にデータモデルが定義されているだけであるのに対し、値を入れられるフィールドがあることがわかります。

メタデータフィールド

前述したとおり、メタデータスキーマは関連するフィールドのコレクションです。データを有意義な方法でモデリングできるよう、Ooyala Flexは多数のフィールドタイプをサポートしています。メタデータフィールドタイプの全一覧は、メタデータフィールドタイプセクションに掲載されています。

メタデータフィールドタイプはプラガブルであり、Ooyala FlexのAPIを使用すると新規タイプを作成できます。

前述したとおり、メタデータスキーマにはフィールドが含まれます。このセクションでは、新規フィールドの作成および構成方法や、利用可能なフィールドタイプおよびオプションについて説明します。

フィールドタイプ

メタデータフィールドタイプは、大きく3つのグループに分けられます。

  • ベーシック: 構造またはコンテナベース(または混合タイプ)に分類されるフィールドであり、追加フィールドを持つことができる。
  • プリミティブ:floatやint、日付のような一般的で「プリミティブ」なデータタイプ。データの基本的な構成要素となります。
  • オブジェクト:既存のOoyala Flexオブジェクトを参照して表示するフィールドタイプ。

注記:最も興味深いフィールドタイプはオブジェクトフィールドタイプでしょう。このフィールドを使うと、Ooyala Flexシステム内の他のオブジェクトを参照することができます。

基本的なフィールド構成

ほとんどのフィールドタイプで次のオプションを利用することができます。

  • 名前:メタデータスキーマ内で一意の名前。
  • 表示名:ユーザーインターフェースでの表示名を指定するために使用。デフォルトでは設定済みの名前が使用されます。
  • 説明:オプションで説明の割り当てが可能。
  • デフォルト値:一部のフィールドではデフォルト値をサポート。あるフィールドが初めてインスタンス生成されたときに、Ooyala Flexが初期値を設定するために使用します。これをサポートするフィールドタイプの例としては、intが挙げられます。
  • 検索可能:そのフィールドが検索フォームの一部として、またはAPI経由で検索可能かどうかを定義するオプション。
  • 編集可能:そのフィールドが編集可能か読み込み専用かを定義するオプション。

フォーム:このフィールドを編集する際に使用するユーザーインターフェースフォームフィールド(日付、テキストボックス、テキストエリアなど)。

名前および表示名フィールドには以下の制限があるので注意してください。

  • いずれも必須
  • フィールド名および表示名は50文字を超えてはならない
  • フィールド名に使用できるのは小文字、数字、ハイフンのみ。例:「a-field-name」
  • フィールド名は現在のメタデータ定義において一意である必要がある。つまり、同じ名前のフィールドを2つ作成することはできない。

高度なフィールド構成

多重性

多重性は、このフィールドタイプのインスタンスを複数作成することを可能にします。デフォルトでは、フィールドが定義されるとスキーマインスタンス1つにつきフィールドインスタンスが1つ作成されます。多重性を設定すると、1つのフィールドに対して作成できるインスタンスの数を制御することができます。例としては以下などが挙げられます。

1~*(1つ以上)

1(そのフィールドの1つのみ)

0~1(0または1つ)

0~*(0以上)

相互依存フィールド

Ooyala FlexのMetadata Frameworkが提供するもう1つの高度な機能は、相互依存フィールドのサポートです。相互依存フィールドサポートが使用されていない場合、メタデータフィールドはすべて独立して動作し、同じスキーマ内の他のフィールドの状態について情報を得ることはできません。相互依存フィールドサポートを使用すると、メタデータスキーマの作成者が、あるフィールドから生成されたイベントと他のフィールドへの更新をリンクすることが可能になります。この機能は、同じメタデータスキーマ内の他のフィールドに加えられた変更に基づき、効率よくフィールドの状態を変更できるようにします。この機能を使えば、実行されたユーザーアクションに基づいてフォームフィールドの状態を変更したり、フィールドの表示/非表示を切り替えたりすることができます。こうすることでフォームをより動的で直観的にすることができます。

権限オプション

Ooyala FlexのMetadata Frameworkは、フィールドごとのアクセスコントロールをサポートします。つまり、あるスキーマインスタンスの特定のフィールドの閲覧や編集を、どのユーザーグループに許可するか指定できます。利用できるオプションは次のとおりです。

  • 権限:このチェックボックスがオンになっている場合、このフィールドに権限が適用されている
  • アクセス:選択したユーザーグループがこのフィールドにアクセスできる
  • 読み込み:選択したユーザーグループが、このフィールドにアクセスして読み込みできる(編集は不可)
  • 編集:選択したユーザーグループが、このフィールドにアクセスして編集できる(読み込みも可能)

メタデータスキーマへのアクセスコントロールは、階層的に適用されます。つまり、メタデータモデルツリーの上層部についてユーザーのアクセスをブロックすると、その階層の下にある分枝も表示されなくなるのです。

メタデータスキーマの各フィールドにアクセス制御を許可するなど行き過ぎのようにも思えますが、実際には非常に有効です。組織の別の部署に存在する異なるユーザーグループに同じメタデータインスタンスが表示されることは、しばしばあります。あるユーザーグループにとっては一部のフィールドが該当しないことも考えられます。そこでそれらを非表示にすると、個人情報を保護したり、ユーザーインターフェースの混乱を回避したりできるのです。各フィールドにアクセスコントロールを適用した場合の実質的な結果は、ユーザーが自分に関連するフィールドのみしか表示および編集できなくなるということです。

フィールド検証オプション

検証オプションを使用すると、フィールドに入力した値の検証方法を定義できます。

以下のフィールドが適用されます。

  • 検証:このチェックボックスがオンになっている場合、検証ルールが適用されています。次のフィールドも使用できます。
  • 必須:最も単純なルールであり、値が入力されているフィールドのみを受け付けるということを意味します。
  • 説明:検証ルールの説明を提供するためのオプションです。ユーザーがフォームフィールドに入力しているときに、検証ルールを確実に理解してもらう目的で表示することができます。
  • 最大文字数:これも単純なルールです。設定すると、入力タイプに最大テキスト長の制限が課せられます。
  • スクリプト:このフィールドを使うと、ルールをスクリプトと照らし合わせて検証できます。スクリプトの詳細については、APIガイドをご覧ください。
  • クラス名:フィールドへの入力を検証する際に用いるクラス名の指定を可能にする、開発者用の高度なフィールドです。

フォームタイプ

新規メタデータフィールドを作成する際、フォームタイプを選択するオプションが提示されます。フォームタイプは、Ooyala Flex Consoleのメタデータフィールドに値を入力する際に、ユーザーに提示される入力フィールドタイプを定義します。提示されるフォームタイプはフィールドタイプによって異なります。たとえばタイプがテキストのフィールドの場合、ユーザーには標準の1行テキスト入力フィールドか、複数行のテキストエリアフィールドが提示されます。

サポートされるフォームタイプは次のとおりです。

テキスト:1行のテキスト

テキストエリア:複数行のテキスト

パスワード:パスワード入力ボックス(値はユーザーに非表示)

ラジオボタン:ユーザーが既定の選択肢から1つのみを選択できるようにする、グラフィカルユーザーインターフェース要素のタイプ

チェックボックス:ユーザーが二値選択(相互排他的な2つの選択肢のうち1つを選択)できるようにするグラフィカルユーザーインターフェース要素

選択:選択可能な値が1つ以上存在する選択ボックス。選択肢を1つ選ぶタイプの場合はドロップダウンが、選択肢を複数選ぶタイプの場合は複数選択ボックスが表示されます。

日付:日付の選択のみをサポートする日付ポップアップ

時刻:日付と時刻の選択をサポートする時刻ポップアップ

色:色選択のポップアップ

先行入力:先行入力をサポートするフィールド。ユーザーが入力し始めた単語またはフレーズに一致する値のリストが表示されます。

先行入力フォームタイプは、オプションが非常に多いオプションフィールドタイプでとても役立ちます。

テキストフィールド

テキストフィールドはテキストの文字列です。

以下にテキストフィールドタイプの例を示します。

  • 文字列:1行のテキスト
  • パスワード:ユーザーに値が表示されない1行のテキスト
  • テキスト:1行以上のテキスト

数値フィールド

以下のオプションは数値フィールドタイプに関連するものであり、Ooyala Flex Metadata Frameworkのフィールドの機能をさらに拡張してくれます。数値フィールドタイプの例としては、intやfloatが挙げられます。

  • 単位:数値フィールドタイプ(int、double)では単位を利用できます。例としてはビットレート、ビット、バイトなどが挙げられます。
  • フォーマット:数値フィールドタイプでは、ユーザーへの数値表示を制御するための方法としてフォーマットが利用できます。
  • 形式説明:ユーザーが、指定された形式ルールについての説明的な情報を入力できるオプションフィールドです。
  • 生成値:このオプションが選択されている場合、フィールドのインスタンス生成を受けて値が自動生成されます。
  • 値ジェネレーター:ユーザーが値の自動生成手段を選択できるよう、オプションが表示されます。

注記:単位タイプはプラガブルであり、Ooyala FlexのAPIを使用すると新規タイプを作成できます。

数値フィールドタイプの例としては、以下が挙げられます。

  • int
  • long
  • ブール値
  • float
  • double

日付フィールド

時間ベースの情報を取得するために使用します。フィールドタイプは主に2つあります。

  • 日付:年月日を取得
  • 時刻:年月日に加え、時間、分、秒を取得

日付フィールドタイプはフォーマットもサポートします。

Complexフィールド

Complexフィールドは特殊なタイプのフィールドで、他のフィールドのネストを可能にし、階層データ構造を作ります。つまり、Complexフィールドは他のメタデータフィールドのコンテナの役割を果たすのです。既存のComplexフィールドにComplexフィールドを追加すると、フィールドを複数階層ネストし、優れた説明データモデルを作成することができます。たとえば「フィルム-詳細」というComplexフィールドを作成し、そこにフィルムを説明するキーフィールドを含めることができるのです。

Complexフィールド定義:

Complexフィールドのインスタンス:

色フィールド

色フィールドが1つあります。このフィールドでは、色選択ポップアップで色を指定できます。色フィールドは、特にプレイヤー定義などで見た目に関する情報を取得する際に非常に役立つことがあります。

スクリプトフィールド

スクリプトフィールドが1つあります。このフィールドを使用すると、スクリプトを指定できます。スクリプトフィールドは、特に構成やランタイム処理に関する情報を取得する際に非常に役立つことがあります。

スクリプトフィールド定義:

スクリプトフィールドのインスタンス:

オプションフィールド

オプションフィールドは、フィールド作成時に指定したオプションのセットリストから値を選択することを可能にします。オプションフィールドには次の2タイプがあります。

  • シングルオプションフィールド:シングルオプションフィールドでは、オプションのセットリストからオプションを1つだけ選択できます。
  • 複数オプションフィールド:複数オプションフィールドでは、オプションのセットリストからオプションを1つ以上選択できます。

オプションタイプフィールドを定義する際、オプション値を入力することができます。値はいずれも名前と表示名で構成されます。さらにデフォルト値を選択することも可能です。この値は、このタイプのフィールドが初めてインスタンス生成された際にデフォルトで選択されます。各オプション値の順序は、フィールドを初めて定義する際に設定できます。複数オプションフィールドを作成する際、デフォルト値を1つ以上選択できます。シングルオプションタイプでは、デフォルト値を1つしか作成できません。

シングルオプションフィールド定義:

シングルオプションフィールドのインスタンス:

複数オプションフィールド定義:

複数オプションフィールドのインスタンス:

バッキングストアフィールド

オプションタイプフィールドを作成する際、ユーザーは多くの場合、たとえば「赤」「緑」「黄」のようにオプションの静的リストを入力するよう求められます。ではオプションのリストが非常に大きいか、定期的に変更される場合どうすればよいでしょうか。異なるシステムに保存されているため、ユーザーが値を知らない場合はどうすべきでしょうか。バッキングストアフィールドのサポートは、オプションフィールドタイプの高度な機能です。この機能は、オプションタイプフィールドが外部ソースからオプション値を動的に読み込むよう構成できるようにすることで問題の解決を図ります。この機能には、いくつか大きな利点があります。

  • データ整合性:値が外部システム(著作権管理システムなど)に保存されている場合、オプションを動的に読み込むことでデータを常に最新のものにしておくことができます。
  • 統合の簡略化:このアプローチを使えば、外部システムとOoyala Flexとの間でのデータ移行を回避できます。必要に応じてソースからデータを検索するため、データ移行をする必要も、バッチスクリプトや時間指定更新に依存する必要もありません。

インテリジェントワークフロー:多くの場合、ワークフローの決定ノードはメタデータフィールド内に保持されている値で駆動されます(つまり、コンテンツタイプが "Movie" ならiTunesに配信するなど)。そのため、データ移行をすることなく、他のシステムに格納されているデータでワークフローを調整できるのです。

オプションフィールドを構成してバッキングストアを有効化するには、「バッキングストア」チェックボックスをオンにします。次に、以下からバッキングストアタイプを選択します。

  • ファイル:フラットファイルから値を読み込みます。
  • データベース:外部データベースから値を読み込みます。

次は識別子を入力します。識別子は、Hibernateクエリ通知を使用して下層のデータストアにマップされるテキスト文字列クエリです。

注記:Hibernateは、一般的なオブジェクト関係データマッピングフレームワークです。このユーザーガイドでは説明を割愛します。詳細についてはAPIガイドをご覧ください。

オブジェクトフィールド

オブジェクトフィールドは、ユーザーが既存のOoyala Flexオブジェクトを参照することを可能にします。たとえば、他のアセットやユーザーを参照するフィールドを作成できるのです。メタデータスキーマがシステム内の他のOoyala Flexオブジェクトタイプを参照できるようになるため、この概念は非常に有効です。

オブジェクトフィールドには、主に2つのタイプがあります。

  • オブジェクト:特定のタイプのOoyala Flexオブジェクトの参照を定義することを可能にします。
  • アセット:特定のタイプのOoyala Flexアセットの参照を定義することを可能にします。

メタデータインスタンスオブジェクトフィールドでオブジェクトをアクセス可能にすると、Ooyala Flexはユーザーが見ることのできるオブジェクトのみを表示します。

メタデータスキーマで定義されるユーザーオブジェクトタイプについては以下をご覧ください。

メタデータインスタンスでこれがどのように表示されるかについては以下をご覧ください。

key-value変数

Metadata Designerでは、メタデータスキーマにkey-value変数を追加することができます。たとえば、アセットと関連付けられているメタデータがある場合、役者-役名のkey-valueフィールドを持つことができます。映画に出演している役者の名前と、その役者が演じた役名を、ペアとして同じフィールドに持つことができるのです。

key-value定義:

key-valueフィールドのインスタンス:

内部スキーマタイプ

Ooyala FlexのMetadata Frameworkが非常に優秀であること、そして実は単体でデータモデリングツールの役割を果たしているということを理解していただけたかと思います。今ならOoyala Flexの要素がMetadata Frameworkを内部で使用し、高度な機能をサポートしていると聞いても驚かないでしょう。これを利用している領域の例としては、以下が挙げられます。

  • プロファイル:トランスコードはトランスコードルールに関する情報、検証プロファイルはメディア検証プロファイルに関する情報の保存にOoyala FlexのMetadata Frameworkを活用しています。各プロファイルには、それぞれ独自の内部スキーマがあります。
  • アクション:Ooyala Flexアクションの構成情報は、Ooyala FlexのMetadata Frameworkで管理されています。各アクションには、それぞれ独自の内部スキーマがあります。
  • リソース:Ooyala Flexリソースの構成情報は、Ooyala FlexのMetadata Frameworkで管理されています。各リソースタイプには、それぞれ独自の内部スキーマがあります。

Metadata Designerへのアクセス

Coreには、Metadata Designerにアクセスするためのエントリーポイントが3つあります。その条件を次に示します。

  • ツールバー経由:新規オプションを選択した後、メタデータ定義を選択します。ここから新規メタデータ定義を作成することができます。これがMetadata Designerへの基本的なアクセス方法です。
  • 検索:特定のメタデータ定義を検索することができます。検索結果からメタデータ定義を選択すると、Metadata Designerに移動します。
  • バリアント経由:特定のメタデータ定義に関連付けられているバリアントを選択すると、メタデータ定義にアクセスできます。

Metadata Designerの場合、2つのオプションが表示されます。

  • 新規メタデータスキーマの作成:このオプションでは、新規メタデータスキーマを作成することができます。
  • メタデータスキーマのインポート:このオプションでは、既存のメタデータスキーマをインポートできます。このオプションをクリックすると、アップロードウィンドウにメタデータスキーマファイルをドロップすることができます。

自分で作成した既存のメタデータスキーマのリストも表示されます。リスト内のメタデータスキーマをクリックすると、スキーマを開いて編集することができます。

既存の定義の検索

既存の定義のリストの上にある検索バーを使用すると、既存のメタデータ定義を検索することができます。

定義の検索を使用するには、次のステップに従います。

1) メタデータ定義のリストの右上にある検索バーの内側でクリックします。

2) 既存のメタデータ定義の名前を入力します。

3) リストにフィルターが適用され、その特定の名前を持つメタデータ定義のみが表示されます。

フィルタリング

既存のメタデータ定義のリストにフィルターを適用することもできます。フィルターの条件は以下のとおりです。

  • アカウント
  • 作成日
  • 有効
  • ロック
  • 変更日
  • 名前

構成タブ

リストにある既存のメタデータ定義をクリックすると、画面の右上に構成パネルが表示されます。

このパネルにはさまざまなタブがあり、メタデータ定義に関する情報の閲覧や、メタデータ定義に対するアクションの実行に役立ちます。

タブを以下に示します。

情報タブ:定義のタイトル、ID、UUID、所有者、作成元のアカウント、アクセス権付与、作成日、最終変更日など、メタデータ定義に関する情報を表示します。

添付ファイルタブ:メタデータ定義にドキュメントなどのファイルを添付することができます。このタブに既存の添付ファイルがあれば、それもリストされます。

添付ファイルをアップロードするには、次のステップに従います。

1) 添付ファイルをアップロードリンクをクリックします。

2) 添付ファイルをアップロードポップアップで、アップロードエリアにファイルをドラッグするか、アップロードエリア内をクリックしてファイルを手動で検索します。

3) アップロードをクリックすると、ファイルがメタデータ定義に添付されます。

コメントタブ:自分のメタデータ定義にコメントを投稿できます。

メタデータ定義にコメントを投稿するには、次のステップに従います。

1) コメントを挿入ボックスにコメントを入力します。

2) +アイコンをクリックします。

3) コメントが下に投稿されます。

昇順/降順アイコンをクリックすると、コメントの表示順を変更することができます。このアイコンをクリックすると、コメントが昇順または降順で表示されます。

非常に長いコメントのリストから特定のコメントを探す必要がある場合、そのコメントに関連するキーワードまたはフレーズを入力します。検索アイコンをクリックすると、そのコメントが下に表示されます。

日付やユーザーでコメントのリストにフィルターを適用することもできます。

履歴タブ:メタデータ定義の履歴を閲覧できます。

参照タブ:メタデータ定義が参照しているオブジェクトすべてを表示します。たとえばバリアントなどです。

構成タブパネルを閉じるには、閉じるアイコンをクリックします。

新規メタデータ定義の作成

1) Ooyala Flex Consoleのツールバーで、新規オプションをクリックします。

2) ドロップダウンからメタデータ定義を選択します。

3) ポップアップウィンドウでMetadata Designerが開きます。

4) 名前フィールドに定義の名前を入力します。

5) アクセス権付与フィールドでドロップダウンからワークスペースを選択します。

6) 説明フィールドに説明をオプションで入力します。

既存のメタデータ定義の編集

既存のメタデータスキーマを編集するには、次のステップに従います。

1) Metadata Designerのランディングページで、リストにある既存のスキーマをクリックします。

2) 右パネルの下にある編集オプションをクリックします。

3) スキーマが開き、編集可能になります。

スキーマのインポート

別の場所に保存してある既存のメタデータスキーマをインポートしたい場合があります。これを実行するには、次のステップに従います。

1) メタデータスキーマのインポートオプションをクリックします。

2) .XMLファイルを探し、アップロードエリアにドラッグします。

3) アップロードをクリックします。

アクションの実行

既存のメタデータ定義に対して、

開く、エクスポート、コピー、有効化などのアクションを実行できます。

これを実行するには、次のステップに従います。

1) リストにある既存のメタデータ定義にカーソルを合わせ、省略記号をクリックします。

2) ドロップダウンメニューからオプションを1つ選択し、アクションを実行します。

Metadata Designerのレイアウト

メタデータパネル

メタデータパネルはDesignerの左側にあります。メタデータフィールドタイプへのアクセスと、定義の作成を可能にします。このパネルには、メタデータフィールドタイプセクションにリストされているタイプすべてのボタンがあり、次のように分類されています。

ベーシック: 構造またはコンテナベース(または混合タイプ)に分類され、追加フィールドを持つことができるフィールド。

プリミティブ:floatやint、日付のような一般的で「プリミティブ」なデータタイプ。データの基本的な構成要素となります。

オブジェクト:既存のOoyala Flexオブジェクトへの参照を表すフィールドタイプ。

地域:地域、国、市町村など、位置に関連するフィールド。

リソース:画像、ファイル、URL、メール、VFSロケーションなど。

Ooyala FlexのMetadata Frameworkは、APIを使って拡張可能です。そのためAPI経由で作成された他のフィールドタイプが存在する可能性もあります。

メタデータパネルでのアイテム表示モードは2つあります。

  • リストビュー:リストビューでは、アイテムはその名前だけが示されたリスト形式で表示されます。
  • アイコンビュー:アイコンビューでは、アイテムはメタデータキャンバスに配置可能なアイコン付きのタイルとして表示されます。

リストビューとアイコンビューを切り替えるには、切り替えアイコンをクリックします。

メタデータキャンバス

キャンバスはメタデータ定義を設計するためのエリアです。このキャンバスは、折り畳み可能なツリービューでメタデータモデルのグラフィックビューを表示します。

構成パネル

構成パネルには、選択したメタデータフィールド(アイテム)の追加情報および構成オプションが表示されます。アイテムを選択していない場合、以下のとおりメタデータ定義の情報が表示されます。

フィールド構成

キャンバス内のフィールドをクリックすると、構成パネルにフィールド構成が読み込まれます。

構成パネルに表示される構成オプションは、キャンバスで選択したメタデータフィールドによって異なります。

次のセクションでは、利用可能なオプションについて説明します。

表示名

フィールドの表示名。

名前

フィールドの名前。

説明

フィールドの説明。

説明フィールドのインスタンスは、アイコンで表示されます。このアイコンにカーソルを合わせると、説明が表示されます。

編集可能

他のユーザーにこのフィールドの編集を許可するかどうかを選択することができます。

検索可能

他のユーザーに、検索フォームを使ったこのフィールドの検索を許可するかどうかを選択することができます。

コメント可能

フィールドへのコメントを許可するかどうかを選択することができます。

フォームタイプ

フォームタイプはほとんどのフィールドタイプに適用されます。利用可能なフォームタイプは、メタデータフィールドタイプによって異なります。

多重性タイプ

多重性タイプはほとんどのフィールドタイプに適用され、このフィールドタイプのインスタンスをいくつまで作成できるかを示します。

検証オプション

検証オプションを使用すると、フィールドに入力した値の検証方法を定義できます。以下のフィールドが適用されます。

検証:このチェックボックスがオンになっている場合、検証ルールが適用されています。次のフィールドも使用できます。

必須:最も単純なルールであり、値が入力されているフィールドのみを受け付けるということを意味します。

説明:検証ルールの説明を提供するためのオプションです。ユーザーがフォームフィールドに入力しているときに、検証ルールを確実に理解してもらう目的で表示することができます。

最大文字数:これも単純なルールです。設定すると、入力タイプに最大テキスト長の制限が課せられます。

スクリプト:このフィールドを使うと、ルールをスクリプトと照らし合わせて検証できます。スクリプトに関する詳細な情報については、APIガイドをご覧ください。

スクリプトフィールドは、メタデータフィールド値を検証するために使用される式スクリプトを期待します。

スクリプトのコンテキストでは、以下のオブジェクトがアクセス可能です。

  • 値:変数インスタンスに関連付けられるRaw値。
  • 変数:変数オブジェクト。

変数インスタンス:変数インスタンスオブジェクト。

注記:式スクリプトの形式に問題がある場合、フォントが赤で表示されます。

クラス名:フィールドへの入力を検証する際に用いるクラス名の指定を可能にする、開発者用の高度なフィールドです。クラス名の検証に関する詳細な情報については、APIガイドをご覧ください。

オプション値

このオプションタイプでは、シングルオプションおよび複数オプションフィールドタイプ用のオプション値を特定することができます。

オプションパネルは、以下の編集機能を提供します。

新規オプション値の追加

新規オプション値を追加するには、表示名ボックスに値を入力し、緑の十字ボタンを押します。

デフォルト値の選択

複数オプションフィールドタイプでは、デフォルト値を2つ以上選択できます。シングルオプションタイプの場合は1つしか選択できません。

ボタンを使用したオプション値の削除

列を削除するには、削除アイコンをクリックします。

バッキングストア値

オプションタイプフィールドを選択し、バッキングストアフィールドを選択すると、オプション値パネル(上記)が非表示になり、バッキングストアパネルが表示されます。

バッキングストアのタイプと識別子の値を選択できます。

フォーマットオプション

フォーマットルールを使うと、数値、日付、時刻フィールドをユーザーにどう表示するかを制御することができます。上記のオプションについて、以下で説明します。

  • チェックボックス:フォーマットをサポートしたい場合、このボックスをオンにします。
  • フォーマット:数値、日付、時刻フィールドタイプでは、ユーザーへの表示を制御するための方法としてフォーマットが利用できます。
  • 形式説明:指定された形式ルールについての説明的な情報を入力できるオプションフィールドです。

単位オプション

数値フィールドタイプに適用され、選択した数値フィールドに対して単位を指定することを可能にします

オブジェクトタイプ

タイプオブジェクトのフィールドを作成する場合、Ooyala Flexオブジェクトタイプのドロップダウンリストからオブジェクトタイプを選択するよう求められます。

権限オプション

Ooyala FlexのMetadata Frameworkは、フィールドごとのアクセスコントロールをサポートします。つまり、あるスキーマインスタンスの特定のフィールドの閲覧や編集を、どのユーザーグループに許可するか指定できます。

権限チェックボックスをオンにすると、権限パネルが表示されます。権限を有効化すると、各グループにアクセスを適用するまでアクセスはできなくなります。アクセスを適用するには、アクセスをクリックし、読み込みか、読み込みおよび書き込みを選択します。

利用できるオプションは次のとおりです。

  • チェックボックス:権限をサポートしたい場合にオンにするボックス
  • アクセス:選択したユーザーグループがこのフィールドにアクセスできる
  • 読み込み:選択したユーザーグループが、このフィールドにアクセスして読み込みできる(編集は不可)
  • 編集:選択したユーザーグループがこのフィールドに編集アクセスできる

フィールドの追加と削除

メタデータ定義の作成および更新には、メタデータキャンバスへのアイテム追加、およびそこからのアイテム削除が関係します。メタデータパネルから新規フィールドを追加し、その後メタデータ構成パネルで構成するというのが一般的な方法です。

注記:Workflow Designerが読み込み専用モードになっている場合、以下のオプションは利用できません。

フィールドの追加

メタデータキャンバスにフィールドを追加するには、以下のようにします。

1) 左側のメタデータパネルで追加したいフィールドをダブルクリックすると、キャンバスに既存のフィールドのリストの一番下に追加されます。

フィールドをクリックして、メタデータパネルから直接キャンバスにドラッグすることもできます。

キャンバスにフィールドが複数ある場合、フィールドをクリックしてドラッグすると新規フィールドを正しい位置に移動できます。他のフィールドは適宜調整されます。

2) Designerの右側にある構成パネルで名前や説明、その他利用可能なオプションを設定し、新規フィールドを構成します。

同じタイプのフィールドをさらに追加したい場合、メタデータパネルにあるフィールドタイプを続けてクリックすると、最後に追加されたフィールドの下に新規フィールドが現れます。

キャンバスの既存フィールドで+アイコンをクリックし、キャンバスに直接新規フィールドを追加することもできます。プラスアイコンをクリックすると、選択肢となる既存フィールドのリストが表示されます。

注記:フィールドに名前を割り当てる場合、Metadata Designerはこのメタデータ定義に既存のフィールドと同一の名前の設定を認めません。

クイック追加の使用

Metadata Designerの一番上にある検索フィールドを使用して、メタデータスキーマにフィールドを追加することもできます。

クイック追加バーを使用するには、以下のステップに従います。

1) 追加したいフィールドの名前を入力し始めると、先行入力にオプションが表示されます。

2) 結果から希望するフィールドを選択すると、検索バーに表示されます。

3) +の記号をクリックすると、キャンバスにフィールドが表示されます。

既存フィールドを経由した新規フィールドの追加

以下に示したとおり、既存のフィールドにある+アイコンをクリックして、キャンバスに新規フィールドを追加することもできます。

フィールドの削除

キャンバスからフィールドを削除するには、次のステップに従います。

1) 削除したいフィールドにカーソルを合わせます。

2) 削除アイコンをクリックします。

3) 確認のため、メタデータスキーマの削除ポップアップでOKをクリックします。

4) フィールドが削除されます。

すべてのフィールドの削除

キャンバスにあるフィールドをすべて同時に削除することができます。これを実行するには、次のステップに従います。

1) ページの右上にある、すべてのフィールドの削除アイコンをクリックします。

2) 確認のため、メタデータスキーマフィールドの削除ポップアップでOKをクリックします。

3) キャンバスからフィールドが削除されます。

フィールドの移動

メタデータ定義の作成および更新には、キャンバスへのフィールド追加、およびそこからのフィールド削除が関係します。

キャンバスのフィールドを移動させ、他のフィールドとの相対的な位置を変更する方法はいくつもあります。フィールドを移動させる前に、まずクリックして強調表示させる必要があります。現時点では、同じコンテナ(Complexフィールド)内のフィールドしか移動させることができないので注意してください。あるComplexタイプから別のComplexタイプへの移動は、現時点ではできません。

ドラッグアンドドロップ

キャンバス内でアイテムをドラッグするには、強調表示させてからマウスでドラッグします。

1) 移動させたいフィールドの上で、マウスの左ボタンを押します。

2) マウスの左ボタンを押したままドラッグして、他のフィールドとの位置関係を上下させます。他のフィールドは適宜調整されます。アイテムのドラッグをやめるには、マウスの左ボタンを離します。

メタデータの検証

メタデータ定義は、フィールドの追加および構成時に自動的に検証されます。キャンバスに追加されるフィールドは、名前と表示名が有効でなければなりません。以下のルールが適用されます。

  • 名前と表示名のいずれも必須。
  • フィールドがすでに保存されている場合、名前は編集不可。グレーアウトされます。
  • フィールド名と表示名は、それぞれ50文字を超えてはいけない。
  • フィールド名に使用できるのは小文字、数字、ハイフンのみ。例:「a-field-name」

フィールド名は、現在のメタデータ定義において一意である必要があります。一意ではない名前を入力しようとすると、以下のようにキャンバスのフィールドが赤くなります。

上の例では、タイトルという名前のフィールドが2つ存在します。そのため、後から作成されたフィールドが赤で強調表示されています。

メタデータの保存

1) メタデータ定義の作成が終わったら、画面の右上にある保存アイコンをクリックします。

2) Metadata Designerが、メタデータ定義の保存完了を通知します。

ワークフロー定義を保存すると、Ooyala Flexが関連するワークフローインスタンスをすべて見つけ、モデルを更新します。これをメタデータマージと呼びます。このため、保存プロセスが完了するまでは少し時間がかかります。すでに存在するメタデータ定義を保存しようとすると、データが失われる可能性もありますがマージを実行しますかという確認のポップアップダイアログが表示されるのもこのためです。

検索

前述のとおり、メタデータスキーマは特定のオブジェクトに関する追加データを取得するため、フィールドタイプに関連付けられます。オブジェクトを検索すると、高度な検索画面にメタデータボックスが表示されることがよくあります。この画面では、メタデータスキーマ内で検索可能とマークされているフィールドすべてが検索対象となります。これだけでなく、メタデータフィールドのインスタンス値についてもテキストベースの検索が行えるよう、Ooyala Flexの内部検索エンジンはすべてのメタデータフィールドにインデックスを付けます。

メタデータ定義が完了したら、新規バリアントの作成中にそれを参照して使用することができます。

メタデータ定義の編集

有効化されているメタデータ定義のフィールドを、無効化せずに編集することができます。

有効化されている定義を編集するには、次のステップに従います。

1) Metadata Designerに移動します。

2) 編集したいメタデータ定義を選択します。

3) 新規フィールドの追加、既存フィールドの削除、既存フィールドの編集などの変更を加えます。

4) メタデータ定義を保存すると、変更に合わせてその定義のインスタンスが更新されます。

注記:これはMAMのアセットに関連付けられているインスタンスに該当します。

メタデータ定義の使用中止

特定のオブジェクトに関連付けられているメタデータ定義の使用を中止したい場合、それを使用しているバリアントを削除します。

この記事はお役にたちましたか?