このサイトをビューするために JavaScript を有効化してください。

Altova MapForce 2020 Basic Edition

関数

カスタム XSLT 1.0 または 2.0 関数のインポート

スクロール ホーム トップ その他

XSLT 1.0 と 2.0 関数ライブラリを MapForce 内で使用することのできる単純型を返すカスタム関数として拡張することができます。

 

簡単なデータ型 (例えば、文字列) を返すカスタム関数のみがサポートされます。

 

XSLT ファイルから関数をインポートする:

1.ツール メニューから、オプションをクリックします。(または、ライブラリウィンドウの下のエリア内のライブラリの追加/削除をクリックします。)

2.ライブラリ の横の 追加をクリックし .xsl または .xslt ファイルを参照します。

 

インポートされた XSLT ファイルは、ライブラリウィンドウ内のライブラリに表示され、全ての名前を持つテンプレートを関数として、ライブラリ名の下に表示されます。インポートされたライブラリが表示されない場合、 XSLT が変換言語として設定されているかを確認してください (次を参照: 変換言語の選択)。

 

以下の点に注意してください::

 

MapForce にインポートするには、関数は、 XSLT ファイル内の XSLT 仕様に準拠する名前を持つテンプレートとして宣言されている必要があります。XSLT 2.0 ドキュメント内で発生する関数を <xsl:function name="MyFunction"> の書式でインポートすることもできます。インポートされた XSLT ファイル内で、他の XSLT ファイルをインポートまたは含むことができ、これらの XSLT ファイルと関数もインポートされることができます。

インポートされたカスタム関数のマップすることのできる入力コネクタはテンプレート呼び出し内で使用されるパラメーターの数により異なります。任意のパラメーターもサポートされています。

名前空間はサポートされています。

MapForce に既にインポートされている XSLT ファイルの更新を行う場合、変更は自動的に検知され、 MapForce がファイルの再ロードを促します。

名前付きのテンプレートに書き込む場合、テンプレート内で使用されている XPath ステートメントが正しい名前空間を持つことを確認してくださいマッピングの名前空間にバインドする名前空間を確認するには、 生成された XSLT コードをプレビューしてください。.

 

 

XPath 2.0 内のデータ型

XML ドキュメントから XML スキーマが参照されており、スキーマに対してドキュメントが妥当である場合、演算にて目的のデータ型へ暗示的に変換されないデータ型を明示的に構築またはキャストする必要があります。

 

Altova XSLT 2.0 エンジンで使用される XPath 2.0 データモデルでは、XML ドキュメントから原子化された全てのノード値に xs:untypedAtomic データ型が割り当てられます。xs:untypedAtomic 型は、以下にあるように暗示的な型変換に使用されます:

 

例えば、

xs:untypedAtomic("1") +1 では、xdt:untypedAtomic 値が加算演算子により xs:double に暗黙的に変換され、式の結果は 2 となります。.

四則演算では、オペランドが暗黙的に xs:double へ変換されます。

値の比較を行う場合、比較の前にオペランドが xs:string へ変換されます。

 

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

例: カスタム XSLT 1.0 関数の追加

XSLT 1.0 エンジンの実装

XSLT 2.0 エンジンの実装

(C) 2019 Altova GmbH