Avatar billede deva Nybegynder
30. marts 2005 - 10:19 Der er 6 kommentarer

Angiv attribut værdi

Jeg har lavet en .xsd og udfra denne vil jeg gerne genere xml dokumenter.

Mit problem er at jeg har en attribut som skal have en værdi(1,2,3)

<xs:element name="dimension" minOccurs="3" maxOccurs="unbounded">
<xs:complexType>
  <xs:simpleContent>
  <xs:extension base="xs:string">
    <xs:attribute name="Id" type="xs:string" use="required"/>
  </xs:extension>   
  </xs:simpleContent>               
</xs:complexType>
</xs:element>

Når jeg så genere et xml dokument så får jeg

<dimension id=""/>
<dimension id=""/>
<dimension id=""/>

Jeg vil gerne have

<dimension id="1"/>
<dimension id="2"/>
<dimension id="3"/>

Hvordan gør jeg dette?
Avatar billede arne_v Ekspert
30. marts 2005 - 10:21 #1
Hvad bruger du til at generere XML med ?

(fordi der står jo intet om 1,2,3 i schema'et)
Avatar billede deva Nybegynder
30. marts 2005 - 10:31 #2
Nej jeg ved godt at der ikke står noget i schema´et vedr. 1,2 og 3.
Men det er fordi jeg ikke ved hvordan man gør.

Lige nu bruger jeg et noget der hedder xmlspy hvorfra jeg danner xml dokumentet.
Avatar billede Slettet bruger
30. marts 2005 - 12:17 #3
Du kan prøve at definere attributten sådan her:

<xs:attribute name="Id" use="required">
    <xs:simpleType>
        <xs:restriction base="xsd:string">
            <xs:enumeration value="1" />
            <xs:enumeration value="2" />
            <xs:enumeration value="3" />
        </xs:restriction>
    </xs:simpleType>
</xs:attribute>

(Har brugt "string" fordi du har gjort det - det skulle nok være muligt at definere den som en "integer" istedet for, med en min- og en maxværdi.)

/CS
Avatar billede deva Nybegynder
30. marts 2005 - 12:58 #4
Nu har jeg sat det ind således, og jeg får stadig ikke nogen værdi i id når jeg genere xml filen.
(jeg har ændret til integer)

Har jeg for meget med i nedenstående?

<xs:element name="dimension" minOccurs="3" maxOccurs="unbounded">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:integer">
    <xs:attribute name="id" use="required">
          <xs:simpleType>                                    <xs:restriction base="xs:integer">                            <xs:enumeration value="1"/>                                <xs:enumeration value="2"/>                                <xs:enumeration value="3"/>                            </xs:restriction>                                  </xs:simpleType>
    </xs:attribute>                       
      </xs:extension>                       
    </xs:simpleContent>                       
  </xs:complexType>
</xs:element>
Avatar billede Slettet bruger
31. marts 2005 - 02:02 #5
Hmmmm - prøv lige det her:

<xs:element name="dimension" minOccurs="3" maxOccurs="unbounded">
  <xs:complexType>
    <xs:simpleContent>
<!-- Definér indhold af "dimension" element -->
      <xs:extension base="xs:integer" />

<!-- Her defineres attributten -->
<xs:attribute name="id" use="required">
    <xs:simpleType>
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="1" />
            <xs:maxInclusive value="3" />
        </xs:restriction>
    </xs:simpleType>
</xs:attribute>

</xs:simpleContent>
</xs:complexType>
</xs:element>

/CS
Avatar billede deva Nybegynder
31. marts 2005 - 09:59 #6
Undskyld det er min fejl, jeg har formuleret det forkert.
Jeg vil gerne have at når jeg danner min xml fil, at den så auto-generer
værdierne 1,2,3 til attributten.

<dimension id="1"/>
<dimension id="2"/>
<dimension id="3"/>

Kan dette lade sig gøre.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester