public String getNamespaceURI() { if (namespaceURI == null) { namespaceURI = parent.getNamespaceURI(prefix); } return namespaceURI; }
public String getNamespaceURI() { if (namespaceURI == null) { namespaceURI = parent.getNamespaceURI(prefix); } return namespaceURI; }
public String getNamespaceURI(String prefix) { return getValuePointer().getNamespaceURI(prefix); }
/** * Returns true if the supplied prefix represents the * default namespace in the context of the current node. * @param prefix the prefix to check * @return <code>true</code> if prefix is default */ protected boolean isDefaultNamespace(String prefix) { if (prefix == null) { return true; } String namespace = getNamespaceURI(prefix); return namespace != null && namespace.equals(getDefaultNamespaceURI()); }
public String getNamespaceURI() { String prefix = DOMNodePointer.getPrefix(attr); return prefix == null ? null : parent.getNamespaceURI(prefix); }
/** * Given a prefix, returns a registered namespace URI. If the requested * prefix was not defined explicitly using the registerNamespace method, * JXPathContext will then check the context node to see if the prefix is * defined there. See * {@link #setNamespaceContextPointer(NodePointer) setNamespaceContextPointer}. * * @param prefix The namespace prefix to look up * @return namespace URI or null if the prefix is undefined. */ public synchronized String getNamespaceURI(String prefix) { String uri = getExternallyRegisteredNamespaceURI(prefix); return uri == null && pointer != null ? pointer.getNamespaceURI(prefix) : uri; }
/** * Test an attribute. * @param attr to test * @return whether test succeeded */ private boolean testAttr(Attr attr) { String nodePrefix = DOMNodePointer.getPrefix(attr); String nodeLocalName = DOMNodePointer.getLocalName(attr); if (nodePrefix != null && nodePrefix.equals("xmlns")) { return false; } if (nodePrefix == null && nodeLocalName.equals("xmlns")) { return false; } String testLocalName = name.getName(); if (testLocalName.equals("*") || testLocalName.equals(nodeLocalName)) { String testPrefix = name.getPrefix(); if (testPrefix == null || equalStrings(testPrefix, nodePrefix)) { return true; } if (nodePrefix == null) { return false; } return equalStrings(parent.getNamespaceURI(testPrefix), parent .getNamespaceURI(nodePrefix)); } return false; }
/** * namespace-uri() implementation. * @param context evaluation context * @return String */ protected Object functionNamespaceURI(EvalContext context) { if (getArgumentCount() == 0) { NodePointer ptr = context.getCurrentNodePointer(); String str = ptr.getNamespaceURI(); return str == null ? "" : str; } assertArgCount(1); Object set = getArg1().compute(context); if (set instanceof EvalContext) { EvalContext ctx = (EvalContext) set; if (ctx.hasNext()) { NodePointer ptr = (NodePointer) ctx.next(); String str = ptr.getNamespaceURI(); return str == null ? "" : str; } } return ""; }
/** * Find the namespace prefix for the specified namespace URI and NodePointer. * @param pointer location * @param namespaceURI to check * @return prefix if found * @since JXPath 1.3 */ protected static String getPrefix(NodePointer pointer, String namespaceURI) { NodePointer currentPointer = pointer; while (currentPointer != null) { NodeIterator ni = currentPointer.namespaceIterator(); for (int position = 1; ni != null && ni.setPosition(position); position++) { NodePointer nsPointer = ni.getNodePointer(); String uri = nsPointer.getNamespaceURI(); if (uri.equals(namespaceURI)) { String prefix = nsPointer.getName().getName(); if (!"".equals(prefix)) { return prefix; } } } currentPointer = pointer.getParent(); } return null; }
String nodePrefix = nodeName.getPrefix(); if (!equalStrings(testPrefix, nodePrefix)) { String testNS = getNamespaceURI(testPrefix); String nodeNS = getNamespaceURI(nodePrefix); if (!equalStrings(testNS, nodeNS)) { return false;