次の方法で共有


インライン XSLT および XSLT 呼び出しテンプレートを使用するスクリプト

スクリプト Functoid で使用するために、拡張可能なスタイルシート言語変換 (XSLT) スタイルシート 直接記述できます。 これにより、変換を実行できます。ただし、リンクと組み込みの Functoid は、表現できない場合があります。 XSLT スクリプトには、インライン XSLT と XSLT 呼び出しテンプレートの 2 種類があります。 [スクリプト Functoid の構成] ダイアログ ボックスの [スクリプトの種類の選択] ドロップダウンでいずれかを選択すると、使用できるサンプル コードが表示されます。

インライン XSLT スクリプトおよびインライン XSLT 呼び出しテンプレートは、外部アセンブリの関数を呼び出すことができます。 このような呼び出しを行うには、グリッドの カスタム拡張 XML プロパティを設定する必要があります。 詳細については、UI ガイダンスと開発者 API 名前空間リファレンス「カスタム拡張 XML (Grid プロパティ)」を参照してください。

インライン XSLT

インライン XSLT スクリプトでは、出力を生成することのみが可能です。 Scripting Functoid には入力リンクがない可能性があります。 また、この Functoid は、送信先スキーマのレコードやフィールドに直接リンクする必要があります。

さらに、このスクリプトは、ターゲット ノードとそれに属する下部構造を作成します。

次の入力インスタンス メッセージには、連絡先に関する情報を示す 2 つの要素が含まれます。

<ns0:SourceInstance xmlns:ns0="http://SourceInstanceNamespace">  
    <Address>  
        <Contact>Karin Zimprich</Contact>  
        <ContactType>Referral</ContactType>  
    </Address>  
</ns0:SourceInstance>  

次のインライン XSLT スクリプトは、スクリプト バッファーに入力され、 Contact フィールドと ContactType フィールドを属性に変換します。

<ContactInfo xmlns:p="http://SourceInstanceNamespace">  
     <xsl:variable name="var:var1" select="/p:SourceInstance/Address/ContactType" />  
     <xsl:attribute name="ContactType">  
          <xsl:value-of select="$var:var1" />  
     </xsl:attribute>  
     <xsl:variable name="var:var2" select="/p:SourceInstance/Address/Contact" />  
     <xsl:attribute name="Contact">  
          <xsl:value-of select="$var:var2" />  
     </xsl:attribute>  
</ContactInfo>  

このスクリプトは、前の入力インスタンス メッセージに対して実行される場合、出力スキーマが適切であると仮定して、次の出力を生成します。

<ns0:OutInstance xmlns:ns0="http://More_XSLT.Out">  
    <ContactInfo ContactType="Referral" Contact="Karin Zimprich" xmlns:p="http://SourceInstanceNamespace">  
    </ContactInfo>  
</ns0:OutInstance>  

Scripting Functoid へのリンクがないため、XSLT スクリプトが入力インスタンス メッセージからデータを取得できなくなることはありません。 このスクリプトでは、入力インスタンス値へのパスを指定します。

インライン XSLT スクリプトの別の例については、「XML ツール (BizTalk Server サンプル フォルダー)」を参照してください。

インライン XSLT 呼び出しテンプレート

インライン XSLT スクリプトのように、インライン XSLT 呼び出しテンプレートは、送信先ノードに直接接続する必要があります。 ただし、インライン XSLT 呼び出しテンプレートでは、送信元スキーマおよび他の Functoid からのリンクを使用できます。

呼び出しテンプレートは、送信先ノードおよびそのサブ構造を作成します。

[スクリプトの種類の選択] ドロップダウンで [インライン XSLT 呼び出しテンプレート] を選択すると、2 つの要素を連結するサンプル XSLT 呼び出しテンプレート入力スクリプト バッファーに表示されます。

インライン XSLT 呼び出しテンプレートの別の例については、「XML ツール (BizTalk Server サンプル フォルダー)」を参照してください。

参照

スクリプト Functoid
外部アセンブリを使用するスクリプト
インライン C#、JScript .NET、および Visual Basic .NET を使用するスクリプト
マップにスクリプト Functoid を追加する方法
スクリプト Functoid を構成する方法