| Home >> All >> org >> apache >> xalan >> xpath |
| | org.apache.xalan.xpath.dtm.* (10) | | org.apache.xalan.xpath.res.* (3) | | org.apache.xalan.xpath.xdom.* (1) |
Package Samples:
org.apache.xalan.xpath.res: Infrastructure for processing XPATH expressions
org.apache.xalan.xpath.dtm
org.apache.xalan.xpath.xdom
Classes:
DTM: DTM is an XML document model expressed as a table rather than an object tree. It attempts to be very compact, and to support very specifically limited multitasking: users can start reading the document while it's still being generated. (A work in progress...) (***** The SAX handler calls, and the string-based XMLDocumentHandler methods, are known to be bad; they're included as hooks for the future.) DTM does _not_ directly support the W3C's Document Object Model. However, it attempts to come close enough that a subset of DOM behavior can be implemented as proxy objects referencing the DTM.
DTMProxyMap: DTMProxyMap is a quickie (as opposed to quick) implementation of the DOM's NamedNodeMap interface, intended to support DTMProxy's getAttributes() call. ***** Note: this does _not_ current attempt to cache any of the data; if you ask for attribute 27 and then 28, you'll have to rescan the first 27. It should probably at least keep track of the last one retrieved, and possibly buffer the whole array. ***** Also note that there's no fastpath for the by-name query; we search linearly until we find it or fail to find it. Again, that could be optimized at some cost in object creation/storage.
DTMProxy: DTMProxy presents a DOM Node API front-end to the DTM model. It does _not_ attempt to address the "node identity" question; no effort is made to prevent the creation of multiple proxies referring to a single DTM node. Users can create a mechanism for managing this, or relinquish the use of "==" and use the .sameNodeAs() mechanism, which is under consideration for future versions of the DOM. DTMProxy may be subclassed further to present specific DOM node types.
ChunkedIntArray: ChunkedIntArray is an extensible array of blocks of integers. (I'd consider Vector, but it's unable to handle integers except by turning them into Objects.) Making this a separate class means some call-and-return overhead. But doing it all inline tends to be fragile and expensive in coder time, not to mention driving up code size. If you want to inline it, feel free. The Java text suggest that private and Final methods may be inlined, and one can argue that this beast need not be made subclassable...
XPATHErrorResources: Set up error messages. We build a two dimensional array of message keys and message strings. In order to add a new message here, you need to first update the count of messages(MAX_CODE)or the count of warnings(MAX_WARNING). The array will be automatically filled in with the keys, but you need to fill in the actual message string. Follow the instructions below.
DTMLiaison: Liaison to Document Table Model (DTM) XML parser -- the default liaison and parser that XSLTProcessor uses to perform transformations. To enhance performance, DTM uses integer arrays to represent a DOM. If you are reading or writing a DOM, use XercesLiaison.
XercesLiaison: Provides XSLTProcessor an interface to the Xerces XML parser. This liaison should be used if Xerces DOM nodes are being process as the source tree or as the result tree.
DTMException: Simple implementation of DOMException. Could have used the one in com.ibm.xml.dom, but didn't want to depend on that package.
XPATHErrorResources_en: Default implementation of XPATHErrorResources. This is just an empty class.
DTMNodeVector: Simple class to hold an array of nodes.
IntToObjectMap: Map simple ints to objects.
XPATHErrorResourceBundle: LangResources_en.properties
IntMap: Simple int lookup.
DTMXPath: Override the createXLocatorHandler method.
DTMNodeLocator
DTMNodeLocatorFactory: Implement an XPath factory.
| Home | Contact Us | Privacy Policy | Terms of Service |