属性 (Master Data Services)
Master Data Services では、属性はエンティティ内のオブジェクトです。属性は属性値のコンテナーであり、各属性値は 1 つのメンバーを表します。
属性は、エンティティ テーブルの列と考えることができます。属性値は、特定のメンバーを表すために使用される値です。
.gif)
次の例では、エンティティに Name、Code、Subcategory、StandardCost、ListPrice、および FilePhoto という属性があります。これらの属性はメンバーを表します。メンバーは、属性値の 1 行で表されます。
.gif)
エンティティを作成すると、Name 属性と Code 属性が自動的に作成されます。Code 属性には値が必要であり、Code 属性はエンティティ内で一意であることが必要です。Name 属性と Code 属性を削除することはできません。
属性を使用してリーフ メンバー、統合メンバー、またはコレクションを表すことができます。
属性の種類
属性には、次の 3 種類があります。
ドメイン ベースの属性。エンティティによって設定されます。詳細については、「ドメインベースの属性 (Master Data Services)」を参照してください。
ファイル属性。ファイル、ドキュメント、または画像を格納するために使用されます。ファイル属性は、ファイルに特定の拡張子を付けることによって、データの一貫性を確保するためのものです。悪意のあるユーザーによる異なる種類のファイルのアップロードを防ぐことを保証するものではありません。
自由形式属性。テキスト、数値、日付、またはリンクを自由形式で入力できます。
数値自由形式属性
数値自由形式属性値は、SqlDouble 値型に限定されます。
既定では、Double 値には有効桁数 15 桁の 10 進数が含まれますが、内部的には最大 17 桁が保持されています。浮動小数点数の有効桁数により、複数の結果が得られます。
特定の有効桁数で等しく見える 2 つの浮動小数点数が、最小有効数字が異なっているために等しくない場合があります。
浮動小数点数を使用する数学的演算または比較演算で小数が使用された場合は、浮動小数点数がその小数に正確に近似していない場合があるため、同じ結果が生成されないことがあります。
浮動小数点数が含まれていると、値がラウンド トリップされない場合があります。値のラウンド トリップとは、演算で元の浮動小数点数が別の形式に変換され、逆の演算で変換後の形式から浮動小数点数に戻されて、最終の浮動小数点数が元の浮動小数点数に等しくなる場合をいいます。変換で最小有効数字が 1 桁以上失われるか、または変更された場合は、ラウンド トリップが失敗します。
属性の例
次の例では、Product エンティティに次の属性が含まれます。
自由形式属性 Name、Code、StandardCost、および ListPrice
ドメイン ベースの属性 Subcategory
ファイル属性 FilePhoto
Subcategory は、Product のドメイン ベースの属性として使用されるエンティティです。Category は、Subcategory のドメイン ベースの属性として使用されるエンティティです。Product エンティティと同様に、Category エンティティと Subcategory エンティティにはそれぞれ、既定の Name 属性と Code 属性が含まれています。
.gif)