in src/main/java/org/apache/servicemix/jbi/jaxp/W3CDOMStreamReader.java [68:112]
protected void newFrame(ElementFrame frame) {
Element element = getCurrentElement();
frame.uris = new ArrayList<String>();
frame.prefixes = new ArrayList<String>();
frame.attributes = new ArrayList<Attr>();
if (context == null) {
context = new W3CNamespaceContext();
}
context.setElement(element);
NamedNodeMap nodes = element.getAttributes();
String ePrefix = element.getPrefix();
if (ePrefix == null) {
ePrefix = "";
}
for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);
String prefix = node.getPrefix();
String localName = node.getLocalName();
String value = node.getNodeValue();
String name = node.getNodeName();
if (prefix == null) {
prefix = "";
}
if (name != null && "xmlns".equals(name)) {
frame.uris.add(value);
frame.prefixes.add("");
} else if (prefix.length() > 0 && "xmlns".equals(prefix)) {
frame.uris.add(value);
frame.prefixes.add(localName);
} else if (name.startsWith("xmlns:")) {
prefix = name.substring(6);
frame.uris.add(value);
frame.prefixes.add(prefix);
} else {
frame.attributes.add((Attr)node);
}
}
}