メタデータにおいて、データ要素とは、正確な意味または正確なセマンティクスを持つデータの原子単位を指します。データ要素の使用状況は、手動または自動のアプリケーション検出と理解(Application Discovery and Understanding)プロセスを通じてソフトウェアアプリケーションまたはアプリケーションデータファイルを検査することで検出できます。検出されたデータ要素は、メタデータレジストリに登録できます。データベースやデータシステムの分野では、より一般的には、データ要素はデータモデルの一部を形成する概念です。データ表現の要素として、データ要素の集合はデータ構造を形成します。[1]
データ要素には次のものが含まれます。
データ要素名とは、データディクショナリやメタデータレジストリなどにおいて、データ要素に与えられる名前です。正式なデータディクショナリでは、データ要素名を識別子として使用できるために、2つのデータ要素が同じ名前を持つことは許されないという要件がしばしば設けられています。ただし、一部のデータディクショナリでは、アプリケーションシステムやデータ要素が出現するその他のコンテキストなど、何らかの方法で名前を修飾する方法が提供されている場合もあります。
データベース駆動型データ ディクショナリでは、完全修飾データ要素名が、データ ディクショナリのデータ要素テーブルの主キーまたは代替キーになる場合があります。
データ要素名は通常、ISO/IEC 11179 メタデータ レジストリ命名規則に準拠しており、少なくとも 3 つの部分で構成されます。
多くの標準規格では、データ要素名の構成要素を区別するために大文字のキャメルケースの使用が求められています。これは、 ebXML、GJXDM、NIEMで使用されている標準規格です。
ユーザーは、複数の部分から成るCamel Case形式のXMLデータ要素名に触れるときに、ISO/IEC 11179 に頻繁に遭遇します。
オブジェクト [修飾子] プロパティ表現用語
仕様には、付録に規範的なドキュメントも含まれています。
たとえば、人の名 (ファーストネーム) の XML 要素は次のように表現されます。
<PersonGivenName>ジョン</PersonGivenName>
ここで、Person はオブジェクト = Person、プロパティ = Given、表現用語= Name です。この場合、データ要素名に暗黙的に指定されているにもかかわらず、オプションの修飾子は使用されません。これは、構造化データの使用ではなく、データ要素名に基づく知識を必要とします。
メタデータでは、データ要素定義は、データ要素の意味またはセマンティクスを記述する、データ辞書内のデータ要素に関連付けられた人間が読めるフレーズまたは文です。
データ要素の定義は、あらゆるデータシステムの外部ユーザーにとって非常に重要です。適切な定義は、あるデータセットを別のデータセットにマッピングするプロセスを劇的に簡素化します。これは、分散コンピューティングとインテリジェントエージェント開発の中核となる機能です。
高品質なデータ要素定義を作成する際は、従うべきガイドラインがいくつかあります。
良い定義は次のとおりです。
定義には、他者によって誤解される可能性のある用語や概念、あるいは状況の文脈によって意味が異なる用語や概念を含めるべきではありません。定義には、明確に定義されていない頭字語や他の正確な定義にリンクされていない頭字語を含めるべきではありません。
多数のデータ要素を作成する場合、すべての定義は関連する概念と一致している必要があります。
重要なデータ要素 – すべてのデータ要素が組織にとって同等の重要性や価値を持つわけではありません。要素の重要なメタデータプロパティは、データを重要なデータ要素(CDE)として分類することです。この分類により、データガバナンスとデータ品質に重点が置かれます。組織では、データの用途に基づいて、CDEの様々なサブカテゴリが存在します。例:
ISO/IEC 11179メタデータレジストリ仕様などの標準規格は、正確なデータ要素定義を作成するためのガイドラインを提供しています。具体的には、ISO/IEC 11179メタデータレジストリ標準の第4章をご覧ください。
「play」や「run」といった一般的な単語のデータベースでは、「play」という単語には57以上の異なる意味が登録されていますが、「dramatic play 」という用語には1つの定義しかありません。選択した単語の辞書エントリには、できるだけ少ない定義が望ましいです。これにより、読者の文脈や背景に関連する誤解を最小限に抑えることができます。単語の適切な意味を見つけるプロセスは、「単語の意味の曖昧性解消」と呼ばれます。
以下は、www.w3c.org の Friend of a Friend 仕様 * で定義されている「person」データ要素の定義です。
人: 人。
ほとんどの人は「人間」とは何かを直感的に理解していますが、その定義には改善の余地が大いにあります。まず第一の問題は、定義が循環的であることです。この定義はほとんどの読者にとって役に立たず、明確にする必要があることに注意してください。
以下は、Global Justice XML データ モデル 3.0 * における「Person」データ要素の定義です。
人: 人の固有の、頻繁に関連付けられる特性を説明します。
ここでも、定義は依然として循環的であることに注意してください。「人」は自分自身を指すべきではありません。定義では、「人」以外の用語を用いて「人」が何であるかを説明する必要があります。
より正確だが短い人の定義は次のとおりです。
人: 個々の人間。
ここで「個体」という言葉が使われていることに注意してください。これは「人間」と呼ばれるもののクラスのインスタンスであることを示しています。厳密には「ホモ・サピエンス」という言葉を使うこともできますが、「ホモ・サピエンス」よりも「人間」という言葉の方が馴染みのある人が多いため、正確な表現であれば、一般的に使われている用語が常に優先されます。
システムによっては、定義に文化的な規範や前提が反映されている場合があります。例えば、「人物」データ要素がエイリアンが登場するSFシリーズの登場人物を追跡している場合、「人間」以外のより一般的な用語が必要になるかもしれません。
人: 知覚力のある種族の個体。
電気通信において、データ要素という用語には次のコンポーネントがあります。
実際には、データ要素(フィールド、列、属性など)が「オーバーロード」されることがあります。これは、特定のデータ要素が複数の意味を持つ可能性があることを意味します。オーバーロードはよく知られた悪い習慣ですが、それでもなお、システムの動作を理解する上で非常に現実的な要因、あるいは障壁となります。