Toon posts:

[XML/XSD] XSD sheet maken voor xml pagina

Pagina: 1
Acties:
  • 163 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig om een XSD check over het volgende XML documenten te maken.

XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
  <?xml version="1.0" ?> 
- <Test>
- <Testen>
- <field id="1" taborder="1">
  <Antwoord>bla</Antwoord> 
  <VraagTXT>Naam van uw onderneming</VraagTXT> 
  <VraagID>1</VraagID> 
  <OnderdeelID>1</OnderdeelID> 
  <OnderdeelTXT>Uw onderneming</OnderdeelTXT> 
  </field>
- <field id="2" taborder="2">
  <Antwoord>Bla</Antwoord> 
  <VraagTXT>Adres</VraagTXT> 
  <VraagID>2</VraagID> 
  <OnderdeelID>1</OnderdeelID> 
  <OnderdeelTXT>Uw onderneming</OnderdeelTXT> 
  </field>
- <field id="3" taborder="3">
  <Antwoord>654654654</Antwoord> 
  <VraagTXT>Telefoonnummer(s)</VraagTXT> 
  <VraagID>3</VraagID> 
  <OnderdeelID>1</OnderdeelID> 
  <OnderdeelTXT>Uw onderneming</OnderdeelTXT> 
  </field>
</Testen>
</test>


Nu moet de xsd controlleren dat <Antwoord> altijd verplicht, alleen omdat <field> zich steeds herhaald kom ik er niet uit hoe ik dat kan instellen.

Verwijderd

Wat heb je tot nu toe al in je xsd staan? Hoe ziet die er nu uit?

  • japsai
  • Registratie: Augustus 2003
  • Niet online
code:
1
minOccurs="1"


als attribuut van de element declaratie van 'Antwoord' .

Maar dit hoort thuis in: Webdesign, Markup & Clientside Scripting denk ik.

[ Voor 8% gewijzigd door japsai op 06-10-2006 10:38 ]


  • TheNameless
  • Registratie: September 2001
  • Laatst online: 07-02-2025

TheNameless

Jazzballet is vet!

Had toch niks te doen :)
XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/NewXMLSchema" xmlns:tns="http://www.example.org/NewXMLSchema">
    <element name="field">
        <complexType>
            <sequence>
                <element name="Antwoord" type="string" minOccurs="1" maxOccurs="1"/>
                <element name="VraagTXT" type="string"/>
                <element name="VraagID" type="int"/>
                <element name="OnderdeelID" type="int"/>
                <element name="OnderdeelTXT" type="string"/>
            </sequence>
            <attribute name="id" type="int"/>
            <attribute name="taborder" type="int"/>
        </complexType>
    </element>

    <element name="test">
        <complexType>
            <sequence>
                <element ref="tns:Testen" minOccurs="1" maxOccurs="unbounded"/>
            </sequence>
        </complexType>
    </element>
    
    <element name="Testen">
        <complexType>
            <sequence minOccurs="1" maxOccurs="unbounded">
                <element ref="tns:field"/>
            </sequence>
        </complexType>
    </element>
</schema>


Let op de minOccurs="1" en de maxOccurs="1"
Dit betekend dus dat hij minimaal 1 keer, en maximaal 1 keer mag voorkomen, dus aanwezig moet zijn.

edit: Volgens mij hoeft de minOccurs en maxOccurs niet eens als ze in een <sequence> blok staan, maar dat weet ik niet zeker.

[ Voor 26% gewijzigd door TheNameless op 06-10-2006 12:40 ]

Ducati: making mechanics out of riders since 1946