translate.misc.xml_helpers

Package translate :: Package misc :: Module xml_helpers |
[hide private]
[frames] | no frames]

# Module xml_helpers

source code

Helper functions for working with XML.

Functions | [hide private]
getText(node, xml_space=`'``preserve``'`) Extracts the plain text content out of the given node. | source code
getXMLlang(node) Gets the xml:lang attribute on node | source code
setXMLlang(node, lang) Sets the xml:lang attribute on node | source code
getXMLspace(node, default=None) Gets the xml:space attribute on node | source code
setXMLspace(node, value) Sets the xml:space attribute on node | source code
namespaced(namespace, name) Returns name in Clark notation within the given namespace. | source code
normalize_space(text) Normalize the given text for implimentation of xml:space="default". | source code
normalize_xml_space(node, xml_space, remove_start=False) normalize spaces following the nodes xml:space, or alternatively the given xml_space parameter. | source code

Variables | [hide private]
| xml_preserve_ancestors = `etree.XPath("ancestor-or-self::*[attr`...`` All ancestors with xml:space='preserve'
| xml_space_ancestors = `etree.XPath("ancestor-or-self::*/attribu`...`` All xml:space attributes in the ancestors
| string_xpath = `etree.XPath("string()")` Return a non-normalized string in the node subtree
| string_xpath_normalized = `etree.XPath("normalize-space()")` Return a (space) normalized string in the node subtree
| XML_NS = ``'``http://www.w3.org/XML/1998/namespace``'``
| MULTIWHITESPACE_PATTERN = ``'``[\\n\\r\\t ]+``'``
| MULTIWHITESPACE_RE = `re.compile(r'`(?m)``[`\n\r\t `]``+`')`

Imports: re, etree

Function Details | [hide private]

### getText(node, xml_space=`'``preserve``'`) | source code
Extracts the plain text content out of the given node. This method checks the xml:space attribute of the given node, and takes an optional default to use in case nothing is specified in this node.

### namespaced(namespace, name) | source code
Returns name in Clark notation within the given namespace. For example namespaced("source") in an XLIFF document might return:
       {urn:oasis:names:tc:xliff:document:1.1}source
This is needed throughout lxml.

Variables Details | [hide private]

  ### xml_preserve_ancestors All ancestors with xml:space='preserve' Value:
      etree.XPath("ancestor-or-self::*[attribute::xml:space='preserve']")

  ### xml_space_ancestors All xml:space attributes in the ancestors Value:
      etree.XPath("ancestor-or-self::*/attribute::xml:space")