Tamino のデータ変換

Tamino からの Natural DDM の生成は、Tamino XML スキーマ言語に基づいて行われます。Tamino XML スキーマ言語の基本概念、および Natural for Tamino との対話方法については、『プログラミングガイド』の「Tamino データベースのデータへのアクセス」を参照してください。

このセクションでは、Tamino データタイプの Natural データフォーマットへのマッピングについて説明します。


組み込み Tamino XML スキーマ言語のデータタイプ

Tamino XML スキーマ言語には、可能であれば、対応する Natural データフォーマットにマップされる組み込みデータタイプが多数用意されています。データタイプによっては、適切な Natural データフォーマットがない場合もあります。そのような Tamino データタイプは、最も汎用的な次の Natural データフォーマットにマップされます:U (DYNAMIC)スキーマ言語は長さが無制限の文字列を基本にしているため、データフォーマット U (DYNAMIC) はあらゆる Tamino XML スキーマの組み込みデータタイプを保持できます。

次の表は、Natural for Tamino でサポートされている組み込み Tamino 基本データタイプおよび派生データタイプと、これらのデータタイプがマップされる Natural データフォーマットを示しています。

Tamino の基本データタイプ

Tamino の基本データタイプ Natural データフォーマット/データ長
xs:string U (DYNAMIC)
xs:boolean L
xs:decimal P22.7
xs:float F4
xs:double F8
xs:duration U (DYNAMIC)
xs:dateTime U (DYNAMIC)
xs:time T
xs:date D
xs:gYearMonth U (DYNAMIC)
xs:gYear U (DYNAMIC)
xs:gMonthDay U (DYNAMIC)
xs:gDay U (DYNAMIC)
xs:gMonth U (DYNAMIC)
xs:hexBinary U (DYNAMIC)
xs:base64Binary U (DYNAMIC)
xs:anyURI U (DYNAMIC)
xs:QName U (DYNAMIC)
xs:NOTATION U (DYNAMIC)

Tamino の派生データタイプ

Tamino の派生データタイプ Natural データフォーマット/データ長
xs:normalizedString U (DYNAMIC)
xs:token U (DYNAMIC)
xs:language U (DYNAMIC)
xs:NMTOKEN U (DYNAMIC)
xs:NMTOKENS U (DYNAMIC)
xs:Name U (DYNAMIC)
xs:NCName U (DYNAMIC)
xs:ID U (DYNAMIC)
xs:IDREF U (DYNAMIC)
xs:IDREFS U (DYNAMIC)
xs:ENTITY U (DYNAMIC)
xs:ENTITIES U (DYNAMIC)
xs:Integer P29
xs:nonPositiveInteger P29
xs:negativeInteger P29
xs:long P19
xs:int I4
xs:short I2
xs:byte I2
xs:nonNegativeInteger P29
xs:unsignedLong P19
xs:unsignedShort I2
xs:unsignedByte I2
xs:unsignedInt I4
xs:positiveInteger P29

Tamino XML スキーマコンストラクタ

Tamino XML スキーマコンストラクタは、ドキュメント構造を定義するために使用します。また、コンストラクタを使用することにより、既存のデータ型から新しいデータ型を派生させたり、ドキュメントのネスト構造を記述したりすることができます。

Tamino XML スキーマのデータタイプは、既存データタイプの一連の派生メソッドを使用して新規作成できます。派生データタイプを Natural データフォーマットにマップできない場合、代わりに最も汎用的なデータフォーマット U (DYNAMIC) が Natural によって使用されます。

次の表は、Natural によってサポートされている Tamino XML スキーマコンストラクタと各コンストラクタの属性を示しています。コメント列には、DDM が生成されるときに実行されるマッピングについての説明が記載されています。

XML スキーマコンストラクタの使用に関する制限事項については、『プログラミングガイド』の「Tamino データベースのデータへのアクセス」を参照してください。

コンストラクタ 属性 コメント
xs:all

minOccurs
maxOccurs

Natural グループ構造にマップされます。
xs:attribute

名前
ref
type
form
use

Natural グループ構造にマップされます。
xs:choice

minOccurs
maxOccurs

Natural グループ構造にマップされます。
xs:complexType

名前
mixed=false

(mixed=false のみサポート)

メタコンストラクタであるため、直ちに Natural データタイプにはなりません。
xs:element

名前
ref
type
form
minOccurs
maxOccurs

xs:element 副構造(単一または複合タイプ定義)に応じて、Natural データタイプまたは Natural グループにマップされます。
xs:enumeration   タイプ U (DYNAMIC) にマップされます。
xs:extension base メタコンストラクタであるため、直ちに Natural データタイプにはなりません。
xs:fractionDigits value Natural データタイプの精度に影響します。
xs:length value Natural データタイプの長さに影響します。unbounded の長さがタイプ U (DYNAMIC) にマップされます。

xs:maxInclusive
xs:maxExclusive
xs:minInclusive
xs:minExclusive
xs:minLength
xs:pattern

value マッピングに影響しません(つまり、base タイプは制限を受けません)。
xs:maxLength value Natural データタイプの長さに影響します。unbounded の長さがタイプ U (DYNAMIC) にマップされます。
xs:restriction base メタコンストラクタであるため、直ちに Natural データタイプにはなりません。
xs:schema

attributeFormDefault
elementFormDefault
targetNamespace

メタコンストラクタであるため、直ちに Natural データタイプにはなりません。
xs:sequence

minOccurs
maxOccurs

Natural グループ構造にマップされます。
xs:simpleContent   メタコンストラクタであるため、直ちに Natural データタイプにはなりません。
xs:simpleType 名前 メタコンストラクタであるため、直ちに Natural データタイプにはなりません。
xs:totalDigits value Natural 数値データタイプの長さに影響します。

Tamino XML スキーマ言語の多重度

Tamino XML スキーマ言語の多重度は、適切なコンストラクタの属性 maxOccurs を使用して表現します。maxOccurs の値が 1 より大きい場合、Tamino から生成される Natural DDM は配列定義になります。maxOccurs の値に応じて、静的配列(maxOccurs が数値に設定されている場合)または X-array(maxOccursunbounded に設定されている場合)が DDM に生成されます。通常と同様、配列定義は、DDM からビューを定義するときに上書きできます。