Home > リファレンスガイド > ユーティリティ > データマッパーユーティリティ > 送り元と送り先のプロパティペイン > [XML]プロパティ

[XML]プロパティ

XMLを送り元として選択すると、XMLファイルから送り先へデータをマッピングすることになります。XMLを送り先に選択するとXMLファイルを作成します。XMLの[プロパティ]ペインを使用してXMLデータをマッピングするために以下の情報を入力します。

  • XMLのMixed属性 (mixed="true") は、現在サポートしていません。

  • デフォルトでは、送り先のXMLはDOMに読み込まれません。送り先が、常にDOMに読み込ませたい場合、Magic xpiスタジオを一旦終了し、XMLDomMapperという特殊フラグをNに設定してから、スタジオを再起動し、プロジェクトを再構築する必要があります。しかし、[データの追加]チェックボックスがチェックされると、送り先のXMLは常にDOMに読み込まれます。

  • Magic xpiは、データマッパーの送り先XML内でxs:anyワイルドカードをサポートします。データマッパーは、プレースホルダによってこのワイルドカードを表しています。これは、渡されたどのような内容とも置き換えることができます。このワイルドカードは実際の要素ではありません。有効な内容を確実にこのプレースホールダに渡さなければなりません。Magic xpiは、各レベルに対して1つの xs:any要素だけをサポートします。

  • xs:any 複合、または単一の要素は送り元値としてマッピングに使用することはできません。xs:any 要素が送り元で使用される時、スキーマは、xs:any 要素の代わりに予期されている構造を説明するように修正する必要があります。

  • .Floatとdouble XMLデータ型は、次のような指数としてオプションのEまたはeを含んでいる語彙表示を処理することができます。例:1267.43233E12。しかし、数値型のデータには18桁の上限があります。

[プロパティ]ペインには、以下のプロパティが含まれています:

プロパティ

説明

スキーマの名前を入力してください。名前は最高256文字を含めることができます。

説明

スキーマのを説明に入力してください。

XSDファイル

こには、XMLスキーマのファイル名を入力します。XSDファイルの正しいパスとファイル名を指定する必要があります。ここで環境変数を使用すると運用時に便利です。

使用するXSDファイルの場所を参照するには、 をクリックします。 XSDファイルを設定して送り元を送り先にマッピングしたら、これを変更することはできません。変更しようとすると、変更できない旨のメッセージが表示されます。[XSDサブタイプ]で[XMLポジショニングフォワード]が選択されてた場合、このフィールドが更新されは読み込み専用になります。

XMLルート

データのマップ元またはマップ先とするXMLルートを選択します。選択したXSDファイルに複数のルート要素が含まれる場合にのみ使用できます。Magic xpiは自動的に、見つけ出す最初のルート要素を選択します。[XSDサブタイプ]で[XMLポジショニングフォワード]が選択された場合、呼び出しれたフローにマップされた複合要素へのフルXMLパスを表示します。

XSDサブタイプ

送り元スキーマのサブタイプ。ドロップダウンリストから以下のどれかを1つを選択してください:

  • File

  • IFC Model

  • XML Position Fowarding (送り元のみ)

IFCモデル

このプロパティは、[XSDサブタイプ]で[IFC Model](上記)が選択された時だけ有効です。これは、使用する事前に定義されたXSDをXMLデータとして選択させます。これは、スタティックなXMLインタフェースを持つコンポーネントのためにXMLスキーマ定義(XSD)を使用する簡単な方法を提供します。をクリックして、コンポーネントリストを開き、必要とするコンポーネントを選択してください。送り先としてこのサブタイプを使用する時に、スタティックなXMLインタフェースを持つ任意のコンポーネントを設定するためにパラメータをXMLファイルに渡すことができます。

デフォルトでは、送り先のXMLはDOMに読み込まれません。送り先が、常にDOMに読み込ませたい場合、Magic xpiスタジオを一旦終了し、XMLDomMapperという特殊フラグをNに設定してから、スタジオを再起動し、プロジェクトを再構築する必要があります。しかし、[データの追加]プロパティがYesに設定されると、送り先のXMLは常にDOMに読み込まれます。

XML位置転送 (送り元のみ)

[XSDサブタイプ](上記)が[XML Position Fowarding]に設定されているときだけ、このプロパティは有効です。フローを呼び出すことで保存された開始位置から、XMLソースデータがマッピングを開始することを可能にします。これは、フローが他から呼び出される場合に有効です。

をクリックして、[スキーマリスト]ダイアログボックスを開きます。ここでは、現在のデータマッパー(設定されているものの一つ)を呼び出す全てのデータマッパステップのリストを表示します。ここで、呼び出すデータマッパーとして必要なデータマッパステップを選択しでください。

詳細は、ここをクリックしてください。

送り元/送り先のタイプ

