[XML] ASP/DOMXML probleem

Pagina: 1
Acties:

  • ScuL
  • Registratie: Januari 2000
  • Laatst online: 11:22
Ik ben bezig met het bouwen van een ASP-pagina die een XML formulier inleest.
Nu ben ik al een heel eind gekomen dmv diverse tutorials en snap ik ook de werking van het DOMXML object. Echter is het XML-formulier dat ik wens te importeren niet conform de standaarden zoals gebruikt in alle tutorials.

Hier een willekeurige tutorial:
code:
1
2
3
4
5
6
7
8
9
10
11
Dim xml
    Set xml = Server.CreateObject("Microsoft.XMLDOM")
    xml.async = False
    xml.load (Server.MapPath("page.xml"))
    
Dim title, heading, paragraph, testHTML
    title = xml.documentElement.childNodes(0).text
    heading = xml.documentElement.childNodes(1).text
    paragraph = xml.documentElement.childNodes(2).text

    Set xml = Nothing


met een bijbehorend XML-formulier dat is opgebouwd als

code:
1
2
3
<title>bla</title>
<heading>koptekst</heading>
<paragraph>tekst</paragraph>


Nu mijn eigen XML-formulier:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" ?> 
<RESPONSE>
    <RESULT NAME="getpolissen" CODE="0">
        <RELATIE L1="500">
            <POLIS L10000="06001" L10131="06001" L10004="1300525">
                <DEKKING VGL="00001" L98109="06101"/>
            </POLIS>
            <POLIS L10000="06002" L10131="06002" L10004="BG00649">
                <DEKKING VGL="00001" L98109="06503"/>
            </POLIS>
        </RELATIE>
    </RESULT>
</RESPONSE>


Probleem is dus dat ik geen tekst gebruik tussen de markers, maar dat ik een soort labels heb die in de tag zitten. Ik krijg ze er niet uit door zo'n childNode als in een formulier... de oplossing zou vast heel simpel zijn maar hoe krijg ik die data eruit? :?

ProMods ETS2 uitbreiding - Mijn tijdszone is UTC+13


  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 12-08 16:04

Jaspertje

Max & Milo.. lief

getAttribute("x")

zal iets uitgebreider zijn :)..

Als je XML.DocumentElement.ChildNodes(0).getAttribute("Name") neemt, dan geeft ie de naam

dus in dit geval "getpolissen"

[ Voor 97% gewijzigd door Jaspertje op 28-11-2002 16:14 ]


  • ScuL
  • Registratie: Januari 2000
  • Laatst online: 11:22
Thank you! Ik ga gelijk experimenteren. Als ik tegen iets aan loop kom ik wel weer terug :)

ProMods ETS2 uitbreiding - Mijn tijdszone is UTC+13


  • ScuL
  • Registratie: Januari 2000
  • Laatst online: 11:22
-edit-
foutje
stom stom stom :D
het moest in uppercase ;)

[ Voor 215% gewijzigd door ScuL op 29-11-2002 13:10 ]

ProMods ETS2 uitbreiding - Mijn tijdszone is UTC+13


  • ScuL
  • Registratie: Januari 2000
  • Laatst online: 11:22
sorry voor deze monoloog maar ik heb nog een vraag:

hoe moet het dan met <RELATIE L1="500">
dat attribuut kan ie niet vinden.. logisch want het ligt een layer lager

ProMods ETS2 uitbreiding - Mijn tijdszone is UTC+13


Verwijderd

Misschien moet je eens kijken naar XPath: http://www.w3schools.com/xpath/default.asp Sowieso kan je op http://www.w3schools.com heel veel relevante informatie vinden.

Succes :)

  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 12-08 16:04

Jaspertje

Max & Milo.. lief

wat weet je al over de opbouw van XML?

je begint met een Document Element... daaron heb je ChildNodes.. daaronder kunne ook weer ChildNodes zitten.. enz enz enz..

Dus als je iets uit de 3e laag wilt hebben.. Moet je nog een ChildNode toevoegen.. maar ik zou als ik jou was even de linkjes van MrX bekijken

en hier nog een: Deze helpt misschien ook

  • ScuL
  • Registratie: Januari 2000
  • Laatst online: 11:22
ik weet helemaal niets over de opbouw van XML, ben er echt n00b mee.
ik hoef er op zich ook niet zo veel over te weten zolang ik alleen maar die data kan importeren ;) ..... XML outputten is niet noodzakelijk.

die w3schools site heeft handige info. ga even aan het lezen dus.

ah ik begrijp hem nu al
voor die L1 uit RELATIE moet ik deze command gebruiken:

code:
1
relnr = xml.documentElement.childNodes(0).childNodes(0).getAttribute("L1")

[ Voor 26% gewijzigd door ScuL op 29-11-2002 14:24 ]

ProMods ETS2 uitbreiding - Mijn tijdszone is UTC+13

Pagina: 1