[XML] ParentNode value met Childnodes? erhm HELP!

Pagina: 1
Acties:

  • tazzman
  • Registratie: Juli 2000
  • Laatst online: 05-01 10:48

tazzman

a real boardmonkey

Topicstarter
Het volgende is het geval.. hier is een stukje XML file:

<PARENT1> Grote Papa
<NODE1> Klein Kind </NODE1>
<NODE2> Nog een kind </NODE2>
<NODE3> Ja hoor, een kind
<SUBNODE1>Kind van een kind</SUBNODE1>
</NODE3>
</PARENT1>


Als ik nu via het DOM model de NodeTypedValue van PARENT1 wil opvragen, dan krijg ik terug als waarde:

Grote PapaKlein KindNog een kindJa hoor, een kindKind van een kind

Dat is logisch want Node1, Node2, Node3, Subnode1 zijn nu eenmaal een child van Parent1. Maar hoe kan ik nou de NodeTypedValue van Parent1 opvragen, ZONDER de value van de onderliggende Childnodes te krijgen?


Erg enige spoed met het antwoord is wel gewenst want ik ben er al een tijdje mee bezig en ik kom er niet uit.. Ik zal wel over het antwoord heen kijken maar goed.. ook op diverse sites al gekeken www.topxml.com maar ook daar niet het antwoord kunnen vinden.

Het nieuwe speelgoed: een Saab 9-3 Aero (absoluut, helemaal en compleet fantastisch....)


Verwijderd

tazzman: Erg enige spoed met het antwoord is wel gewenst want ik ben er al een tijdje mee bezig en ik kom er niet uit..
Zonder dat laatste gedeelte van je post had je het antwoord zo kunnen krijgen. :r

GoT is een "gunst", niet een produkt dat je kunt bestellen. |:(

  • tus
  • Registratie: November 2000
  • Laatst online: 05-07-2012

tus

hehehe, terwijl het antwoord zo simpel is ;)

  • tazzman
  • Registratie: Juli 2000
  • Laatst online: 05-01 10:48

tazzman

a real boardmonkey

Topicstarter
Sorry, zo bedoelde ik dat ook weer niet.. ik heb er alleen slapeloze nachten van en ik wil ook es een avondje rustig slapen als het kan. :P

Het nieuwe speelgoed: een Saab 9-3 Aero (absoluut, helemaal en compleet fantastisch....)


  • tus
  • Registratie: November 2000
  • Laatst online: 05-07-2012

tus

Nou voorruit dan

hetdommeobject.documentElement.firstChild.nodeTypedValue

  • tazzman
  • Registratie: Juli 2000
  • Laatst online: 05-01 10:48

tazzman

a real boardmonkey

Topicstarter
Op dinsdag 02 oktober 2001 15:39 schreef Tus het volgende:
Nou voorruit dan

hetdommeobject.documentElement.firstChild.nodeTypedValue
Nee, dat werkt niet. De FirstChild is dan Parent1. Vraag ik dan de NodeTypeValue op dan krijg ik ook de values van de childnodes. Hetzelfde effect wanneer ik een node object set als een dommeobject.documentElement.SelectSingleNode(XPATH naar Parent1) en vervolgens de NodeTypedValue opvraag van dat node object.

Het nieuwe speelgoed: een Saab 9-3 Aero (absoluut, helemaal en compleet fantastisch....)


  • tus
  • Registratie: November 2000
  • Laatst online: 05-07-2012

tus

Heb het net ff geprobeerd. Hier werkt het, maar misschien dat dit wel werkt bij jou???

xml.childNodes(0).childNodes(0).nodeValue

Suc6

  • tazzman
  • Registratie: Juli 2000
  • Laatst online: 05-01 10:48

tazzman

a real boardmonkey

Topicstarter
Ik ga weer es proberen... het blijft een Microsoft dll dus erhm..alles is mogelijk :P

Het nieuwe speelgoed: een Saab 9-3 Aero (absoluut, helemaal en compleet fantastisch....)


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
tazzman: Ik ga weer es proberen... het blijft een Microsoft dll dus erhm..alles is mogelijk :P
+1: inzichtvol ;)

PS: schrijf er trouwens voortaan even bij wat voor implementatie je gebruikt, niet iedereen werkt met de MS stuff...

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • tazzman
  • Registratie: Juli 2000
  • Laatst online: 05-01 10:48

tazzman

a real boardmonkey

