Xtract is a generic module for extracting, removing or replacing parts of a document in any block-oriented language (Non-regular, context-free), such as Html or LaTeX. The part to extract remove or replace is pointed out by a path through the nested blocks. Blocks are identified by their name and (a subset of) their parameters. If more than one indistinguishable occurance of a block (names and parameters are the same), the two blocks are identified by their order (The first occurance gets index 1, the second index 2, and so on).
The module is implemented as a class which must be derived (Instansiation of the base-class results in an exception). The derived class should implement all the language-specific functions.
Note:
The version naming system used for Xtract.
Please follow this when developing modules for, and deriving works from, Xtract.