def __init__(self, schema_data=None): if not schema_data: self.schema = Schema(urlopen(SCHEMA_URL + DEFAULT_VERSION + ".xsd")) elif schema_data in VALID_VERSIONS: self.schema = Schema(urlopen(SCHEMA_URL + schema_data + ".xsd")) elif schema_data.__class__.__name__ == "addinfourl": self.schema = Schema(urlopen(SCHEMA_URL + DEFAULT_VERSION + ".xsd")) elif path.exists(schema_data): self.schema = Schema(open(schema_data)) self.version = self.schema.version self.simple_elements = self.schema.get_element_list( "complexType", "simpleAddressType") self.detail_elements = self.schema.get_element_list( "complexType", "detailAddressType") self.element_list = self.schema.get_element_list( "element", "vip_object") self.create_headers()