|  |  | 赤紫蘇２．リファレンス
|  | aka:choice 固定値の定義
| akaxiso2.0-beta2 |
| 赤紫蘇２リファレンス はじめに 1. 概要 2. ライブラリAPI 3.名前空間とQName 4.単純型 5. 組み込み型 6. 配列 7. ポインタ 8. データモデル 9. aka:sequence 9.1 メンバ定義(単純型) 9.2 メンバ定義(複雑型) 9.3 出現頻度定義 10. aka:all 11 aka:choice 11.1 要素の定義 11.2 固定値の定義 11.3 binderクラス 11.4 itemの扱い 11.5 出現頻度定義 12 aka:simplecontent 13 属性 14 シリアライズ 15 デシリアライズ 16 XMLスキーマ機能対応表 |  | aka:choiceにおいて、固定値(@fixed)を使用することができます。
    template<class IL>
    void fixed_item(const std::string &tagname, const std::string &fixed_value, const IL&)
    template<class IL>
    void fixed_array(const std::string &tagname, const std::string &tagname fixed_value, const IL&,
                     int minOccurs, int maxOccurs, bool emptiable = false);
固定値を指定された子要素オブジェクトは、デシリアライズ時に、XMLドキュメント内の値が固定値と等しいか、チェックされます。異なる場合、パースエラーとなります。 また、デシリアライズされた子要素は、コンテナ内に挿入されます。 また、aka:choiceのヘルパオブジェクトである、binderクラスを使用すれば、コンテナ挿入時に、固定値を指定された子要素オブジェクトに、固定値を指定することができます。 固定値は、単純型のみに指定することができます。 注： aka:sequenceの場合には、固定値メンバは、クラスに定義する必要がありませんでした。これは、aka:sequenceの要素の出現順番が、あらかじめ決まっており、固定値メンバが現れる位置も決まっているからです。 しかし、aka:choiceの場合には、要素の出現位置が決まっていないため、明示的にインスタンスを作成し、コンテナの要素として扱います。

リファレンストップへ 赤紫蘇２トップへ sourceforgeプロジェクトページへ