XML基本ツール
2007年12月1日

概要

ここで説明するXML基本ツールは,主にJames Clark氏が開発し無償で頒布している,XMLの基本に関わる機能を実現したJavaアプリケーションと関連するアプリケーションであり,私(岸 和孝)が説明書を日本語訳し,パッケージを再編成したものです。複製許可については,各パッケージの著作権説明を参照してください。XML基本ツールの利用にあたっては,各頒布サイトでパッケージの最新版を入手するように努めてください。

XML基本ツールは,次のような機能を実現したJavaアプリケーションです。

XML基本ツール機 能パッケージの入手先
sax.Counter
sax.DocumentTracer
sax.Writer
整形式のXML文書を検証し,文書に関する情報を表示する。[詳細説明] The Apache XML Project
Trang 異なるスキーマ言語で記述された文書型を相互に変換する。[詳細説明] Thai Open Source Software Center Ltd
Jing スキーマ言語に従って妥当なXML文書を検証する。[詳細説明] Thai Open Source Software Center Ltd
XT XSLスタイルシートによってXML文書を変換する。[詳細説明] BLNZ
▼図 XML基本ツールの機能

XML基本ツールを構成するjarファイル

上記のサイトからパッケージを入手し,次のようにjarファイルを一式揃えます。説明を簡単にするために,これらは同じフォルダーに置くものとします。

XML基本ツールjarファイル名
sax.Counter
sax.DocumentTracer
sax.Writer
xercesSamples.jar
Trangtrang.jar
Jingjing.jar
XTxt20051206.jar
各ツールで共用するxml-apis.jar
isorelax.jar
serializer.jar
saxon.jar
resolver.jar
xercesImpl.jar

XML基本ツールの操作

MS Windows,MacOS X共に,XMLで扱うテキストデータからなるファイルの拡張子(例えば,.xml,.xsl,.rng,.dtd)の大半は特定のアプリケーションに結びつけられていません。それらはテキスト・エディターで開くようにしてください。また,XMLデータの符号系は「UTF-8」,データの行末符号は「LF」にするといいでしょう。

MS WindowsにおけるXML基本ツールの操作

MS Windows(2000以降)には,Java実行時環境(JRE)は必ずしもインストールされていません。場合によっては,ここでのXML基本ツール(Javaアプリケーション)を利用する前に,Java.comからJREをインストールしたり,コントロールパネルで環境変数を設定したりする必要があります。

MS WindowsにおけるJavaアプリケーションは,コマンドプロンプト(MS-DOS)から起動します。クラス・パスの区切りは「;」,ディレクトリの区切りは「\」です。

MS WindowsにおけるXML基本ツールの操作の例を次に示します。

注:MS Windows(MS-DOS)におけるXML基本ツールは,「Shift_JIS」で符号化されたデータを,XML宣言で「Shift_JIS」を指定しても,うまく扱えない場合があります。また,MS-DOSウィンドウ上の日本語文字列のコピーとコマンド・ラインへのペーストは可能ですが,コマンド・ラインへのキー入力はできません。

MS-DOS操作の例

指定したディスク・ドライブを現在の作業用ディスク・ドライブとします。

ディスク・ドライブ:

現在の作業用ディレクトリ内のファイル情報を表示します。

dir

指定したディレクトリを現在の作業用ディレクトリとします。

cd ディレクトリ

指定したファイルの内容を表示します。ただし,Shift_JIS以外で符号化されたデータは字化けします。

type ファイル

javaアプリケーションのクラスオプション引数に従って実行します。

java [-オプションクラス引数 ...]

javaアプリケーションのjarファイルオプション引数に従って実行します。

java [-オプション] -jar jarファイル引数 ...]

MS-DOSを終了する。

exit

sax.Writerの実行

整形式のXMLファイルを検証し,その情報を表示します。ただし,どの符号系で符号化された日本語データも字化けします。

java -classpath xercesImpl.jar;xercesSamples.jar sax.Writer XMLファイル

Trangの実行

SGML構文のDTDファイルをXML構文のRelaxNGファイルへ変換します。

java -jar trang.jar -I dtd -O rng DTDファイル RelaxNGファイル

