The Rocket Software XmlDoc
(http://wiki.sirius-software.com/index.php/XmlDoc_API#The_XmlDoc_class)
and XmlParser (http://m204wiki.rocketsoftware.com/index.php/XmlParser_API)
APIs available for the Model 204 database are completely written in
Assembler though users access them via the SOUL O-O language. The XmlDoc
classes are full O-O XML APIs with a parser and serializer and the
XmlParser classes are a SAX stream-based XML parser (like SAX but better
because it uses method variables rather than inheritance). All of these
APIs provide full-on unicode support for the users with automatic
conversion to/from EBCDIC as possible.

Unfortunately from the OP's perspective, these APIs are proprietary and
tightly coupled into the Model 204/SOUL environment. So this is mainly
just bragging and as a point of information for people wondering what sort
of work is being done in Assembler these days. While the fact that Model
204 is written almost completely in assembler forced our hand, I'm not
convinced that the implementation of these classes would have been
significantly easier than in a higher level language.

The main down-side of having implemented in assembler is that, in the
early days we did get the odd storage overlay bug that was quite difficult
to diagnose. Of course you can get these in C and C++ also. Type-safe
languages such as C# and Java manage to avoid these issues though my
experience is that this comes at the very real cost of loss of control or
at least more difficult control of storage usage.

Sorry, that this doesn't help the OP but, again, I thought some Assembler
jockeys might be interested.

On Wed, 24 Jul 2013 20:31:13 -0400, Paul Raulerson
<[email protected]> wrote:

Is anyone aware of an XML parser written in HLASM?  Ideally, I would
like to find a DOM like parser, but a SAX parser is better than having
to write one from scratch. :)

Oh, this will most likely run under zLInux, so if someone has already
built HLASM interfaces to eXpat or libXML2 or something similar, that
would work very well for us as well.

Thanks,
-Paul


--
Alex Kodat
Senior Product Architect
Rocket Software
t: +1 781 684 2294 • m: +1 315 527 4764
e: [email protected] • w: www.rocketsoftware.com

Reply via email to