LoginSignup
6
4

More than 5 years have passed since last update.

自作XSDをEclipseが解析可能にする2つの方法

Last updated at Posted at 2014-12-27

概要

自作した XSD ファイルを Eclipse に認識させ、解析されるようにする 2 つの方法を解説します。この 2 つの方法のいずれかで実現できます。

以降“自作した XSD ファイル”のことを XML Schema ファイルと称します。

使用する Eclipse は Pleiades プラグインが適用されていることを前提とします。

方法1:Eclipse プラグインで実現

ここでは仮に XML スキーマ名を“http://xmlns.my-server.local/sample/XMLSchema/foobar.xsd”にしたとします。

Eclipse プラグインを作成する

  1. メインメニューの“ファイル”を選択
  2. “ファイル”メニューの“新規”を選択
  3. “新規”メニューから“プロジェクト...”を選択
  4. “ウィザードを選択”と書かれたダイアログボックスから“プラグイン・プロジェクト”を選択
  5. “プラグイン・プロジェクト”と書かれたページにプロジェクト名を記入
  6. 同ページ上の“Java プロジェクトの作成”チェックボックスからチェックを外す
  7. 同ページの“次へ”ボタンを押下
  8. “完了”ボタンを押下
  9. 作成されたプロジェクトに plugin.xml を追加する
  10. plugin.xml の“概要”タブを選択して“このプラグインはシングルトン”チェックボックスにチェックを入れる
  11. プロジェクト直下に xsd フォルダーを作成
  12. xsd/foobar.xsd、plugin.xml、build.propertiesを以下のようにする
  13. plugin.xmlをダブルクリックして表れる画面の“概要”タブを選択
  14. 概要タブ上の“エクスポート・ウィザード”からプラグインを作成
  15. プラグインとして作成された jar ファイルを Eclipse の Plugins フォルダーに格納
  16. Eclipse を再起動
xsd/foobar.xsd
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="foobar">
    <xsd:complexType>
      <xsd:sequence></xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>
plugin.xml
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
  <extension point="org.eclipse.wst.xml.core.catalogContributions">
    <catalogContribution>
      <!-- XML スキーマ名と XSD ファイルを結びつける -->
      <system systemId="http://xmlns.my-server.local/sample/XMLSchema/foobar.xsd"
              uri="xsd/foobar.xsd"/>
      <!-- 複数の XML スキーマがある場合は、ここに続けて system タグを記入 -->
    </catalogContribution>
  </extension>
</plugin>
build.properties
# META-INF/MANIFEST.MF と XML スキーマファイル、plugin.xml をプラグインに含める設定
bin.includes = META-INF/,\
               .,\
               xsd/,\
               plugin.xml

XML ファイルを記述する

XML スキーマを XML に記述します。

my-file.xml
<?xml version="1.0" encoding="utf-8"?>
<foobar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://xmlns.my-server.local/sample/XMLSchema"
        xsi:schemaLocation="http://xmlns.my-server.local/sample/XMLSchema http://xmlns.my-server.local/sample/XMLSchema/foobar.xsd"></foobar>

XML カタログを確認

Eclipse の設定から XML カタログを表示してください。

自作した XML スキーマがリストアップされていることを確認してください。

Eclipse で検証する

XML ファイルを右クリックして“検証”を選択して XML が正しいかどうかを検証してください。

方法2:XML Schema ファイルをプロジェクトに含めて実現

XSD ファイルを記述する

以下のようなファイルを foobar.xsd という名称で作成したとします。

foobar.xsd
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="foobar">
    <xsd:complexType>
      <xsd:sequence></xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

XML ファイルを記述する

noNamespaceSchemaLocation 属性に、作成した XSD ファイルを指定します。

my-file.xml
<?xml version="1.0" encoding="utf-8"?>
<foobar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="foobar.xsd"></foobar>

Eclipse で検証する

XML ファイルを右クリックして“検証”を選択して XML が正しいかどうかを検証してください。

6
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
4