/usr/bin/pyxbdump is in python-pyxb 1.2.3+dfsg-2.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | #! /usr/bin/python
import pyxb.namespace
import sys
import traceback
import pyxb.xmlschema.structures
import logging
logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s")
pyxb.namespace.archive.NamespaceArchive.PreLoadArchives()
ans = pyxb.namespace.AvailableNamespaces()
print '%d available namespaces' % (len(ans),)
for ns in ans:
for mr in ns.moduleRecords():
mp = mr.modulePath()
if mp is None:
mp = '<builtin>'
fp = '<builtin>'
uid = 'N/A'
if mr.archive() is not None:
fp = mr.archive().archivePath()
uid = mr.archive().generationUID()
print "%s\t%s\t%s\t%s %s" % (ns, mp, fp, (mr.isPublic() and 'Public') or 'private', uid)
sys.exit(0)
for fn in sys.argv[1:]:
nsa = None
try:
nsa = pyxb.namespace.archive.NamespaceArchive.ForPath(fn)
except pyxb.NamespaceArchiveError as e:
print '%s: %s' % (fn, e)
continue
print '%s : %d namespaces:' % (fn, len(nsa.namespaces()))
nsa.readNamespaces()
for mr in nsa.moduleRecords():
print ' %s : %s, module-path=%s, %s' % (mr.namespace(), mr.generationUID(), mr.modulePath(), (mr.isPublic() and 'public') or 'private')
for origin in mr.origins():
print ' + %s' % (origin,)
for (c, k) in origin.categoryMembers().iteritems():
print ' - %s %d items' % (c, len(k))
# LocalVariables:
# mode:python
# End:
|