---
title: "必要なJSON開発ツールは、これだけで十分"
date: "2018-05-29"
categories: 
  - "development"
  - "json"
  - "tools"
tags: 
  - "json"
  - "json-schema"
  - "mapforce"
  - "raptorxml"
  - "xmlspy"
description: XMLSpyは、インテリジェントな編集機能、XSDからJSONスキーマへの変換機能、そして自動ドキュメント生成機能など、JSON開発を容易にする様々な機能を提供します。
---
Status: #blog

Tags:  #json #json-schema #mapforce #raptorxml #xmlspy

Categories: [development](/blog/ja/category/development.md) | [json](/blog/ja/category/json.md)
# 必要なJSON開発ツールは、これだけで十分

XMLSpyは、JSON関連の開発作業を行う際に、開発者が最初に思いつくツールではないかもしれませんが、XMLSpyはJSON、JSONスキーマ、および関連技術に対する包括的なサポート機能を備えています。

ここ数回の製品リリースにおいて、JSONおよびJSON5データの編集および変換のための高度な機能を製品に追加しました。さらに、XMLスキーマとJSONスキーマ間のワンクリック変換、サンプルデータの生成、およびJSONスキーマのドキュメント生成機能を実装し、一連の機能が完成しました。そして、最近では、XSLT、XPath、およびXQueryを使用したJSONデータの処理機能を追加しました。

この機能の具体的な活用例をいくつか見ていきましょう。そして、これらの時間節約に役立つツールが、XMLSpyを唯一必要なJSON開発ツールたらしめる理由をご理解いただけるはずです。

![JSONツールを使用している開発者](/blog/images/JSON_blog_1.jpg)

<!--more-->

## JSONエディタ および JSONスキーマエディタ

