|  |  | 赤紫蘇２.
|  | 成長の記録(Release notes)
| akaxiso2.0-beta2 |
| 赤紫蘇２とは..... リファレンス 赤紫蘇２ （APIリファレンス) 忍坂２ リリースノート ダウンロードとビルド 赤紫蘇２のサンプルを試す 忍坂２のサンプルを試す BCB6で ICU/Xerces-C++を使う 赤紫蘇を育てる人たち リンク 赤紫蘇１　ことはじめ |  | 赤紫蘇2.0 beta2(2004/12/19) 全般 ディレクトリ、プロジェクトファイル、ライブラリ名などの名前の整理。 ディレクトリ、プロジェクト名変更 akaxiso -> akaxiso2 akaxiso_samples -> akaxiso2_samples osixaka_samples -> osixaka2_samples osixaka、akaxiso/schemaは、deprecated ライブラリ名 libakaxiso -> libakaxiso2 libosixaka -> libosixaka2 VC Toolkit 2003 makefile追加 VC Toolkit 2003 でも、libakaxiso2.libとosixaka2がビルド可能。 赤紫蘇２ 変更・機能追加 環境設定用マクロ名のプレフィックスとして、AKAXISO2_を追加。 PACKAGE/VERSIONマクロを削除 AKAXISO2_PACKAGE、AKAXISO2_VERSIONへと変更 <xs:anyAttribute>、<xs:attribute>のnamespaceList属性の機能を追加 emptiable な配列/choiceを追加 minOccurs != 0 な条件でも、出現頻度0を許す設定を追加。 sequence/all/arrayの、occurrence()の指定削除 choiceの場合は使用可。(ルートノードの出現頻度指定に必要。) aka::preconditions -> aka::entity_complementsへとクラス名変更 bool entity_complements::check_id() constからconstを除去。 aka::simpletype::read_text()、aka::simpletype<>::write_text()のインターフェース変更。 aka::choice<>::moc を aka::choice<>::binderに名称変更。 aka::any, aka::wildcardを分離 (aka::anyは、ワイルドカード要素、もしくは、別に定義されるドキュメントと定義される。 aka::wild_cardは、ワイルドカード要素そのものとなる。) XMLシリアライザに、デフォルト名前空間の指定機能を追加 xmlns="URI"という形で、デフォルト名前空間を用いてシリアライズ可能。 以下APIを参照のこと。 - serializer::default_ns_prefix(const std::string &prefix); - serializer::default_ns_uri(const std::string &uri); aka::qnameクラスのコンストラクタをexplicitに変更 aka::qname::get_uri_id() -> aka::qname::get_namespace_id()と名称変更。 aka::any_attribute -> aka::wc_attributeと名称変更 配列や<xs:choice>について要素が0個と成りうる場合の出現頻度検証ロジックを修正 バグフィックス aka::exceptionが、例外がthrowされる場所を表示しない expatを使用した際に、名前空間の処理が属性の出現順に依存する デフォルト名前空間使用時のタグ名の比較が、正常に行われない。 忍坂２ 機能追加・変更 識別子空間の整理 XMLスキーマ中での設定機能追加。 - osx:include、osx:xiso_include、osx:ximpl_include - osx:leaf - osx:classnameなど。 設定ファイル再構築(中) xs:any、xs:anyAttributeのnamespace属性の扱いを追加。 トップレベルのxs:attributeが名前空間を扱えるよう変更。 忍坂１と同等のソースを生成するオプション(-1)を追加。 MFCスタイルのメンバ名(m_member)を生成するオプション(-M)を追加 赤紫蘇化エンジンを再構築 単純型の依存性解決エンジンを追加 単純型をルート要素するドキュメントの生成機能を追加 複数スキーマファイルからのコード生成機能を追加(-n -f オプション) 不完全型を配列要素で使用する/しないを指定するオプション(-iオプション)を追加。 グローバルアトリビュートのメンバ名は、名前空間プレフィックスを含むように変更。 生成されるクラスの依存性解決の際、不完全型を極力使用しないように変更。 DTD->XMLSchema変換時のエンコーディングをサポート。 expatが使用されていないときに、DTD->XMLSchema変換オプションを使用不可に設定。 忍坂２で使用されるXML文書定義(XMLSchemaそのもの含む)を、忍坂２で生成した バグ修正 クラスの前置宣言のトークン置換が行われていない クラス名、メンバ名のエスケープ処理が行われていない DTD->XMLSchema変換のバグとり。ソース生成ロジックの改善。 DTD中に定義される単純型(正規表現を使用)も変換するようコードを追加。 赤紫蘇2.0 beta1 (2004/8/16) 赤紫蘇 Solaris/g++2.95.3対応 ユーザMLの小宮山さん、三嶋さん、ありがとうございました。 MacOS X 10.2 対応(babelを使用しない場合に限る。) iBookを譲っていただき、さらに、MacOSの手ほどきをしてくださった西澤さん、 ありがとうございました。 BCB6プロジェクトファイル更新 吉岡さん、おつかれでやんす。 aka:all以下に現れるxs:anyTypeについて実装もれを修正 aka:simplecontentについて、固定値を与えた際のバグをフィックス ライブラリ内の単語を修正 parse -> deserialize Yggdrasil (世界樹)からexpatへと同梱XMLパーサを切り替え ソースからの日本語削除(gcc-2.95系対応) configureによる構成の設定変更を行えるようにした。(Linux、UNIX) ディレクトリ構造の整理と再構築 こまごまとしたFix、テストの追加 忍坂２ 設定ファイルオプションを追加 DTD -> XMLSchema変換機能を追加 赤紫蘇2.0 beta0 (2004/6/7) 忍坂２α版リリース g++3.4.0 サポート XML Namespace 1.1 サポート（シリアライザ、デシリアライザとも) こまごまとしたBug-fix、APIの整理 組み込み型のサポート コンパイルの高速化(インクルードファイルの最適化) 起動時間の短縮(babelの変換テーブルを静的に確保)

ホームに戻る 赤紫蘇２プロジェクトページへ