# XQuery ツール

## XQuery ツール

XQueryの編集、デバッグ、およびコード生成を支援する強力なツール 

## XQueryとは何ですか？

XQueryは、XML Queryの略で、XMLデータを検索および変換するために設計された、柔軟で表現力豊かなクエリ言語です。最新のXQuery言語では、JSONデータの検索もサポートされており、データモデルにマップや配列が追加されています。XQueryを使用する際には、特定の情報をインスタンスドキュメントから取得するためのクエリを構築します。XQueryの中核となるのは、FLWOR式（「flower」と発音）です。XQueryに慣れていない方にとって、FLWOR式はSQLのSELECT文と非常に似ており、データベースのクエリに慣れている開発者にとっては理解しやすいでしょう。 

`[XQuery](https://www.w3.org/XML/Query/) の主な特徴は、複雑なXML構造を効率的に処理し、正確なデータ抽出や階層的な情報の操作を可能にすることです。XQueryは、情報抽出、要約レポートの作成、XMLデータのXHTMLへの変換、ウェブドキュメントの検索など、様々な用途に利用できます。

XQueryは、W3CのXML Queryワーキンググループによって開発・維持されており、これはXMLの拡張機能です [XPath](xpath-tools.md) この言語は、XML名前空間、XSLT、XSDなど、他のいくつかのW3C標準とも互換性があります。 

### XQueryを学びましょう

弊社の無料サービスをぜひご利用ください [オンラインでのXQueryトレーニング](training/xquery3.md) XQueryを学習するための入門コースです。経験豊富な開発者の皆様は、弊社の資料をご参照ください [XQuery 式のリファレンス](xpath-xquery-reference.md) XQuery式を作成するために使用される機能や演算子に関する詳細については、こちらのページをご覧ください。 

初心者から上級者まで、幅広い開発者向けの、無料で利用できるXQueryの自己学習チュートリアルで、ぜひ学習を始めてください。
[無料のオンラインXQueryトレーニングコース](training/xquery3.md)

## XQuery の編集

XMLSpyは、XQueryの編集とデバッグのための強力なツールを提供するとともに、XQueryの逆コンパイルや、XQueryの更新機能を利用した作業をサポートする革新的な機能も備えています。

### XQuery エディタ {#xquery-editor}

XMLSpyの[XQueryエディタ](xmlspy-xml-editor/xquery-editor.md) は、XQueryの構文に関する知識を内蔵しており、常に状況に応じた入力支援機能を提供します。例えば、ドキュメントを編集する際に、動的に更新される変数のリストを表示します。高度なテキスト表示でXQueryエディタを使用すると、構文のハイライト表示、自動コード補完など、インテリジェントな編集機能や、多くの時間節約に役立つツールを利用でき、XQueryドキュメントを迅速かつ容易に作成および編集できます。

[XMLSpyにおけるXQueryエディタ](https://www.altova.com/images/xmlspy-xquery-builder.png)

テキスト表示画面におけるXQueryの入力支援機能（IntelliSense）に加え、XMLSpyには、編集領域の下にXPath/XQueryウィンドウが用意されており、クリック操作で簡単に式を作成したり、リアルタイムでテストを実行したりすることができます。この機能を使って、現在開いているドキュメント、開いているすべてのファイル、特定のフォルダ、またはXMLSpyプロジェクト全体に対して、式を評価することができます。

### XQuery デバッガー {#xquery-debugger}

XMLSpyには、XQueryのテスト、問題解決、および最適化を行うための強力な[XQueryデバッガー](xmlspy-xml-editor/xquery-debugger.md) も含まれています。

このデバッガーを使用すると、評価処理をステップごとに実行でき、各ステップの実行結果を画面上で確認できます。デバッガーのツールバーにあるボタンを使用することで、XQueryの評価処理を「ステップイン」「ステップアウト」「ステップオーバー」といった操作で制御できます。 

[XQuery デバッガー](https://www.altova.com/images/xquery-debugger.png)

また、高度な**XQueryプロファイラ** も提供されており、これを使用することで、XQueryコードのパフォーマンスを分析し、最適化することができます。

### XQuery の逆マッピング {#backmapping}

また、[XQuery の逆マッピング機能](xmlspy-xml-editor.md#xslt_back-mapping) によって、特定の箇所を対象としたデバッグも可能です。逆マッピングを有効にすると、XQuery の実行結果を、元の XQuery と XML ドキュメントにマッピングし直すことができます。結果ドキュメント内のノードをクリックすると、そのノードを生成した XQuery 式と XML ソースデータが強調表示されます。

### XQuery 更新機能 {#xquery-update}

XMLエディタのXPath/XQueryウィンドウでは、[XQuery Update Facility (XQUF)](xmlspy-xml-editor/xquery-update-facility-editor.md) 1.0および3.0のステートメントの編集もサポートしており、高度な機能により、XQUFの式を完全な構文ハイライト表示、インテリジェントなコード補完、およびエラーメッセージ表示機能と組み合わせて記述できます。

結果表示領域では、変更内容の結果をプレビューできます。プレビュー領域内の結果をクリックすると、該当するノードがインスタンスドキュメント上で強調表示されます。その後、ワンクリックで更新を実行できます。更新は、現在のファイル内、または開いているすべてのファイル、フォルダ、またはXMLSpyプロジェクト全体に対して実行可能です。 **この機能は、XMLSpyにのみ搭載されています**. 

XQueryの更新機能エディターの使い方を学びましょう

[XQuery 更新機能に関するチュートリアル](https://www.youtube.com/watch?v=pJ0380Y1JPg)


## Call to Action

[XMLSpyについて](xmlspy-xml-editor.md)
[30日間の無料トライアル](xmlspy-xml-editor/download.md)

## データマッピングのためのXQueryを生成します

XQueryの用途の一つとして、あるXMLドキュメントを別のXMLモデルに変換することが挙げられます。このような変換を生成し、自動化するための最適なツールはMapForceです。MapForceは、グラフィカルなデータマッピングツールであり、視覚的に[XMLからXMLへの](mapforce/xml-mapping.md) マッピングを定義し、強力なフィルタリングおよびデータ処理機能を適用することができます。

[MapForceでXQueryを使用してXMLデータを変換する方法](https://www.altova.com/images/xquery-transform-xml.png)

MapForceで以下の機能を利用して、データのドラッグ＆ドロップによる統合が可能です 

- XMLからXMLへのマッピング
- XMLからXMLへの変換処理において、XQueryやXSLTを自動的に生成する機能
- XPath関数ライブラリおよび高度なデータ処理機能
- 視覚機能改善ツール
- 高性能な自動化を実現する [MapForce Server](mapforce-server.md)
- その他の形式（JSON、PDF、データベース、EDIなど）に対する追加サポート


## Call to Action

[MapForceについて](mapforce.md)
[30日間の無料トライアル](mapforce/download.md)

XQueryの処理においては、速度が最も重要です。 

## XQuery の処理

自動化されたXQuery処理には、高速性と効率性が求められます。RaptorXML Serverは、極めて高速な処理を実現するために、最初からそのように設計されています [XQuery処理](raptorxml.md) これは、並列処理、高度なコード最適化、そして少ないメモリ消費量によって実現されています。

RaptorXMLサーバーの主な機能：

- 設計段階から、並列処理、検証、およびデータ処理を考慮しています
- 高性能なXQuery処理とXSLT処理
- XML、JSON、およびXBRLの検証 
- 開発者向けの豊富な機能が搭載されており、エラー報告機能、.NETおよびPythonのAPIなど、様々な機能をご利用いただけます
- IDE（統合開発環境）内で、XMLSpyとの連携により、サーバー処理の速度が向上します

RaptorXML Serverを使用することで、XMLSpyやその他のツールで開発されたXQueryの処理を自動化できます。 


## Call to Action

[RaptorXMLサーバーについて](raptorxml.md)
[30日間の無料トライアル](raptorxml/download.md)

