XMLDB uses an RDBMS to persist arbitrary XML documents. Due to its storage mechanism, searching for and recalling documents is extremely quick. You can also perform XSL translation on documents with surprising speed. The library can be used in any program to store libxml2 documents. A PHP module is also included, making XMLDB into a complete three-tier Web application development suite.
glark offers grep-like searching of text files, with very powerful, complex regular expressions (e.g., "/foo\w+/ and /bar[^\d]*baz$/ within 4 lines of each other"). It also highlights the matches, displays context (preceding and succeeding lines), does case-insensitive matches, and automatic exclusion of non-text files. It supports most options from the GNU version of grep.
Colorer Library provides source text syntax highlighting and text parsing services for host applications. It colorizes source code on host editor systems in more than 100 formats. It uses the powerful HRC format (XML, regexp, context-free grammars), allowing it to support any language. The parser can search and build lists of special text tokens (function lists, syntax errors) and search and indent programming language constructions (brackets, paired tags).
CodeWorker is a versatile parsing tool and a universal source code generator. It interprets a scripting language for producing reusable, tailor-made, evolving, and reliable IT systems with a high level of automation. The file formats to parse are described in an extended-BNF syntax. Template-based scripts drive the writing of patterns for generating code or text. The code generation knows how to preserve protected areas with hand-typed code and provides code expansion, source-to-source translation, and program transformation. It provides a native translation of CodeWorker's scripts in C++.
JTLT is a general text based templating system that is very easy to use and powerful. It can be used for almost anything, including code generation for translators/compilers and HTML output for Java servlets. It features replaceable keys, nested block structures, an extensible macro system (even keys are implemented as macros), a separation of parsing and output generation, a separation of macro settings and parsing, in-memory caching of parsed templates, weak typing, and extensive documentation.
GXPARSE is not a new XML parser, but is an additional processing layer that makes it much easier to use event-based parsers like the SAX parser. It supports both direct sequential output and random access output (via the Resequencer interface). The random access mode delays output until all input has been processed, but makes it much easier to handle ID/IDREF attributes. GXPARSE maintains most advantages of the event-based parser. Application development and maintenance is considerably easier, but processing is a little slower.