public void putElementEnd(QName name) throws DataModelException { if (elementStarted) flushElementStart(true); if (contentHandler != null) try { String qname = // TODO avoid double creation by managing a stack getNsPrefixes() ? nsContext.prefixedName(name) : ""; contentHandler.endElement(name.getNamespaceURI(), name.getLocalPart(), qname); // remove mappings for (int m = 0, cnt = nsContext.getLocalSize(); m < cnt; m++) contentHandler.endPrefixMapping(nsContext.getLocalPrefix(m)); } catch (SAXException e) { convertSaxException(e); } super.putElementEnd(name); }
public String getString() { QName name = getValue(); String prefix = name.getPrefix(); if (prefix == null) return name.toString(); return prefix + ":" + name.getLocalPart(); }