[xml] locatie van een node

Pagina: 1
Acties:

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Hoe kan ik de locatie van een node achterhalen zodat ik later op exact die positie kan springen? Die locatie moet ik als string kunnen meegeven (aan een servlet) zodat xsl-transformaties op exact die positie begint. Ik ben al een hele tijd aan het bladeren, maar ik zie intussen door de bomen het bos niet meer.

Verwijderd

Misschien de functie position()? Op de site van w3c staat er in ieder geval genoeg over :)

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Met de position functie weet je welke van de kinderen je bent :) Maar dit is alleen relatief (tov de context/parent node) en niet absoluut. En dat moet ik dus tot mijn beschikking hebben.

Ik moet dus de exacte positie van een xml node kunnen achterhalen (als ik met een xslt bestand een xml bestand aan het transformeren ben). Deze absolute positie info moet meegegeven worden aan het uiteindelijk html bestand, zodat ik later weet waar ik weer verder moet gaan. Deze informatie komt uiteindelijk terecht bij een Servlet waardoor er weer nieuwe transformaties van een subtak van het xml document kan plaatsvinden.

[ Voor 60% gewijzigd door Alarmnummer op 13-03-2004 19:14 ]


  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Kan je niet adh van axis and node type eventueel een of meerdere predicates bepalen waar je het laatst bent gestopt?
Misschien adh van attributen?

[ Voor 73% gewijzigd door -FoX- op 14-03-2004 12:00 ]


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Je kan de locatie van alle elementen tot aan de root gebruiken om een exact path te beschrijven naar een xml node.

xmllint (libxml) heeft een shell model (xmllint --shell foo.xml) waarmee je door een xml bestand kan lopen alsof het een soort directory is. Je kan dus een 'ls' doen, 'cd' naar knopen die je opgeeft met behulp van XPath, enz. Er is ook een 'pwd' command wat de huidige knoop laat zien. Dit zou als het goed is een uniek path moeten zijn naar de huidige knoop. Misschien dat je daar wat inspiratie kan opdoen.

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


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Ik heb er op dit moment gewoon maar een id bij in geprakt. Het is toch alleen ff een prototype dus beetje hacken moet dan kunnen (zeker als je er al te veel tijd aan hebt verknalt).

[edit]
En het kan met de position wel. Hij bepaalt de positie tov de context node, maar als je de rootnode als context node neemt, dan kan je uniek bepalen waar je zit. Ik heb alleen nog niet uitgevogeld hoe ik dit voor elkaar kan krijgen.

[ Voor 41% gewijzigd door Alarmnummer op 15-03-2004 09:15 ]

Pagina: 1