MCPcopy Create free account
hub / github.com/scanny/python-pptx / Element

Class Element

lab/parse_xsd/parse_xsd.py:304–336  ·  view source on GitHub ↗

object

Source from the content-addressed store, hash-verified

302
303
304class Element(object):
305 """
306 <xsd:element> object
307 """
308 def __init__(self, element_elm, nsprefix):
309 super(Element, self).__init__()
310 self.nsprefix = nsprefix
311 self.name = element_elm.get('name')
312 self.tag = '%s:%s' % (self.nsprefix, self.name)
313 self.typename = element_elm.get('type')
314 if self.typename.startswith('a:'):
315 self.typename = self.typename[2:]
316 self.default = element_elm.get('default')
317 self.form = element_elm.get('form')
318 self.minOccurs = element_elm.get('minOccurs', '1')
319 self.maxOccurs = element_elm.get('maxOccurs', '1')
320 if self.form is not None:
321 raise TypeError('found xsd:element with form="%s"' % self.form)
322
323 def __str__(self):
324 tmpl = 'xsd:element %s %s %s%s'
325 default = (' default="%s"' % self.default) if self.default else ''
326 return tmpl % (self.cardinality, self.name, self.typename, default)
327
328 @property
329 def cardinality(self):
330 if self.minOccurs == '0':
331 cardinality = '?' if self.maxOccurs == '1' else '*'
332 elif self.minOccurs == '1':
333 cardinality = '1' if self.maxOccurs == '1' else '+'
334 else:
335 cardinality = '{%s:%s}' % (self.minOccurs, self.maxOccurs)
336 return cardinality
337
338
339def element_defs(tags):

Callers 4

newFunction · 0.70
load_schemaMethod · 0.70
__expand_choiceMethod · 0.70
__process_sequenceMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…