From 1d617aa14633e8d76ae6106ce6481e09910cb558 Mon Sep 17 00:00:00 2001 From: Roland Hedberg Date: Fri, 24 Sep 2010 14:02:46 +0200 Subject: [PATCH] Changed the representation of simpleType attributes --- tools/parse_xsd2.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tools/parse_xsd2.py b/tools/parse_xsd2.py index 749c882..1c3b675 100755 --- a/tools/parse_xsd2.py +++ b/tools/parse_xsd2.py @@ -7,7 +7,7 @@ import imp import sys import types -__version__ = 0.3 +__version__ = 0.4 try: from xml.etree import cElementTree as ElementTree @@ -660,7 +660,10 @@ class PyAttribute(PyObj): return ([], []) # Means this elements definition is empty def spec(self): - return "('%s', '%s', %s)" % (self.pyname, self.type, self.required) + if isinstance(self.type, SimpleType): + return "('%s', %s_, %s)" % (self.pyname, self.type.name, self.required) + else: + return "('%s', '%s', %s)" % (self.pyname, self.type, self.required) class PyAny(PyObj): def __init__(self, name=None, pyname=None, _external=False, _namespace=""): @@ -843,7 +846,7 @@ class Attribute(Simple): ctyp = get_type_def(klass, top.parts) if not ctyp.repr_done: ctyp.repr(top, sup) - objekt.type = klass + objekt.type = ctyp elif self.xmlns_map[namespace] == XMLSCHEMA: objekt.type = klass else: