Avatar billede Simon Praktikant
24. september 2004 - 10:41 Der er 8 kommentarer og
1 løsning

Element inde i element med samme navn

Hvordan laver elementer i xml, inde i elementer med samme navn?
For eksempel kan to persongrupper lægges sammen til en persongruppe. Hvordan skriver jeg nedenstående på korrekt vis?

      <gruppe>
        <name>peter</name>
        <name>ina</name>
        <name>hanna</name>
      </gruppe>
      <gruppe>
        <gruppe>
          <name>line</name>
          <name>pia</name>
          <name>viggo</name>
        </gruppe>
        <gruppe>
          <name>hans</name>
          <name>morten</name>
          <name>karen</name>
        </gruppe>
      </gruppe>
Avatar billede janegil Nybegynder
24. september 2004 - 11:51 #1
Det du har gjort, er da riktig? For å bli en komplett XML-dokument, skal det være et rotelement, fx:
<?xml version="1.0" encoding="UTF-8"?>
<gruppe>
    <gruppe>
        <name>peter</name>
        <name>ina</name>
        <name>hanna</name>
    </gruppe>
    <gruppe>
        <gruppe>
            <name>line</name>
            <name>pia</name>
            <name>viggo</name>
        </gruppe>
        <gruppe>
            <name>hans</name>
            <name>morten</name>
            <name>karen</name>
        </gruppe>
    </gruppe>
</gruppe>
Avatar billede Simon Praktikant
24. september 2004 - 11:59 #2
Hej tak for hjælpen, men det er ikke lige det.
Jeg har rootelement på, hele min xml-fil ser sådan ud her:
---------------------------
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
  <trainingprogram>
<gruppe>
        <name>peter</name>
        <name>ina</name>
        <name>hanna</name>
      </gruppe>
      <gruppe>
        <gruppe>
          <name>line</name>
          <name>pia</name>
          <name>viggo</name>
        </gruppe>
        <gruppe>
          <name>hans</name>
          <name>morten</name>
          <name>karen</name>
        </gruppe>
      </gruppe>
   
  </trainingprogram>
</NewDataSet>
----------------------
når jeg vil hente det ind i et dataset i .NET får jeg følgende fejl:
"The same table (gruppe) cannot be the child table in two nested relations...."
Avatar billede janegil Nybegynder
24. september 2004 - 12:14 #3
OK. Det er ikke et XML-problem, men et problem i mappingen fra trestrukturen i XML til relasjonsstrukturen i datasettet.

Og sett som relasjoner, er det et problem at en gruppe består av forskjellige ting. (I dette tilfellet personer og andre grupper.)

Hvis vi glemmer XML et øyeblikk, hvordan kunne du tenke deg at relasjonene (dvs SQL-tabellene) skulle se ut for peter, ina og de andre?
Avatar billede janegil Nybegynder
24. september 2004 - 12:16 #4
PS: har du bruk for grupper som består av BÅDE grupper og personer?

      <gruppe>
        <gruppe>
          <name>line</name>
          <name>pia</name>
        </gruppe>
        <name>hans</name>
      </gruppe>
Avatar billede janegil Nybegynder
24. september 2004 - 12:18 #5
Hvis nei, så:
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
    <trainingprogram>
        <basisgruppe>
            <name>peter</name>
            <name>ina</name>
            <name>hanna</name>
        </basisgruppe>
        <metagruppe>
            <basisgruppe>
                <name>line</name>
                <name>pia</name>
                <name>viggo</name>
            </basisgruppe>
            <basisgruppe>
                <name>hans</name>
                <name>morten</name>
                <name>karen</name>
            </basisgruppe>
        </metagruppe>
    </trainingprogram>
</NewDataSet>
Avatar billede Simon Praktikant
24. september 2004 - 12:57 #6
jeg vil gerne lave det sådan her:

      <gruppe>
        <gruppe>
          <name>line</name>
          <name>pia</name>
        </gruppe>
        <name>hans</name>
      </gruppe>
Avatar billede janegil Nybegynder
24. september 2004 - 13:15 #7
<gruppe id="a">
        <gruppe id="b">
          <name>line</name>
          <name>pia</name>
        </gruppe>
        <name>hans</name>
      </gruppe>
svarer til
Tabell personer:
line b
pia b
hans a

Tabell grupper;
a NULL
b a

men jeg aner ikke om og hvordan .NET kan finne ut av det.
Avatar billede Simon Praktikant
16. august 2006 - 14:02 #8
hej, tak for hjælpen. Smid svar og point er dine.
Avatar billede janegil Nybegynder
16. august 2006 - 14:26 #9
:o)
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