XMLSpyに搭載されている[JSONエディタ](https://www.altova.com/ja/xmlspy-xml-editor/json_editor)は、JSONおよびJSON5のドキュメントを編集する際に、インテリジェントなテキスト表示とグラフィカルなグリッド表示の両方を提供します。また、正しい選択を支援するための便利な入力補助機能やメニューも備わっています。

[JSONスキーマエディタ](https://www.altova.com/ja/xmlspy-xml-editor/json_schema_editor)には、以下に示すようなグラフィカルなスキーマエディタが含まれています。JSONスキーマは、入れ子構造のコンテナの集合として構成されているため、グラフィカルな表現に適しています。スキーマを視覚的に扱うことで、迅速な開発と構造の可視化が可能になります。

![XMLSpyにおけるJSONスキーマエディタ ](/blog/images/json-schema-view.png)

他のJSON編集ツールとは異なり、XMLSpyはJSONとXMLの両方をサポートしており（そして、それらの間で変換も可能です）。これにより、XML、AJAX、Webサービスアプリケーションを開発する環境と同一の環境で、JSONを簡単に扱えるようになり、両方の利点を享受できます。

## XSDとJSONスキーマ間の変換

開発者は、JSONデータの交換において、データ検証の利点を活用するために、JSONスキーマの利用を増やす傾向にあります。しかし、そのためにはスキーマの開発に多大な時間と労力を費やす必要があり、これはJSONが本来持つ「シンプルさ」というコンセプトとは、ある意味で矛盾しています。

幸いなことに、最初から全てをやり直す必要はありません。既存のXMLスキーマが多数存在するため、[XSDからJSONスキーマへの変換](https://www.altova.com/ja/xmlspy/json-schema-editor.html)を迅速かつ容易に行えることは、開発者がスキーマを最初から作成するのではなく、実装に集中できるようになります。XMLSpyは、ワンクリックでこの機能を提供します。また、[JSONスキーマからXSDへの変換](https://www.altova.com/ja/xmlspy/json-schema-editor.html)も同様に簡単に行うことができ、完全な柔軟性を提供します。既存のJSONスキーマがない場合でも、XMLSpyをJSONからXSDへの変換ツールとして利用できます。

ここでは、比較的よくある取引の例として、発注書について見ていきましょう。この用途で使用できる既存のXMLスキーマは数多く存在し、XMLSpyのExamplesディレクトリに同梱されているものもあります。以下に、グラフィカルなXMLスキーマエディタに表示されているスキーマを示します

![XMLスキーマ](/blog/images/xml-schema.png)

使用方法： _XMLスキーマをJSONスキーマに、またはその逆方向に変換します_ 「変換」メニューのオプションで、変換に関する詳細設定を指定することができます

![XSDをJSONスキーマに変換するためのオプション](/blog/images/xsd-to-json-schema-options.png)

…そして、OKをクリックして完了です [JSONスキーマを生成します](https://www.altova.com/ja/xmlspy/json-schema-editor.html), ここに、グラフィカルなJSONスキーマエディタで表示されている内容を示します

![JSONスキーマ](/blog/images/json-schema.png)

以下に、テキスト表示で確認できる、対応するJSONスキーマのコードの一部を示します

![JSONスキーマのコード](/blog/images/json-schema-text.png)

ここから、スキーマをグラフィカル表示またはテキスト表示でさらに編集したり、サンプルとなるJSON形式のデータを作成したりすることができます。

このXSDからJSONスキーマへの変換機能は、既存のXMLとJSONのインスタンスファイル間の変換機能に追加されるものです。

## サンプルJSONデータの生成

JSONスキーマが完成したら、それに基づいてサンプルデータを作成すると、追加の編集作業を始める際に役立ちます。

XMLSpyの「サンプルJSONファイル生成」ダイアログでは、必須ではないオブジェクトのプロパティの生成、配列の長さ、および再帰的な定義の繰り返し回数を指定できます。また、現在アクティブなJSONスキーマを生成されたJSONサンプルファイルに自動的に割り当てるかどうかを指定することも可能です。OKをクリックすると、すぐに利用可能な有効なJSONインスタンスが生成され、それを起点として作業を開始できます。

![サンプルJSONインスタンスを生成します](/blog/images/generate-sample-json.png)

以下に、上記のJSONスキーマから生成されたサンプルの一部を示します

![サンプルJSONファイル](/blog/images/sample-json-instance.png)

## JSONスキーマのドキュメントを生成します

スキーマ開発において、ドキュメントは非常に重要な要素であり、他の開発者との円滑なコミュニケーションを可能にし、スキーマが進化する過程での明確な理解を助けます。XMLSpyは、自動的にJSONスキーマのドキュメントを生成する機能を提供しており、これは大幅な時間短縮に繋がります。また、多数のオプションを用意しており、ドキュメントをカスタマイズし、印刷形式および/またはWeb形式で出力することができます。

以下に、上記JSONスキーマに関するドキュメントの一部をHTML形式で生成したものを掲載します

![JSONスキーマのドキュメント](/blog/images/json-schema-documentation.png)

## XSLTとXQueryによるJSONデータの処理

XMLSpyは、XSLT、XPath、XQueryに関するあらゆる機能を提供しています。さらに幸いなことに、これらの標準化された言語の最新バージョンでは、JSONマップ、配列、オブジェクトを対象としたクエリや変換を行うための、洗練された機能も提供されています。

 XMLSpyの高度なエディタや、インタラクティブなXPath/XQueryビルダー＆評価ウィンドウには、以下の機能が含まれています

- XPath/XQueryウィンドウで、XPath 3.1またはXQuery 3.1を使用してJSONドキュメントを検索します
- XSLT 3.0 または XQuery 3.1 のファイルを使用して、JSON ドキュメントを変換します

仕組みを確認してください

![](https://www.youtube.com/watch?v=Hd5W6IpDA8Y)

## 包括的なJSON開発

上記の機能により、[XMLSpy](https://www.altova.com/ja/xmlspy.html)におけるJSONおよびJSONスキーマの機能がさらに強化され、現在は以下の機能が含まれています

- JSONおよびJSON5形式のサポート
- 知的 [JSONエディタ](https://www.altova.com/ja/xmlspy/json-editor.html) テキスト表示とグリッド表示に対応
- グラフィカルな。
または、グラフィックに関する [JSONスキーマエディタ](https://www.altova.com/ja/xmlspy/json-schema-editor.html)
- JSONスキーマに基づく検証
- [XMLとJSON間のデータ変換（1ファイルまたは複数ファイル）](https://www.altova.com/ja/xmlspy-xml-editor/xml-to-json)
- XSDとJSONスキーマ間の変換ツール
- JSONデータのサンプル生成
- JSONスキーマのドキュメント
- JSON データを XSLT を使用して変換する
- JSONデータをXPathとXQueryを使って検索する

## 製品ライン全体でJSON形式に対応しています

Altova社は、幅広い製品ラインナップを提供しています [JSON関連ツール](https://www.altova.com/ja/json-tools), 編集作業から、大量データの検証、そしてデータ統合まで、幅広い業務に対応します。

もし [JSONデータのマッピングと統合](https://www.altova.com/blog/json-data-mapping-and-transformation-with-mapforce/), 例えば、JSONデータを生成したり、リレーショナルデータベースにJSONデータを書き込んだりする必要がある場合、MapForceという、Altova社が提供する強力なデータ変換ツールでサポートを受けることができます [データマッピングツール](https://www.altova.com/ja/mapforce.html).

高出力で高性能な用途に最適です [JSONの検証](https://www.altova.com/ja/raptorxml.html), 確認する [RaptorXML Server](https://www.altova.com/ja/raptorxml.html).

## 無料トライアル版をダウンロードする

これらのいずれも試すことができます [JSON関連のツールを30日間、無料でご利用いただけます](http://www.altova.com/ja/download).
