[サイトのトップ][RELAX利用者日本語メーリングリスト メニューページ][ログイン][参加ガイド][新スレッド作成][スレッド一覧][メッセージ閲覧][メンバー登録][メンバー登録情報変更][パスワード変更][パスワードを忘れたら][メンバー登録解除][メッセージ削除][エラーで配信停止したメンバーリスト]
| 2007/01/15 00:39 |
From:福原 <archer@jupiter.sannet.ne.jp> [relax-users-j 03348] relaxerで変換したW3C XML Schemaの属性名 |
福原と申します。
以下のRelaxNGスキーマをRelaxer Version 1.1b (20061129)で、
W3C XML Schemaに変換した際に、誤った属性名を含むxsdファイルが
生成されるようです。
"xsd:complexType"要素の属性名は、"mixd"ではなく
"mixed"が正しいのではないでしょうか?
変換元
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
ns="">
<start>
<ref name="root"/>
</start>
<define name="root">
<element name="root">
<mixed>
<element name="apple" ><text /></element>
</mixed>
</element>
</define>
</grammar>
生成結果
<xsd:schema xmlns=""
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="">
<xsd:element name="root" type="root"/>
<xsd:complexType mixd="true" name="root">
<xsd:sequence>
<xsd:choice maxOccurs="unbounded" minOccurs="0">
<xsd:element name="apple" type="rootApple"/>
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="rootApple">
<xsd:simpleContent>
<xsd:extension base="xsd:string"/>
</xsd:simpleContent>
</xsd:complexType>
</xsd:schema>
こちらで検証はしていないのですが、
org.relaxer.Relaxer.xsd.XsdGeneratorの
386行目付近に間違いがあるのではと推測しています。
------XsdGenerator.javaの386行目付近ここから------
if (_isMixed(eNode)) {
complexType.setAttribute("mixd", "true");
}
------XsdGenerator.javaの386行目付近ここまで------
以上、よろしくお願いします。
--
福原 (archer@jupiter.sannet.ne.jp)何か分からないことや問題が発生した場合は、本リスト板管理者の電子メールアドレス yki@hh.iij4u.or.jp までお問い合わせください。
[RELAX利用者日本語メーリングリスト メニューページ][スレッド一覧][メッセージ閲覧][サイトのトップ]
りすと亭 (List-Tei 4.25.0) Copyright (c) 1997-2006 by Pie Dey Co.,Ltd.