Revision 2012
Added by Aaron Marcuse-Kubitza almost 13 years ago
lib/xml_func.py | ||
---|---|---|
142 | 142 |
|
143 | 143 |
#### Transforming values |
144 | 144 |
|
145 |
def _collapse(items): |
|
146 |
'''Collapses a subtree if the "value" element in it is NULL''' |
|
147 |
items = dict(items) |
|
148 |
try: require = cast(strings.ustr, items['require']) |
|
149 |
except KeyError, e: raise SyntaxError(e) |
|
150 |
value = items.get('value', None) |
|
151 |
|
|
152 |
required_node = xpath.get_1(value, require, allow_rooted=False) |
|
153 |
if required_node == None or xml_dom.is_empty(required_node): return None |
|
154 |
else: return value |
|
155 |
funcs['_collapse'] = _collapse |
|
156 |
|
|
145 | 157 |
types_by_name = {None: strings.ustr, 'str': strings.ustr, 'float': float} |
146 | 158 |
|
147 | 159 |
def _nullIf(items): |
Also available in: Unified diff
xml_func.py: Added _collapse to collapse a subtree if the "value" element in it is NULL