def join(context, nodeset, delim=None): comps = map(lambda x: Conversions.StringValue(x), nodeset) if delim: return string.joinfields(comps, delim) else: return string.joinfields(comps)
def if_function(context, cond, v1, v2): if Conversions.BooleanValue(cond): return v1 else: return v2
def Evaluate(context, expr): import xml.xpath return xml.xpath.Evaluate(Conversions.StringValue(st), context=context)
def EscapeUrl(context, url): "Escape illegal characters in a URL" return urllib.quote(Conversions.StringValue(url))
def StringMd5(context, str): s = Conversions.StringValue(str) return longhash(s)
def evaluate(self, context): """returns a number""" exp = self._exp.evaluate(context) exp = Conversions.NumberValue(exp) rt = exp * -1.0 return rt
def evaluate(self, context): rt = Conversions.BooleanEvaluate(self._left, context) if rt: rt = Conversions.BooleanEvaluate(self._right, context) return rt