#!/usr/bin/env python3

# Extract all schemas (.xsd files) from a super-schema for XML.

import sys
import xml.etree.ElementTree as ElementTree

if len(sys.argv) != 2:
    raise Exception("Usage: %s xsd-file" % sys.argv[0])

tree = ElementTree.parse(sys.argv[1])
elem = tree.getroot()
for item in elem:
    if item.tag == "{http://www.w3.org/2001/XMLSchema}import":
        ns = item.attrib["namespace"].replace("urn:ietf:params:xml:ns:", "")
        dirs = ns.split(":")
        if len(dirs) >= 2:
            file = dirs[len(dirs) - 2] + "/" + item.attrib["schemaLocation"]
        else:
            file = item.attrib["schemaLocation"]
        print(file)


