Hi! I'm working on a xml parser that inserts data into a sqlite db. The program looks something like this:
(insert-into-db (get-name doc num) (get-xml doc num)) where get-name looks like this: (define (get-name doc num) (srl:sxml->xml ((sxpath "tag/tag2[$i]/tag3/name/text()") (sxml:document doc) '[(i . num)]))) and get-xml looks like this: (define (get-xml doc num) (srl:sxml->xml ((sxpath "tag/tag2[$i]") (sxml:document doc) '[(i . num)])) where the xml document looks something like this: <?generic xml define..> <some css> </css> <tag> <tag2>...<tag3>name<tag3><tag2> <tag2>...<tag3>name2<tag3><tag2> ... <tag> It's suposed to insert the name thats found in every <tag2> and the whole <tag2> xml string into the database. This turned out to be realy slow when I have a some xml document with a few thousand lines of declarations, it parses the document with one line per second (and yes, I know it's because it opens up the xml file everytime when it look up something. But like the newbe that I am I can't come up with any working design to make it faster. I have looked inte sxml-match and it looks promisin but I don't realy know how to use it in this project. Does anybody have an idea on how to do this a bit faster? Kind regards M.
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users