Пример #1
0
 def __setitem__(self, key, val):
     name = '%s%s' % (val.prefix, val.__name__)
     if val.element is None:
         val.element = etree.SubElement(self.element, name)
     name = '%s:%s' % (val.uuid, name)
     id = val.attributes.get(val.idattribute, None)
     if id:
         self.refindex[id] = val
     OrderedNode.__setitem__(self, name, val)
Пример #2
0
 def __setitem__(self, key, value):
     if not IZCMLNode.providedBy(value):
         raise ValueError(u"Invalid value %s" % value)
     if value.nsmap is None:
         value.nsmap = self.nsmap
     if value.model is None:
         if value.__name__ is None:
             raise ValueError(u"Cannot create model. no name given" % value)
         ns = None
         if value.__name__.find(':') != -1:
             ns, name = value.__name__.split(':')
         else:
             name = value.__name__
         value.model = XMLNode(name, ns=value.nsmap[ns], nsmap=value.nsmap)
         #value.model.element.nsmap = self.nsmap
         self.model[value.uuid] = value.model
     OrderedNode.__setitem__(self, key, value)
Пример #3
0
 def __setitem__(self, key, val):
     if not IXMLNode.providedBy(val) or not IRoot.providedBy(val):
         raise ValueError(u"Could only contain complete XML trees.")
     noLongerProvides(val, IRoot)
     OrderedNode.__setitem__(self, key, val)