Przetwarzanie annotation + nieformalne reguly
[ Nouvelle discussion
| Répondre au groupe
|
pl.comp.xml ]
Witam szanownych kolegów i proszê o pomoc.
Dosta³em zadanie polegaj±ce na napisaniu klas obs³uguj±cych dokument
XML. Dokument ten powinienem walidowaæ za pomoc± zadanej schemy. I to
ju¿ zrobi³em. Niestety powinienem reagowaæ na zawarte w schemie
nieformalne, z punktu widzenia sk³adni xml, regu³y walidacyjne, tzn.
uruchamiaæ dodatkow± kontrolê zawarto¶ci merytorycznej dokumentu
niezale¿nie od formalnej zgodno¶ci xml'a z definicj±.
Regu³y te s± zapisane w elementach <xs:annotation><xs:documentaction> w
schemie, przyk³ad:
<xs:attribute name="Typ" use="required">
<xs:annotation>
<xs:documentation source="list">15</xs:documentation>
<xs:documentation source="rule">R39, R40</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="1" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
Znaczenie regu³ jest dane s³owno-muzycznie, np.
R39 - JE¦LI /SAD/Zgloszenie/Rodzaj/@PodTyp = "C" WTEDY
/SAD/Zgloszenie/Rodzaj/@Typ ="H"
R40 - JE¦LI /SAD/Zgloszenie/Rodzaj/@PodTyp = "D" WTEDY
/SAD/Zgloszenie/Rodzaj/@Typ ="A"
Oczywi¶cie wystêpuj± regu³y bardziej z³o¿one.
I tutaj dochodzimy do sedna mojego problemu. Nie wiem jak uruchamiaæ
walidacjê po tych dodatkowych regu³ach. Czy powinienem na wstêpie
wyszukaæ w schemie wszystkie nieformalne regu³y i potem przechodziæ
przez DOM i kolejno walidowaæ? A mo¿e jest jaka¶ inna, lepsza metoda?
Je¶li kto¶ móg³by mnie naprowadziæ to by³oby fajnie.
--
Piotrek

|
 cette fonctionnalité est reservée aux membres ayant une session active !
|