Cloud Software Group, Inc. EBX®
ドキュメント>ユーザーガイド>データモデル>データモデルの実装
ナビゲーションモードドキュメント>ユーザーガイド>データモデル>データモデルの実装

エレメントのデータ検証コントロール

エレメントの最初の作成後、その定義を完了するために追加のコントロールを設定できます。

以下も参照してください。

単純なコンテンツ検証

フィールドで次の静的コントロールを使用すると、そのコンテンツに単純な検証ルールを確立できます。特定のフィールドで使用できるコントロールは、そのデータ型によって異なります。

Fixed length(固定長)

このフィールドに必要な正確な文字数。

Minimum length(最小の長さ)

このフィールドに許可される最小文字数。

Maximum length(最大の長さ)

このフィールドに許可される最大文字数。

Pattern(パターン)

フィールドの値が一致する必要がある正規表現パターン。フィールドとそのデータ型の両方のパターンを同時に定義することはできません。

Decimal places(小数位)

このフィールドに許可される小数点以下の最大桁数。

Maximum number of digits(最大桁数)

この整数または10進フィールドに許可される最大合計桁数。

Enumeration(列挙)

このフィールドに事前定義された可能な値のリストを定義します。列挙型がフィールドとそのタイプの両方で定義されている場合、関連するデータセット内のこのフィールドの列挙型は、これら2つの列挙型の共通部分に置き換えられます。

Greater than [constant]([定数]より大きい)

このフィールドに許可される最小値を定義します。

Less than [constant]([定数]より小さい)

このフィールドに許可される最大値を定義します。

XMLスキーマでサポートされているファセットを参照してください。

高度なコンテンツ検証

エレメントに対して次の動的およびコンテキストコントロールを使用して、そのコンテンツの高度な検証ルールを確立できます。特定のエレメントで使用できるコントロールは、エレメントのタイプとそのデータ型(存在する場合)によって異なります。

以下も参照してください。

外部キー制約

Table(テーブル)

外部キーによって参照されるテーブルを定義します。外部キーは、デフォルトで同じデータセット内のテーブルを参照します。また、同じデータスペース内の別のデータセット内のテーブル、または別のデータセット内のデータセットを参照することもできます。

Mode(モード)

外部キーによって参照されるテーブルの場所。

「デフォルト」:現在のデータモデル。

「その他のデータセット」:同じデータスペース内の異なるデータセット。

「その他のデータスペース」:別のデータスペースのデータセット。

Referenced table(参照表)

テーブルの場所を説明するXPath式。たとえば、/root/MyTableです。

Referenced dataset(参照されたデータセット)

テーブルが別のデータセットにある場合は必須です。参照されるテーブルを含むデータセットの一意の名前。

Referenced dataspace(参照データスペース)

テーブルが別のデータスペースにある場合は必須です。参照されるテーブルを含むデータスペースの一意の名前。

Label(ラベル)

テーブル内のレコードのデフォルトおよびローカライズされたラベルを提供するフィールドを定義します。階層リンクで指定されたラベルの表示をカスタマイズすることもできます。

「XPath式」が「いいえ」に設定されている場合、プログラムでラベルを設定するJavaクラスを指定することもできます。このJavaクラスは、JavaAPIのTableRefDisplayインターフェイスを実装する必要があります。

注意:レコードラベルを表示する場合、関連するデータセットで定義されたアクセス権は適用されません。
アクセス権の制限のために通常非表示になっているフィールドは、ラベルに表示されます。

Filter(フィルター)

XPath式を使用して外部キーフィルターを定義します。

JavaAPIのTableRefFilterインターフェイスを実装するJavaクラスを指定することもできます。

Greater than [dynamic]([動的]より大きい)

このフィールドに許可される最小値を提供するフィールドを定義します。

Less than [dynamic]([動的]より小さい)

このフィールドに許可される最大値を提供するフィールドを定義します。

Fixed length [dynamic](固定長[動的])

このフィールドに必要な正確な文字数を提供するフィールドを定義します。

Minimum length [dynamic](最小の長さ[動的])

このフィールドに許可される最小文字数を提供するフィールドを定義します。

Maximum length [dynamic](最大長[動的])

このフィールドに許可される最大文字数を提供するフィールドを定義します。

Excluded values(除外された値)