Topicstarter
Code ligt inmiddels in de vuilnisbak, het schijnt beter te werken om gewoon attributes te gebruiken. Maar goed, dat wist ik niet.. Zijn er wat goede sites om XML te 'leren' of eigenlijk gewoon op te zoeken? Ik heb er wat geprobeerd maar die waren zo vreselijk technisch ingewikkeld dat ik het niet kon volgen.

Het nieuwe speelgoed: een Saab 9-3 Aero (absoluut, helemaal en compleet fantastisch....)


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
tazzman: Code ligt inmiddels in de vuilnisbak, het schijnt beter te werken om gewoon attributes te gebruiken. Maar goed, dat wist ik niet.
In principe is het absoluut niet beter of slechter om attributen te gebruiken ipv subelementen. Eigenlijk zijn de beide mogelijkheden een beetje dubbelop, wat vanuit data-georienteerde XML docs (die je steeds meer ziet) misschien vervelend is. Met jouw methode was waarschijnlijk helemaal niets mis. Attributen lezen meestal wel een stukje makkelijker uit, dus das misschien een (verkeerde) reden om ze eerder te gebruiken :) .
Zijn er wat goede sites om XML te 'leren' of eigenlijk gewoon op te zoeken?
De syntax van XML is niet zo ingewikkeld, die kan je op veel sites leren. Alle toepassingen en toestanden eromheen zijn wat lastiger. Ik zou gewoon een goed boek kopen. Veel mense vinden Professional XML van wrox goed. Ik ook :)

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • kim72
  • Registratie: Oktober 2001
  • Laatst online: 15-03 16:41
Volgens mij moet je XML er als volgt uitzien (voorbeeldje):

<PARENT id=1>
<NAME>Grote Papa</NAME>
<NODE id=1>
<NAME>Klein Kind</NAME>
</NODE>
<NODE id=2>
<NAME>Nog een kind</NAME>
<NODE id=3>
<NAME>Ja hoor, een kind</NAME>
<SUBNODE id=1>
<NAME>Kind van een kind</NAME>
</SUBNODE>
</NODE>
</PARENT>

Op deze manier is het altijd duidelijk wat je opvraagt.

Het gebruik van de 'id' attributen in plaats van steeds andere tag namen maakt het generiek parsen gemakkelijker. Je kan nu een parser maken die gewoon de PARENT tags uitleest en aan het bijbehorende id kan je zien welke je voor je hebt.

Als je nog meer vragen hebt: ICQ 64476218 of 8358354

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op dinsdag 02 oktober 2001 16:48 schreef mbravenboer het volgende:
PS: schrijf er trouwens voortaan even bij wat voor implementatie je gebruikt, niet iedereen werkt met de MS stuff...
Niemand in his right state of mind gebruikt de MS dll's... op m'n werk hebben we deze een tijdje geencapsuleerd alvorens we een eigen parser bouwden die een factor 5-10 sneller was en feitelijk voorspelbare resultaten leverde (en consequent dezelfde i.t.t. MS dll's).

Leuk voorbeeldje van MS implementatie dat het bij mij vertikte om te werken (pseudocode):
code:
1
2
3
4
5
6
7
8
if(MyXml->GoLastChild())
  {
  do
    {
    ...something...
    }
  while(MyXml->GoPreviousSibling());
  }

Deze vond geloof ik consequent maar 1 child node, terwijl hij de andere kant op (GoFirst-do-while-GoNext) wel het correcte aantal children vond.

Professionele website nodig?


  • tazzman
  • Registratie: Juli 2000
  • Laatst online: 05-01 10:48

tazzman

a real boardmonkey

Topicstarter
Ik ben even gebonden aan die Microzuig DLL's voor het moment... Sub-elementen werken ook wel maar ik vind het wat lastiger om doelricht informatie er vandaan te halen. Ik gebruik nu attributen die de eigenschappen van een bepaald object (Node) beschrijven. Op deze wijze is het voormij ook makkelijker om de data uit te lezen (attributen vind ik wat makkelijker uit om te lezen dan sub-elementen) en deze weer naar een database te schrijven.

De syntax van XML kan ik wel volgen alleen hoe het toe te passen.. dat vind ik lastig. Ik heb geprobeerd er wat over te lezen hier en daar maar veel sites vertellen je hoe XML in elkaar zit (zover kom ik ook nog) en dan houdt het op.. OF men gaat ineens bijzonder ingewikkelde XSL bestanden in elkaar lopen te frutten .. wat ik ff niet zo maar volg en ook vooralsnog niet nodig heb. Maar goed, we komen er wel.. stapje voor stapje. :)

Bedankt voor de info! :D

Het nieuwe speelgoed: een Saab 9-3 Aero (absoluut, helemaal en compleet fantastisch....)

Pagina: 1