Subject: Re: [xsl] Namespace'd XPath expression in Java From: "Jacek Radajewski" <jacekrad@xxxxxxxxx> Date: Fri, 6 Apr 2007 09:09:36 +1000 |
See below. J.
dbf.setNamespaceAware(true); <----------------------
Here is my Java code: ______________________________ // load XSD DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = dbf.newDocumentBuilder(); Document xsdDoc = docBuilder.parse("path to my xsd");
// eval XPath XPath xpath = XPathFactory.newInstance().newXPath(); xpath.setNamespaceContext(new MyNamespaceContext()); System.out.println(xpath.evaluate("count(//xs:element)", xsdDoc.getDocumentElement())); ______________________________
And finally implementation of NamespaceContext:
______________________________ public class MyNamespaceContext implements NamespaceContext { public String getNamespaceURI(String prefix) { if ("xs".equals(prefix)) { return "http://www.w3.org/2001/XMLSchema"; } else if ("msdata".equals(prefix)) { return "urn:schemas-microsoft-com:xml-msdata"; }
return XMLConstants.NULL_NS_URI; }
public String getPrefix(String namespaceURI) { if ("http://www.w3.org/2001/XMLSchema".equals(namespaceURI)) { return "xs"; } else if ("urn:schemas-microsoft-com:xml-msdata".equals(namespaceURI)) { return "msdata"; }
return XMLConstants.DEFAULT_NS_PREFIX; }
public Iterator<String> getPrefixes(String namespaceURI) { List<String> uris = new ArrayList<String>(); uris.add(getPrefix(namespaceURI)); return uris.iterator(); } } ______________________________
Thanks in advance.
-- Jacek Radajewski
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Namespace'd XPath expression , Mohsen Saboorian | Thread | [xsl] Problem using variables with , Raghavan |
RE: [xsl] Problem using variables w, Michael Kay | Date | Re: [xsl] Generating SVG of an XML , Kevin Grover |
Month |