[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Execute an XPath and get the line numbers
- From: "Oleg A. Paraschenko" <olpa@xmlhack.ru>
- To: xml-dev <xml-dev@lists.xml.org>
- Date: Tue, 6 Mar 2007 08:54:02 +0300
Hello,
I'm investigating the structure of an XML file. The best tool is an usual
text editor (vim), but I need to look at some specific tags in some
specific contexts.
The idea is to execute an XPath and somehow to get to the location in the
editor. Remembering that I saw something interesting while playing with
libxml internals, I re-checked... And bingo! I've written a script which
executes an XPath and prints the result together with the line number in
the source XML file.
Usage:
python xpath.py document xpath
Code:
<xpath.py>
import sys,libxml2
doc_name = sys.argv[1]
xpath = sys.argv[2]
doc = libxml2.parseFile(doc_name)
ctxt = doc.xpathNewContext()
res = ctxt.xpathEval(xpath)
for node in res:
print node.lineNo()
print node
doc.freeDoc()
ctxt.xpathFreeContext()
del ctxt
del doc
</xpath.py>
I think many will find this code useful. If you want bookmark it, here is
the permanent address:
http://uucode.com/blog/2007/03/05/execute-an-xpath-and-get-the-line-numbers/
--
Oleg Parashchenko olpa@ http://xmlhack.ru/ XML news in Russian
http://uucode.com/blog/ Generative Programming, XML, TeX, Scheme
http://olpa.livejournal.com/
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]