このフィールドで許可されていない値のリストを定義します。

Excluded segment(除外されたセグメント)

このフィールドで許可されていない値の包括的範囲を定義します。

Minimum excluded value(最小除外値):このフィールドに許可されていない最小値。

Maximum excluded value(最大除外値):このフィールドに許可されていない最大値。

Specific constraint (component)(特定の制約(コンポーネント))

JavaAPIのConstraintインターフェイスを実装する1つ以上のJavaクラスを指定します。詳細については、プログラム上の制約を参照してください。

Specific enumeration (component)(特定の列挙(コンポーネント))

列挙型を定義するJavaクラスを指定します。クラスは、JavaAPIのConstraintEnumerationインターフェイスを実装することにより、値の順序付きリストを定義する必要があります。

Enumeration filled by another node(別のノードによって埋められた列挙)

別のリストまたは列挙型エレメントへの参照を使用して、この列挙型の可能な値を定義します。

Dataspace set configuration(データスペースセットの構成)

タイプデータスペース識別子(osd:dataspaceKey)のフィールドで参照できるデータスペースを定義します。構成が設定されていない場合、デフォルトでは、開いているブランチのみをこのフィールドで参照できます。

  • Includes(含む)

    このフィールドで参照できるデータスペースを指定します。

    Pattern(パターン):データスペースをフィルタリングするパターンを指定します。パターンは、データスペースの名前と照合されます。

    Type(タイプ):このフィールドで参照できるデータスペースのタイプを指定します。定義されていない場合、この制限はブランチに適用されます。

    Include descendants(子孫を含める):指定されたパターンに一致するデータスペースの子または子孫をセットに含めるかどうかを指定します。
    定義されていない場合、この制限は子データスペースには適用されません。
    「なし」の場合、指定されたパターンに一致するデータスペースの子も子孫も含まれません。
    「すべての子孫」の場合、指定されたパターンに一致するデータスペースのすべての子孫が含まれます。
    「すべての子孫ブランチ」の場合、指定されたパターンに一致するデータスペースのすべての子孫ブランチが含まれます。
    「すべての子孫スナップショット」の場合、指定されたパターンに一致するデータスペースのすべての子孫スナップショットが含まれます。
    「子ブランチ」の場合、指定されたパターンに一致するデータスペースの直接ブランチのみが含まれます。現在のデータスペースがバージョンの場合、このバージョンの直接の子であるブランチが含まれます。現在のデータスペースがブランチの場合、このブランチの子であるバージョンの直接の子であるブランチが含まれます。
    「子スナップショット」の場合、指定されたパターンに一致するデータスペースの直接スナップショットのみが含まれます。現在のデータスペースがブランチの場合、このブランチの直接の子であるスナップショットが含まれます。現在のデータスペースがバージョンの場合、このバージョンの子であるブランチの直接の子であるバージョンが含まれます。

  • Excludes(除外)

    このフィールドで参照できないデータスペースを指定します。Includes(含む)が定義されていない場合、Excludes(除外)は無視されます。

    Pattern(パターン):データスペースをフィルタリングするパターンを指定します。パターンは、データスペースの名前と照合されます。

    Type(タイプ):このフィールドで参照できるデータスペースのタイプを指定します。定義されていない場合、この制限はブランチに適用されます。

    Include descendants(子孫を含める):指定されたパターンに一致するデータスペースの子または子孫をセットに含めるかどうかを指定します。
    定義されていない場合、この制限は子データスペースには適用されません。
    「なし」の場合、指定されたパターンに一致するデータスペースの子も子孫も含まれません。
    「すべての子孫」の場合、指定されたパターンに一致するデータスペースのすべての子孫が含まれます。
    「すべての子孫ブランチ」の場合、指定されたパターンに一致するデータスペースのすべての子孫ブランチが含まれます。
    「すべての子孫スナップショット」の場合、指定されたパターンに一致するデータスペースのすべての子孫スナップショットが含まれます。
    「子ブランチ」の場合、指定されたパターンに一致するデータスペースの直接ブランチのみが含まれます。現在のデータスペースがバージョンの場合、このバージョンの直接の子であるブランチが含まれます。現在のデータスペースがブランチの場合、このブランチの子であるバージョンの直接の子であるブランチが含まれます。
    「子スナップショット」の場合、指定されたパターンに一致するデータスペースの直接スナップショットのみが含まれます。現在のデータスペースがブランチの場合、このブランチの直接の子であるスナップショットが含まれます。現在のデータスペースがバージョンの場合、このバージョンの子であるブランチの直接の子であるバージョンが含まれます。

  • データスペースフィルター

    データセットまたはレコードのコンテキストでデータスペースを受け入れるか拒否するフィルターを指定します。このフィルターは、このフィールドに関連付けられている専用の入力コンポーネントでのみ使用されます。つまり、このフィールドを検証するとき、このフィルターは使用されません。特定の制約を使用して、このフィールドで特定の制御を実行できます。フィルタは、JavaAPIのDataspaceSetFilterインターフェイスを実装するJavaクラスによって定義されます。

