次の方法で共有


Azure Logic Apps の Standard ワークフローでスキーマを使用して XML ドキュメントを解析する (プレビュー)

適用対象: Azure Logic Apps (Standard)

重要

この機能はプレビュー段階にあり、「Microsoft Azure プレビューの追加使用条件」が適用されます。

エンタープライズ統合の企業間 (B2B) または BizTalk の移行シナリオでは、XML ドキュメントの解析が必要になる場合があります。 Standard ロジック アプリ ワークフローでは、XSD スキーマを必要とするスキーマを使用した XML の解析というアクションを使用して XML を解析できます。

たとえば、交換形式として XML を使用する顧客注文または請求書を定期的に受け取り、Azure Logic Apps のワークフロー デザイナーで個々の XML 要素にアクセスする必要があるとします。

制限事項

このアクションは現在、従量課金ロジック アプリ リソースとワークフローではまだサポートされていません。

前提条件

  • Azure アカウントとサブスクリプション。 サブスクリプションをまだお持ちでない場合には、無料の Azure アカウントにサインアップしてください。

  • トリガーで既に開始されている Standard ロジック アプリ ワークフロー。これにより、スキーマを使用した XML の解析アクションをワークフローに追加できます。

  • エンタープライズ統合および B2B ワークフローで使用する成果物 (取引先、契約、証明書など) を定義して保存する統合アカウント リソース。 このリソースでは、次の要件が満たされている必要があります。

    • ロジック アプリ リソースと同じ Azure サブスクリプションに関連付けられている。

    • スキーマを使用した XML の解析アクションを使用する予定のロジック アプリ リソースと同じ場所または Azure リージョンに存在する。

    • Standard ロジック アプリ リソースおよびワークフローで作業している場合は、次のシナリオに基づいて、統合アカウントをロジック アプリ リソースにリンクするか、XSD スキーマをロジック アプリ リソースに直接アップロードするか、またはその両方を行うことができます。

      • 必要なまたは使用したい成果物を含む統合アカウントが既にある場合は、成果物を使用する場所になる複数の Standard ロジック アプリ リソースに統合アカウントをリンクできます。 こうすることで、個々のロジック アプリに XSD スキーマをアップロードする必要がなくなります。 詳細については、ロジック アプリ リソースの統合アカウントへのリンクに関するページを参照してください。

      • 統合アカウントを持っていない場合、または "同じロジック アプリ リソース" 内の複数のワークフローで成果物を使用するだけの場合は、Azure portal または Visual Studio Code を使用してロジック アプリ リソースにスキーマを直接追加できます。

      そのため、統合アカウントがないか、または必要としない場合は、アップロード オプションを使用できます。 それ以外の場合は、リンク オプションを使用できます。 どちらの方法でも、同じロジック アプリ リソース内のすべての子ワークフローで、これらの成果物を使用できます。

    取引先、契約、証明書などの他の成果物を保存すると共に、AS2X12、および EDIFACT 操作を使用するには、引き続き統合アカウントが必要です。

  • スキーマを使用した XML の解析アクションで使用する XSD スキーマ。 このスキーマに、次の例のようなルート要素が含まれていることを確認します。

    <xs:element name="Root">
        <....>
    </xs:element>
    

スキーマを使用した XML の解析アクションを追加する

  1. Azure portal で、Standard ロジック アプリのワークフローをデザイナーで開きます。

  2. トリガーがない空のワークフローがある場合は、次の一般的な手順に従って必要なトリガーを追加します。 使用する場合は、次の手順に進みます。

    この例では、Request トリガーを使用します。

  3. ワークフロー内のスキーマを使用した XML の解析アクションを追加する手順で、次の一般的な手順に従って、スキーマを使用した XML の解析という名前のアクションを追加します

  4. [コンテンツ] ボックスで、HTTP 要求で受信した XML データを使用して解析する XML コンテンツを指定します。

    1. ワークフロー内の前の操作からの出力を選択するには、スキーマを使用した XML の解析アクションで、[コンテンツ] ボックス内を選択し、動的コンテンツ リスト オプション (稲妻アイコン) を選択します。

    2. 動的コンテンツ リストから、解析するコンテンツのトークンを選択します。

      この例では、トリガーから [本文] トークンを選択します。

      動的コンテンツ リストが開かれた Standard ワークフローを示すスクリーンショット。

  5. [ソース] リストから、XSD スキーマをアップロードした場所 (LogicApp リソースまたは IntegrationAccount のいずれか) を選択します。

  6. [名前] リストから、XSD スキーマを選択します。

  7. 完了したら、ワークフローを保存します。

    これで、スキーマを使用した XML の解析アクションの設定が完了しました。 実際のアプリでは、解析したデータを Salesforce などの基幹業務 (LOB) アプリに保存することが必要になる場合があります。 解析済みの出力を Salesforce に送信するには、Salesforce アクションを追加します。

  8. 解析アクションをテストするには、ワークフローをトリガーして実行します。 たとえば、要求トリガーの場合は、トリガーのエンドポイント URL に要求を送信します。

    スキーマを使用した XML の解析アクションは、ワークフローがトリガーされた後に、XML コンテンツが検証に使用できるようになると実行されます。

高度なパラメーター

次の表では、このアクションで使用できる高度なパラメーターについて説明します。

パラメーター 価値 説明
DTD Processing - Ignore
- Parse
- Prohibit
XML ドキュメント型定義 (DTD) の処理方法を指定します。
Normalize XML いいえまたははい XML コンテンツを正規化するかどうかを指定します。
Ignore Whitespace? いいえまたははい XML ドキュメントのスペース、タブ、空白行など、重要でない空白文字を解析するか無視するかを指定します。
Ignore XML Processing Instructions? いいえまたははい XML 処理命令に従うか無視するかを指定します。
Ignore XML Attributes いいえまたははい XML 属性を書き込むか無視するかを指定します。
Use Fully Qualified Names? いいえまたははい より単純なローカル名を使用するか、完全修飾 XML 名を使用するかを指定します。
Root Node Qualified Name <root-node-qualified-name> スキーマに参照されていない要素定義が複数含まれている場合のルート ノードの修飾名。