W3CのXMLスキーマ勧告は、XML文書を記述するための正式なメカニズムを定義しています。この標準は広く普及しており、多くの標準化団体がデータの記述に使用しています。[1]
この標準は汎用性が高く、継承や型生成といったプログラミング概念を網羅していますが、複雑です。標準自体も高度な技術を扱い、3つのパートに分けて公開されているため、膨大な時間を費やさずに理解するのは困難です。
XMLスキーマエディターツール
XSD標準を扱う際にユーザーが直面する問題は、グラフィカル編集ツールを使用することで軽減できます。XMLスキーマの編集にはテキストベースのエディタも使用できますが、グラフィカルエディタには利点があります。ドキュメントの構造をグラフィカルに表示し、検証サポート、入力ヘルパー、その他の便利な機能を使用して編集できます。
これまでに開発されたエディターは、情報の表示にいくつかの異なるアプローチを採用しています。
テキストビュー
XMLスキーマのテキストビューは、スキーマをネイティブ形式で表示します。XMLスキーマエディタは通常、テキストビューにインライン入力ヘルパーや入力ヘルパーウィンドウ、コード補完、行番号表示、ソースの折りたたみ、構文の色分けなどの機能を追加します。より長く複雑なスキーマドキュメントの場合、高度な訓練を受けたコンテンツモデルアーキテクトでさえも作業が困難になることが多く、ソフトウェア企業はユーザーがこれらのドキュメントを視覚化するための新しい独創的な方法を開発するようになりました。
物理的なビュー
XMLスキーマの物理ビューでは、XMLスキーマ内の各要素がグラフィカルなエンティティとして表示されます。これによりXSDドキュメントは読みやすくなりますが、編集作業の簡素化にはほとんど役立ちません。これは主にXSD標準の構造に起因しており、使用される基本型とそれに含まれる型に依存するコンテナ要素が必要になります。つまり、論理構造に小さな変更を加えるだけで、ドキュメント全体に影響が波及する可能性があります。
XSD標準の構造は、エンティティがドキュメント内の他の場所から参照されることを意味します。エディタによっては、これらのエンティティを展開して参照元の場所で表示できるものもありますが、そうでないものもあります。その場合、手動で相互参照を行う必要がある場合があります。
論理ビュー
論理ビューでは、XMLスキーマの構造のみが表示されますが、記述に使用される構文の詳細は表示されません。これにより、XMLスキーマがより明確に表示されるため、ドキュメントの構造を理解しやすくなり、編集も容易になります。エディターはXSDドキュメントの論理構造を表示するため、すべての要素を表示する必要がなくなり、複雑さが大幅に軽減され、エディターが構文規則を自動的に管理できるようになります。
例
次の例では、単純なスキーマのソース XSD、論理ビュー、および物理ビューを示します。
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema elementFormDefault= "qualified" xmlns:xs= "http://www.w3.org/2001/XMLSchema" > <xs:complexType name= "NameType" > <xs:sequence> <xs:element name= "Forename" type= "xs:string" /> <xs:element name= "Surname" type= "xs:string" /> </xs:sequence> </xs:complexType> <xs:element name= "Person" > <xs:complexType> <xs:sequence> <xs:element name= "Name" > <xs:complexType> <xs:complexContent mixed= "false" > <xs:extension base= "NameType" > <xs:attribute name= "ID" type= "xs:string" /> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
| 物理的なビュー | 論理ビュー |
|---|---|
![]() |
|
スキーマのサンプルXMLドキュメント
<?xml version="1.0" encoding="utf-8" ?>
<Person>
<Name ID= "123456" > <Forename> John </Forename> <Surname> Doe </Surname> </Name> </Person>
ご覧のとおり、論理ビューではより多くの情報が提供されますが、構文の乱雑さがないため、理解しやすく、操作しやすくなります。
XMLスキーマエディター
XSD標準の支持が高まるにつれ、多くのXMLスキーマエディタが開発されてきました。XMLエディタの比較については、こちらをご覧ください。
| アプリケーション名 | スクリーンショット | コードエディター | 物理エディター | 論理エディター | 分割コード/ダイアグラムビュー | ライセンス |
|---|---|---|---|---|---|---|
| アルトバ XMLSpy | スクリーンショット | 独自の | ||||
| Eclipse XSD エディター (eclipse.org) | スクリーンショット | 限定編集 | フリーソフトウェア | |||
| IntelliJ「XSD / WSDL ビジュアライザー」プラグイン | Youtubeのスクリーンショットでの短い紹介 | 限定編集 | 独自の[2] | |||
| jEdit XMLプラグイン | スクリーンショット1 スクリーンショット2 |
フリーソフトウェア | ||||
| リキッド XML スタジオ | スクリーンショット | 独自の | ||||
| 酸素XML | スクリーンショット | 独自の | ||||
| スタイラススタジオ | スクリーンショット | 独自の | ||||
| XML Fox - フリーウェア版 | スクリーンショット 2009年1月22日Wayback Machineにアーカイブ | 独自の | ||||
| Eclipse データ型 (XSD) エディター 2011-09-15 にWayback Machineでアーカイブ | Youtubeのスクリーンショットでの短い紹介 | フリーソフトウェア | ||||
| XMLSeed 2013年10月17日アーカイブ - Wayback Machine | スクリーンショット 2013年10月17日Wayback Machineにアーカイブ | 読み取り専用 | 独自の | |||
| CAMエディタ 2017年7月11日アーカイブWayback Machineオープンソースツール | スクリーンショット | フリーソフトウェア |
参考文献
- ^ W3C 入門
- ^ 「フリーミアムの終了」、IntelliJ Marketplace の XSD Visualizer