Dataset set configuration(データセット構成)

データセット識別子(osd:datasetName)タイプのフィールドで参照できるデータセットを定義します。

  • Includes(含む)

    このフィールドで参照できるデータセットを指定します。

    Pattern(パターン):データセットをフィルタリングするパターンを指定します。パターンは、データセットの名前と照合されます。

    Include descendants(子孫を含める):指定されたパターンに一致するデータセットの子または子孫をセットに含めるかどうかを指定します。

  • Excludes(除外)

    このフィールドで参照できないデータセットを指定します。Includes(含む)が定義されていない場合、Excludes(除外)は無視されます。

    Pattern(パターン):データセットをフィルタリングするパターンを指定します。パターンは、データセットの名前と照合されます。

    Include descendants(子孫を含める):指定されたパターンに一致するデータセットの子または子孫をセットに含めるかどうかを指定します。

  • フィルター

    データセットまたはレコードのコンテキストでデータセットを受け入れるか拒否するフィルターを指定します。このフィルターは、このフィールドに関連付けられている専用の入力コンポーネントでのみ使用されます。つまり、このフィールドを検証するとき、このフィルターは使用されません。特定の制約を使用して、このフィールドで特定の制御を実行できます。フィルタは、JavaAPIのDatasetSetFilterインターフェイスを実装するJavaクラスによって定義されます。

検証プロパティ

特定のJavaクラスを使用しない各制約は、次のプロパティを使用して、重大度のあるローカライズされた検証メッセージを定義できます。

Validation(検証)

ユーザー定義の重大度レベルでローカライズされた検証メッセージを定義します。

Severity(重大度)

検証メッセージの重大度レベルを定義します。可能な値は、「Error(エラー)」、「Warning(警告)」、および「Information(情報)」です。

Error management policy(エラー管理ポリシー)

検証エラーが発生したときの制約の動作を指定します。操作(データセットの更新、レコードの作成、更新または削除)の後、またはユーザーがフォームを送信したときに、制約が常に有効である必要があることを指定できます。この場合、制約に違反する入力または操作は拒否され、値は変更されません。指定されていない場合、制約は、デフォルトですべての操作でエラーが防止されるリレーショナルデータモデルの外部キー制約を除いて、デフォルトでフォーム送信時にエラーをブロックするだけです。このオプションは、静的制御、値の除外、セグメントおよび外部キーの制約の除外でのみ使用できます。外部キー制約では、エラー管理ポリシーはフィルターに関係しません。つまり、参照レコードが存在するが外部キーフィルターを満たさない場合、外部キー制約はブロックされません。この場合、更新は拒否されず、検証エラーが発生します。テーブル履歴またはレプリケーションがアクティブ化されている場合、リレーショナルデータモデルで定義されている構造制約にエラー管理ポリシーを指定することはできません。つまり、このプロパティを固定長、最大長、最大桁数、および小数点以下の桁数の制約に設定すると、基になるRDBMSブロッキング制約検証ポリシーのために、データモデルのコンパイル時にエラーが発生します。このプロパティは、アーカイブをインポートする場合は無効です。つまり、アーカイブをインポートするときは、構造上の制約を除くすべてのブロック制約が常に無効になります。

Message(メッセージ)

データセット内のこのフィールドの値がこの制約に準拠していない場合に表示するメッセージを定義します。カスタムメッセージを指定する場合は、オプションでローカライズされたバリアントを提供できます。

/ebx_search.pngユーザーガイド目次

ドキュメント>ユーザーガイド>データモデル>データモデルの実装