XML構文のRelaxNGファイルをSGML構文のDTDファイルへ変換します。

java -jar trang.jar -I rng -O dtd RelaxNGファイル DTDファイル

Jingの実行

RelaxNGファイルによってXMLファイルを検証します。

java -cp jing.jar com.thaiopensource.relaxng.util.Driver RelaxNGファイル XMLファイル

XTの実行

XMLファイルXSLファイルによってXHTMLファイルへXSL変換します。ただし,このコマンド・ラインは実際は1行で表します。

java -classpath xt20051206.jar;xercesImpl.jar 
     -Dcom.jclark.xsl.sax.parser=org.apache.xerces.parsers.SAXParser 
     com.jclark.xsl.sax.Driver XMLファイル XSLファイル XHTMLファイル

MacOS XにおけるXML基本ツールの操作

MacOS X(10.4 Tiger以降)には,Java実行時環境(JRE)があらかじめインストールされていますので,ここでのXML基本ツール(Javaアプリケーション)は直ぐに利用できます。

MacOS XにおけるJavaアプリケーションは,Terminalから起動します。シェルとしてはbashが利用できます。Terminalのウィンドウ設定を開き,ターミナルインスペクタにおけるディスプレイで日本語表示が有効になるように設定してください。クラス・パスの区切りは「:」,ディレクトリの区切りは「/」です。

MacOS XにおけるXML基本ツールの操作の例を次に示します。

注:MacOS X(Terminal)では,コマンド・ラインへの日本語文字列のペーストは可能ですが,ペーストされた日本語は8進数で表示されます。ただし,後続の表示がうまくいかない場合があります。

bash操作の例

現在の作業用ディレクトリのパスを表示します。

pwd

現在の作業用ディレクトリ内のファイル情報を表示します。

ls -v

指定したディレクトリを現在の作業用ディレクトリとします。ホームは「~」で表します。

cd ディレクトリ

指定したファイルの内容を表示します。ただし,文字セットエンコーディングの指定と一致しないデータは字化けします。

cat ファイル

javaアプリケーションのクラスオプション引数に従って実行します。

java [-オプションクラス引数 ...]

javaアプリケーションのjarファイルオプション引数に従って実行します。

java [-オプション] -jar jarファイル引数 ...]

コマンドの履歴を表示します。

history

コマンドの履歴を消去します。

history -c

Terminalを終了します。

exit

sax.Writerの実行

整形式のXMLファイルを検証し,その情報を表示します。

java -classpath xercesImpl.jar:xercesSamples.jar sax.Writer XMLファイル

Trangの実行

SGML構文のDTDファイルをXML構文のRelaxNGファイルへ変換します。

java -jar trang.jar -I dtd -O rng DTDファイル RelaxNGファイル

XML構文のRelaxNGファイルをSGML構文のDTDファイルへ変換します。

java -jar trang.jar -I rng -O dtd RelaxNGファイル DTDファイル

Jingの実行

RelaxNGファイルによってXMLファイルを検証します。

java -cp jing.jar com.thaiopensource.relaxng.util.Driver RelaxNGファイル XMLファイル

XTの実行

XMLファイルXSLファイルによってXHTMLファイルへXSL変換します。ただし,このコマンド・ラインは実際は1行で表します。

java -classpath xt20051206.jar:xercesImpl.jar 
     -Dcom.jclark.xsl.sax.parser=org.apache.xerces.parsers.SAXParser 
     com.jclark.xsl.sax.Driver XMLファイル XSLファイル XHTMLファイル

その他のXML基本ツール

このXML基本ツールと同じ機能を備えた,Javaアプリケーションでないその他の,使い勝手がいいXML基本ツールを次に示します。これらは独立したアプリケーションであり,Javaの設定は不要です。

XML基本ツール機 能パッケージの入手先
Jing for Win32 スキーマ言語に従って妥当なXML文書を検証する。MS Windows(Win32)アプリケーション。[詳細説明] Thai Open Source Software Center Ltd
XML Nanny スキーマ言語に従ってXML文書を検証する。MacOS X(Cocoa)アプリケーション。[詳細説明] Todd Ditchendorf