Menu

GXPARSE: XML stream parser API / News: Recent posts

Release 0.2.0 with upgraded pattern-matching

Scanner package is redesigned for easier and more flexible use in scanning and pattern-matching
Added support for modular creation of scan rules from other scan rules.

Also added support for element mapping (automatic mapping of XML elements to Java handlers). Extensive changes to Javadoc

Posted by Ian E. Gorman 2006-03-16

Pattern matching simplified

Pattern matching has been simplified, and a class (Modifier) of operators has been added to aid in building complex patterns. The ScanRule class is like a perl pattern-codeblock rule, but can be used for recursive pattern matching. GXPARSE web page and user manual now has examples of recursive pattern matching.

Posted by Ian E. Gorman 2005-08-24

GXPARSE now includes recursive pattern matching

Pattern matching tools have been implemented using Java regular expression package java.util.regex. The tools can be used like the pattern-action rules of awk and perl, and can also be used for recursive pattern matching. Recursive pattern matching can recognize nested sets of parentheses, and can be used to implement small recursive-descent parsers. The JUnit tests provide some working examples.

Posted by Ian E. Gorman 2005-05-24

The beginning of (user) documentation

Version gxparse-sf-alpha-1_6 includes some programming examples, and the beginning of a user manual (in docbook format, with a HTML tranlation). A simple docbook-to-HTML translator (using GXPARSE) did the translation and is included with the source code.

Posted by Ian E. Gorman 2005-01-19

Full XML Namespace Support

Namespace support is complete, with an ElementMapper implementation (PackageNamespaceElementMapper). Exception handling is more friendly, and some operators have been added to CurrentElement. The project home page has a list of changes.

Posted by Ian E. Gorman 2004-09-23

More changes to support namespaces

API changes have been made to Parser, Listener and ElementMapper. These changes are intended to support namespaces, and to support modular design in large applications. See release gxparse-sf-alpha-1_4 and http://gxparse.sourceforge.net/gxparse.change.html for more information about changes in this version and about planned changes.

Posted by Ian E. Gorman 2004-08-24

Preliminary changes toward full support for namespaces

Class XMLName has been replaced by Java 1.5 class java.xml.namespace.QName, as part of the extension to full namespace support, and also for more consistency with standard Java XML conventions. Internal changes have been also made for greater reliability and re-usability. See http://gxparse.sourceforge.net/gxparse.todo.html for more information about planned changes in the API.

Posted by Ian E. Gorman 2004-06-27

License changed to LGPL to allow more freedom

New version gxparse-sf-alpha-1_2 is identical to version gxparse-sf-alpha-1_1 except for change of license to GNU Lesser General Public License (LGPL) from GNU General Public License. LGPL permits the software to be used in combination with software that is under other Open Source Licenses. There is no loss of freedom, because LGPL allows your to revert to GPL.

Please replace older versions by the new version under LGPL.

Posted by Ian E. Gorman 2004-06-06

Updated for Java 1.5.0 beta2

GXParse has been revised for Java 1.5.0 beta 2. A list of planned changes has been added to the project home page.
Resequencing of output can now be done without requiring a unique key for each item of data that will be written out of normal sequence, and the keys can now be an instance of any Java class.

Posted by Ian E. Gorman 2004-06-01

Stronger type checking at compile time.

GXPARSE has been converted to Java 1.5 so that type mismatches in the keys used by Resequencer will appear at compile time, instead of causing runtime ClassCastExceptions.

Posted by Ian E. Gorman 2004-05-26

Resequencing extended to WriterStack

GXPARSE alpha 0.4 is released.

Resequencing is now available on WriterStacks, so that an XML application can use both Writer redirection and pseudo-random access to the output stream of the current Writer.

GXPARSE includes an example showing how ID and IDREF attributes can be handled very easily with GXPARSE and SAX.

Until the next release, the example "Using Resequenced Output to handle ID attributes and IDREF attributes" can be seen at http://gxparse.sourceforge.net/doc/ca/gorman/xml/parse/demo/doc-files/Idrefs.html

Posted by Ian E. Gorman 2004-05-15

New element mapper for XML stream parser API

Version 0.3 of the XML stream parser has an ElementMapper class that automatically maps element names to the name of a Java element handler method. ElementMapper maps to a default method when no specific method is provided. To handle any element in a specific way, you define a method for that element. Elementmapper will find and invoke the method when that element is encountered. The XML strema parser API can be downloaded from gxparse.sourceforge.net and is under GNU Generap Public License.

Posted by Ian E. Gorman 2004-03-22

XML stream parser API alpha version 0.2

GXPARSE makes it lot easier to use the SAX parser. Version 0.2 fixes a bug (XML name equality) and has revised error handlers in the Listener interface. An implementation is included for the SAX parser. Later versions will have implementations for the XERCES interface and for ESIS (like the output of James Clark's parser). This alpha version is released under GNU General Public License.

Posted by Ian E. Gorman 2004-03-13

Easier XML stream parsing with new push parser API

GXPARSE is a front end that considerably reduces the cost of using event-based push parsers like the SAX parser. One of its features is output resequencing, which makes it much easier to handle ID/IDREF attributes.

GXPARSE is not a new parser, it is an additional layer of processing to be used over an existing event-based parser like David Megginson's SAX parser. GXPARSE maintains most of the advantages (reliability, compliance to standards, etc.) of the event-based parser and adds the advantage of much lower cost for application development and maintenance. The one disadvantage of GXPARSE is a somewhat reduced processing speed, because the API adds another layer of processing between the application and the event-based XML parser, and because GXPARSE provides enhanced services that won't be needed in some applications.... read more

Posted by Ian E. Gorman 2004-02-26