public void startElement ( StylesheetHandler handler , String uri , String localName , String rawName , Attributes attributes ) throws SAXException { //System.out.println("ProcessorFunction.startElement()"); String msg = "" ; if ( ! ( handler . getElemTemplateElement ( ) instanceof Stylesheet ) ) { msg = "func:function element must be top level." ; handler . error ( msg , new SAXException ( msg ) ) ; } super . startElement ( handler , uri , localName , rawName , attributes ) ; String val = attributes . getValue ( "name" ) ; int indexOfColon = val . indexOf ( ":" ) ; if ( indexOfColon > 0 ) { //String prefix = val.substring(0, indexOfColon); //String localVal = val.substring(indexOfColon + 1); //String ns = handler.getNamespaceSupport().getURI(prefix); //if (ns.length() > 0) // System.out.println("fullfuncname " + ns + localVal); } else { msg = "func:function name must have namespace" ; handler . error ( msg , new SAXException ( msg ) ) ; } }
Start an ElemExsltFunction . Verify that it is top level and that it has a name attribute with a namespace .