SAX for .NET 1.0 and SAXExpat.NET 1.0 Released


Karl Waclaweck has released version 1.0 of the SAX for .NET project. In the announcement on XML-DEV Karl writes

This is the first production release of the C#/.NET port of the SAX API.
It should be compatible with MS.NET 1.1 and Mono 1.0.2.

Since the API alone is not enough, a SAX parser implementation has been
released as well: SAXExpat.NET 1.0. It is based on the Expat parser, and
will work on MS.NET 1.1. Currently Mono 1.0.2 is not able to run it,
but this will hopefully change with future Mono releases.

Another implementation based on a port of the AElfred parser will
be available soon. It should work under both, MS.NET and Mono.

The project page is here: http://saxdotnet.sourceforge.net/

It’s good to see more Open Source XML projects showing up for the .NET Framework. I haven’t missed using SAX that much but I imagine people coming to the .NET Framework from the Java world would love to be able to keep using their favorite push model XML parsing API.


Comments (4)

  1. Just curious,

    why did you strike out Mono 1.0.2?

    Karl

  2. Because a few sentences later you wrote "Currently Mono 1.0.2 is not able to run it, but this will hopefully change with future Mono releases."

  3. This only applies to SAXExpat, not SAX.

    Karl

  4. You said: "I haven’t missed using SAX that much but I imagine people coming to the .NET Framework from the Java world would love to be able to keep using their favorite push model XML parsing API."

    In my case I didnt till I needed some special functionality, either because it is imposible (AFAIK) with the current XMLValidatingReader/XMLTextReader combos, or it isnt really apparent how to do it in .Net’s Xml Library (that is mostly the same as being imposible).

    The story goes like this, suppose you have a socket that receives an XML Document, then using .Net’s libraries you have to get the whole document before start parsing because XmlTextReader waits until the data stream is finished to return you the control. If the data is too big or you need certain degree of control while this stuff is coming in you are left in the middle of nowhere as the API do not let you do parsing while reading.

    Because of that a lightweight comunication protocol using XML messages where the session is the document is way out of the league of .Net Xml Library.

    That with SAX is just implicit in the way it work ;). So I will definitly take a look at SAX for .NET

    If anyone can prove me wrong (without writing a new XmlTextReader alternative) I would really appreciate it, you can email me at flois (at) madryn (dot) com (dot) ar.

    Greetings

    Federico Andres Lois