赤紫蘇のサンプルを試してみる

赤紫蘇 ２．

サンプルを試してみる

サンプル

以下のサンプルプログラムを試していただけます。

| all_test サンプル <xs:all>の実装サンプルです。 basketサンプル <xs:choice>の実装サンプルです。 model_arrayサンプル パーティクル内の配列をシリアライズ、デシリアライズするサンプルです。 osixaka_sampleサンプル(忍坂用) 忍坂が生成するファイルをビルドする例です。 parserサンプル all_test、basket、model_array、project、projectmapのすべてに対応した汎用XMLデシリアライザサンプルです。 projectサンプル <xs:sequence>の実装サンプルです。 projectmapサンプル <xs:sequence>をC++コンテナstd::map<>で実装したサンプルです。

Windowsの場合、上記のプログラム群は、akaxiso2\bin に作成されます。(正確には、akaxiso2ディレクトリは、それぞれのバージョン名を含んでいます。例．akaxiso2.-1.0など)
Linuxの場合、akaxiso_samplesディレクトリに、all_test、basket、model_array、parser、project、projectmapサンプルが作成されます。

サンプルの実行形式

サンプルプログラム、all_test、basket、model_array、projectは、以下の形式で実行できます。

<プログラム名> [-s|-p]

オプション

-s : XML文書へのシリアライズを行い、標準出力へと出力する。
-p : XML文書を標準入力から読み込み、パース(デシリアライズ)する。

サンプルプログラム、projectmapは、二つの形式のXML文書を生成します。そのため、実行形式は、以下の通りとなります。

projectmap [-s1 | -s2 |-p]

-s1、-s2 : XML文書を標準出力に書き込みます。
それぞれの文書が含む情報は等価ですが、XMLの内容モデルへの割り当て方が違います。
-p : XML文書を標準入力より読み込み、パース(デシリアライズ)します。

サンプルプログラム、parseは、上記のサンプルプログラムが生成するXML文書をパース(デシリアライズ)し、再度、シリアライズするプログラムです。

サンプルの実行

Windowsであれば、akaxiso2\binにて以下の操作を行ってください。

XML文書のシリアライズ例

akaxiso2\bin> basket -s

XML文書のパース(デシリアライズ)例

akaxiso2\bin> basket -s | basket -p

Linuxであれば、akaxiso2/akaxiso_samplesにて、以下の操作を行ってください。

XML文書のシリアライズ例

$ ./basket -s

XML文書のパース(デシリアライズ)例

$ ./basket -s | ./basket -p