送り元情報がどこに位置しているか、または送り先ファイルをどこに作成するかを選択してください。

  • File …… ファイルが選択されると、[ファイルパス]プロパティ(以下)は、ソースデータを含むXMLファイルと作成する送り先の名前と位置を追加することができます。をクリックして式エディタを開きます。ファイルを位置付ける式または条件を作成するために、式エディタを使用してください。ここでは、ファイルの動的な位置を定義することができます。スタティックな位置を使用したい場合は、フィールドにファイルのフルパスを入力するか、ファイルのフルパスを保持する(フロー、コンテキストまたはグローバル)変数を作成し、式エディタから変数を選択してください。.

  • Variable …… 使用したいデータのXMLファイルを含む変数を選択してください。BLOBタイプの変数のみ有効です。XMLデータはBLOBに含まれていなければなりません。

ファイルパス

[送り元/送り先のタイプ]プロパティ(上記)で File を選択した場合、をクリックしてファイルを位置付ける式または条件を作成する式エディタを開きます。

変数

[送り元/送り先のタイプ]プロパティ(上記)で Variable を選択した場合、をクリックして変数リストを開きます。ここで変数を選択したら[選択]をクリックします。

データ追加
(送り先のみ)

新しいマッピングを既存のXMLファイルを持つワークに追加するために、ドロップダウンリストから以下のどれかをつを選択してください:

  • No

  • Yes

[追加データ]チェックボックスを選択する時に、少なくとも1つの複合ノードをマッピングする必要があります。

詳細は、データルールの追加 を参照してください。

XML検証

実行時にデータマッパーはそれぞれのスキーマに照らし合わせて送り元と送り先のXMLを検証し、妥当性エラーと警告が含まれたXML出力を出力します。検証を行ないたいかどうかは、ドロップダウンリストから以下のどれかを選択してください:

  • No

  • Yes

XML検証の出力は C.sys.ErrorInfo システム変数の中で有効で、C.sys.ErrorDescription変数には対応するソース、送り先の詳細が含まれています。Yesが選択された場合、に設定したXSDファイルが実行中にそれを定義した位置にあることを確認してください。

XSDサブタイプ]で[XML Position Fowarding]が選択された場合、このフィールドは呼びだすステップ検証の設定が表示されます。

送り元XMLファイルに対してXML検証が開始されます。XMLファイルが検証されてたらマッピングが実行されます。検証が失敗すると、マッピングは中止します。

送り先XMLファイルに対しては、データマッパーはファイルを作成し、それから検証が開始されます。検証が失敗すると、エラーが表示されます。しかし、XMLファイルは削除されません。

再帰の深さ

このプロパティは再帰インスタンスの最大数を設定します。

インスタンスの中には特定の構造が自身の中で繰り返されている、再帰的なものがあります。不明確なループを回避するために、Magic xpiは、参照する全体の階層を知る必要があります。このプロパティは、選択されたXMLファイルの構造が何回繰り返されるかを指定します。

例えば、要素Aは子要素Bを持っていて、子要素Bは、要素A(親)を参照する子要素を持っています。これは、同じ情報が繰り返される人員または顧客リストの場合に役立ちます。

再帰がない場合は、1を入力してください。

このプロパティは、再帰的な要素にのみ関連しています。

データフォーマット

をクリックして[デフォルトデータフォーマット]ダイアログボックスを開きます。ここで特定データタイプが指定されるときにMagic xpiに使用させたいデフォルトを定義することができます。

ストリーミングパーサ(送り元のみ)

ストリーミングXMLパーザは、データマッパーが大きなXML文書を処理することを可能にします。ドロップダウンリストから以下のどれかを1つを選択してください:

  • No

  • Yes

ストリーミングパーサには、以下の制限があります:

  • データ送り元タイプは、ファイルのみです。[送り元タイプ]プロパティ(上記)でBLOB変数が選択された場合、このプロパティは無効になります。

  • XML検証を実行することはできません。[XML検証]プロパティ(上記)がYesに設定された場合、このプロパティは無効になります。

  • シングルソースの複合マッピングのみが利用できます。

  • マップされた複合要素の下にある要素の値は、使用できません。この規制は、マッピングと式にあてはまります。

  • シングルインスタンスのフィルタは使用できません。

  • ノードの複製はできません。

  • [XSDサブタイプ](上記)で[XMLポジショニングフォワード]が選択されると、このプロパティは無効になります。

常にノードを作成(送り先のみ)

デフォルトでは、Magic xpiは結果XMLファイルにマッピングされた送り先ノードを作成します。

マッピングされた送り先ノードが作成されない場合は、1つのシナリオがあります。[常にノードを作成]がまた選択されず、マッピングされた送り元ノードが以下のどれかの場合に発生します:

  • 空の値

  • NULL値(送り先は、NULLをサポートしません)

動作を無効にするために、「計算値」を使用することができます。

デフォルトでは、このプロパティが選択されています。

文字タイプのノードだけがこのプロパティに影響します。

参照: NullifyXMLSourceNonExistentTagValue

XMLエンコーディング
(送り先のみ)

送り先XMLファイルで使用される言語エンコーディング(言語と文字セット)を選択します。同じデータマッパーで異なる言語エンコーディングを持った複数の送り先を作成することができます。サポートされている言語を見るには、こちら をクリックしてください。また、[プロジェクトプロパティ]ダイアログの[プロジェクトデータエンコーディング]プロパティも参照してください。