+static DOM::Element
+findElementById(const DOM::Element& el,
+ const DOM::GdomeString& ns, const DOM::GdomeString& name,
+ const DOM::GdomeString& id)
+{
+ assert(el);
+ if (el.getAttributeNS(ns, name) == id)
+ return el;
+ else
+ for (DOM::Node p = el.get_firstChild(); p; p = p.get_nextSibling())
+ if (p.get_nodeType() == DOM::Node::ELEMENT_NODE)
+ if (DOM::Element res = findElementById(p, ns, name, id))
+ return res;
+ return DOM::Element();
+}
+