ここで説明する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 |

上記のサイトからパッケージを入手し,次のようにjarファイルを一式揃えます。説明を簡単にするために,これらは同じフォルダーに置くものとします。
| XML基本ツール | jarファイル名 |
|---|---|
| sax.Counter sax.DocumentTracer sax.Writer | xercesSamples.jar |
| Trang | trang.jar |
| Jing | jing.jar |
| XT | xt20051206.jar |
| 各ツールで共用する | xml-apis.jar |
| isorelax.jar | |
| serializer.jar | |
| saxon.jar | |
| resolver.jar | |
| xercesImpl.jar |
MS Windows,MacOS X共に,XMLで扱うテキストデータからなるファイルの拡張子(例えば,.xml,.xsl,.rng,.dtd)の大半は特定のアプリケーションに結びつけられていません。それらはテキスト・エディターで開くようにしてください。また,XMLデータの符号系は「UTF-8」,データの行末符号は「LF」にするといいでしょう。
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ウィンドウ上の日本語文字列のコピーとコマンド・ラインへのペーストは可能ですが,コマンド・ラインへのキー入力はできません。
指定したディスク・ドライブを現在の作業用ディスク・ドライブとします。
ディスク・ドライブ:
現在の作業用ディレクトリ内のファイル情報を表示します。
dir
指定したディレクトリを現在の作業用ディレクトリとします。
cd ディレクトリ
指定したファイルの内容を表示します。
type ファイル
javaアプリケーションのクラスをオプションと引数に従って実行します。
java [-オプション] クラス [引数 ...]
javaアプリケーションのjarファイルをオプションと引数に従って実行します。
java [-オプション] -jar jarファイル [引数 ...]
MS-DOSを終了する。
exit
整形式のXMLファイルを検証し,その情報を表示します。
java -classpath xercesImpl.jar;xercesSamples.jar sax.Writer XMLファイル
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ファイル
RelaxNGファイルによってXMLファイルを検証します。
java -cp jing.jar com.thaiopensource.relaxng.util.Driver RelaxNGファイル XMLファイル
XMLファイルをXSLファイルによってXHTMLファイルへXSL変換します。
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(10.4 Tiger以降)には,Java実行時環境(JRE)があらかじめインストールされていますので,ここでのXML基本ツール(Javaアプリケーション)は直ぐに利用できます。
MacOS XにおけるJavaアプリケーションは,Terminalから起動します。シェルとしてはbashが利用できます。Terminalのウィンドウ設定を開き,ターミナルインスペクタにおけるディスプレイで日本語表示が有効になるように設定してください。クラス・パスの区切りは「:」,ディレクトリの区切りは「/」です。
MacOS XにおけるXML基本ツールの操作の例を次に示します。
注:MacOS X(Terminal)では,コマンド・ラインへの日本語文字列のペーストは可能ですが,ペーストされた日本語は8進数で表示されます。ただし,後続の表示がうまくいかない場合があります。
現在の作業用ディレクトリのパスを表示します。
pwd
現在の作業用ディレクトリ内のファイル情報を表示します。
ls -v
指定したディレクトリを現在の作業用ディレクトリとします。ホームは「~」で表します。
cd ディレクトリ
指定したファイルの内容を表示します。
cat ファイル
javaアプリケーションのクラスをオプションと引数に従って実行します。
java [-オプション] クラス [引数 ...]
javaアプリケーションのjarファイルをオプションと引数に従って実行します。
java [-オプション] -jar jarファイル [引数 ...]
コマンドの履歴を表示します。
history
コマンドの履歴を消去します。
history -c
Terminalを終了します。
exit
整形式のXMLファイルを検証し,その情報を表示します。
java -classpath xercesImpl.jar:xercesSamples.jar sax.Writer XMLファイル
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ファイル
RelaxNGファイルによってXMLファイルを検証します。
java -cp jing.jar com.thaiopensource.relaxng.util.Driver RelaxNGファイル XMLファイル
XMLファイルをXSLファイルによってXHTMLファイルへXSL変換します。
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基本ツールと同じ機能を備えた,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 |