Thanks Wolfgang for your time and the attachments you send me.

I don't want to sound ungrateful for the hard work and
for the nice module you send me, but  I was looking for another solution
where I don't have to use Context macro's and setups.

I want to use a little bit of lua code to get to the data I want. I think
I will have greater control independent of the xml macro's (to be honest 
I find
them difficult to understand).

The solution I am looking for, is to use the function xml.filter 
(defined in l-xml.lua)
and to assign the outcome to local variables.

Kind regards
Wim

> Hi,
> 
> take a look into invoice.tex in my attachment.
> 
> Wolfgang
> 
> On Sun, 18 May 2008 02:20:00 +0200
> WN <[EMAIL PROTECTED]> wrote:
> 
>> Hi,
>>
>> I am trying to parse a xml file with mkiv to process a list of invoices 
>> (factuur in dutch).
>>
>> The xml file looks like this
>>
>> <?xml version='1.0 standalone='yes' ?>
>> <factuur>
>> <nummer>123456789</nummer>
>> <datum>1 januari 2008</datum>
>> <medewerker></medewerker>
>> <regels>
>> <omschrijving>Omschrijving geleverde dienst a</omschrijving>
>> <bedrag>1500,00</bedrag>
>> <omschrijving>Omschrijving geleverde dienst b</omschrijving>
>> <bedrag>200,00</bedrag>
>> </regels>
>> </factuur>
>>
>> I want to extract and sum the invoices (regels). I managed to get things 
>> working (printing)
>> but don't know how to assign these values into lua variables for the 
>> summing.
>> The test code looks like this
>>
>> % engine=luatex
>> \starttext
>>
>> \startluacode
>> document.xml = document.xml or { } -- define namespace
>> document.xml = xml.load("factuur.xml") -- load the file
>> n = xml.count(document.xml, "/factuur/regels/omschrijving")
>>
>> for i = 1, n do
>> --
>> -- here I want to assign the values returned by xml.filter into local 
>> variable amount
>> --
>>
>> xml.sprint(xml.filter(document.xml, "/factuur/regels/bedrag/position(" 
>> .. i .. ")" ))
>>
>> end
>> \stopluacode
>> \stoptext
>>
>> Kind regards
>> WN
>> ___________________________________________________________________________________
>> If your question is of interest to others as well, please add an entry to 
>> the Wiki!
>>
>> maillist : [email protected] / 
>> http://www.ntg.nl/mailman/listinfo/ntg-context
>> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
>> archive  : https://foundry.supelec.fr/projects/contextrev/
>> wiki     : http://contextgarden.net
>> ___________________________________________________________________________________
>>
>> ------------------------------------------------------------------------
>>
>> ___________________________________________________________________________________
>> If your question is of interest to others as well, please add an entry to 
>> the Wiki!
>>
>> maillist : [email protected] / 
>> http://www.ntg.nl/mailman/listinfo/ntg-context
>> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
>> archive  : https://foundry.supelec.fr/projects/contextrev/
>> wiki     : http://contextgarden.net
>> ___________________________________________________________________________________

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : [email protected] / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to