def __call__(self, node): if not IXMLNode.providedBy(node): return nsmapping = self._nsmapping(node) if not nsmapping: return tok = self._token if not tok: return False for stdef in tok.defs.values(): if node.__name__.find(nsmapping.get(stdef['profile'], '')) != -1: return True return False
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)