| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <title>XPath 2.0 API Implementation</title> |
| </head> |
| <body> |
| <p>Public interfaces for XPath expression Abstract Syntax Tree nodes. |
| Primary external APIs for this XPath AST model.</p> |
| <p>This XPath API is a compact set of Java interfaces that allow the |
| in-memory representation and manipulation of XPath 2.0 expressions.The |
| main idea of this API is to manipulate XPath expressions independently |
| of their actual underlying representation.<br> |
| </p> |
| <p>It was designed to fulfill |
| the following requirements:</p> |
| <ul> |
| <li style="font-weight: bold;">Read/Write: <span |
| style="font-weight: normal;">it should be capable of querying/visiting |
| and modifying the |
| internal representation of XPath expressions. The expression reading is |
| performed by using either the visitor pattern or get-like methods. |
| Similarly, the</span><span style="font-weight: normal;"> expression </span><span |
| style="font-weight: normal;">writing is done through a bunch of |
| set-like methods.</span></li> |
| <li style="font-weight: bold;"><span style="font-weight: normal;"><span |
| style="font-weight: bold;">Round-trip: </span>it should be capable of |
| getting |
| string representation of expressions from its internal encoding.<br> |
| </span></li> |
| <li><span style="font-weight: bold;">Application-independent</span>: |
| it should be suitable to be used by a variety of applications |
| efficiently.<span style="font-weight: bold;"> </span>It should provide |
| solutions to plug in application-dependent features, like |
| namespace/qname manager and AST generalization and specialisation (see |
| implementation package).<span style="font-weight: bold;"><br> |
| </span></li> |
| <li style="font-weight: bold;">Lightweight: <span |
| style="font-weight: normal;">it should be compact and therefore should |
| define a minimal set of Java interfaces in particular by factoring |
| similar concepts. The best example is the |
| interface OperatorExpr which allows the representation of more than ten |
| expression types.</span></li> |
| </ul> |
| Right now, the XPath API do not provide a standard way to request the |
| evaluation of expressions. This should be done.<br> |
| <p></p> |
| </body> |
| </html> |