XSLTElementProcessor getProcessorFor ( String uri , String localName , String rawName ) throws org . xml . sax . SAXException { XSLTElementProcessor currentProcessor = getCurrentProcessor ( ) ; XSLTElementDef def = currentProcessor . getElemDef ( ) ; XSLTElementProcessor elemProcessor = def . getProcessorFor ( uri , localName ) ; if ( null == elemProcessor && ! ( currentProcessor instanceof ProcessorStylesheetDoc ) && ( ( null == getStylesheet ( ) || Double . valueOf ( getStylesheet ( ) . getVersion ( ) ) . doubleValue ( ) > Constants . XSLTVERSUPPORTED ) || ( ! uri . equals ( Constants . S_XSLNAMESPACEURL ) && currentProcessor instanceof ProcessorStylesheetElement ) || getElemVersion ( ) > Constants . XSLTVERSUPPORTED ) ) { elemProcessor = def . getProcessorForUnknown ( uri , localName ) ; } if ( null == elemProcessor ) error ( XSLMessages . createMessage ( XSLTErrorResources . ER_NOT_ALLOWED_IN_POSITION , new Object [ ] { rawName } ) , null ) ; //rawName + " is not allowed in this position in the stylesheet!", return elemProcessor ; }
Given a namespace URI and a local name or a node type get the processor for the element or return null if not allowed .