X-Git-Url: https://pere.pagekite.me/gitweb/text-free-culture-lessig.git/blobdiff_plain/750e0b6ba6c352471f7d1f584dc6ac6ddc6d6337..d7174df1b51e7331eb0cc238de9a02b60a0e91bc:/scripts/verify-indexterm-range diff --git a/scripts/verify-indexterm-range b/scripts/verify-indexterm-range index 19a31a1..8dd8595 100755 --- a/scripts/verify-indexterm-range +++ b/scripts/verify-indexterm-range @@ -5,9 +5,18 @@ # are unique. from lxml import etree +import subprocess + def main(): filename = 'freeculture.xml' - doc = etree.parse(filename) + + # make sure entities are looked up / available + # Based on idea from + # http://stackoverflow.com/questions/14731633/how-to-resolve-external-entities-with-xml-etree-like-lxml-etree + proc = subprocess.Popen(['xmllint','--noent',filename],stdout=subprocess.PIPE) + output = proc.communicate()[0] + doc = ElementTree.parse(StringIO.StringIO(output)) + ids = {} order = 0 for it in doc.getroot().xpath('//indexterm'):