我们从Python开源项目中,提取了以下9个代码示例,用于说明如何使用xml.etree.cElementTree.register_namespace()。
def register_prefix(self, nspair): """ Register with ElementTree a set of namespaces :param nspair: A dictionary of prefixes and uris to use when constructing the text representation. :return: """ for prefix, uri in nspair.items(): try: ElementTree.register_namespace(prefix, uri) except AttributeError: # Backwards compatibility with ET < 1.3 ElementTree._namespace_map[uri] = prefix except ValueError: pass
def _build_command_line_elem(command_line): command_line_parts = shlex.split(command_line, posix=False) prefix = "rsp" ET.register_namespace(prefix, c.XML_NS_MSRSP) command_line_elem = ET.Element('{%s}CommandLine' % c.XML_NS_MSRSP) command_elem = ET.Element('{%s}Command' % c.XML_NS_MSRSP) command_elem.text = command_line_parts[0] command_line_elem.append(command_elem) for arguments_text in command_line_parts[1:]: arguments_elem = ET.Element('{%s}Arguments' % c.XML_NS_MSRSP) arguments_elem.text = arguments_text command_line_elem.append(arguments_elem) tree = ET.ElementTree(command_line_elem) str_io = StringIO() tree.write(str_io) return str_io.getvalue()
def register_namespaces(namespaces=namespaces): for name, url in namespaces.items(): if name != 'svg': # creates invalid xml et.register_namespace(name, url)
def write(self, filename): # Output does not look nice. Use `xmllint --format <input> > <output>' # to get a nice format (part of libxml2) etree.register_namespace('', self.namespace) self.doc.write(filename, encoding="UTF-8")
def registerNamespaces(): for longName, shortName in xmlns.items(): ET.register_namespace(shortName, longName)
def register_namespace(prefix, uri): from xml.etree import ElementTree # cElementTree uses ElementTree's _namespace_map, so that's ok ElementTree._namespace_map[uri] = prefix
def register_namespace(prefix, uri): from xml.etree.ElementTree import _namespace_map if re.match("ns\d+$", prefix): raise ValueError("Prefix format reserved for internal use") for k, v in _namespace_map.items(): if k == uri or v == prefix: del _namespace_map[k] _namespace_map[uri] = prefix