Hi IaS,
I chatted with my colleague who wrote the 172 ME parser, you may find
the source, under the SCSL license here [1].
As i understand this code is about 2 years old and does not have the
most up to date bug and performance fixes. I think my colleague did some
very good work here and he achieved very good results in implementing a
compact and performant implementation.
This is not fully compliant to the XML 1.0 specification in a few areas
but i think at the time it went (and potentially still does go) much
further than existing parsers. The following are not supported:
- No support for internal and external subsets of an XML document i.e.
DTDs. This is because SOAP messages are restricted to such XML documents
that do not contain internal and external subsets.
- No validation of characters above 0x80. Below this range it enforces
the character validation constraints specified by Char, NCName and
NCNameChar.
- No decoding of Unicode characters encoded as 4 bytes in UTF-8.
- No validation of duplicate attributes.
The parser does suppport UTF-8 (with certain constraints as described
above) and UTF-16.
The FISE implementation does complete well-formed validation as
specified XML 1.0. Again i think this re-enforces the need for a fork so
that things can progress independently until we can understand better
how to share code.
Perhaps there is common subset of FIME and the XMLME implementation for
UTF-8 and UTF-16 encoding/decoding that can be shared to save space?
There is also code in FISE that may not be needed for FIME, for example
duplicate attribute checking an in-scope namespace checking in addition
to full character validation.
Paul.
[1]
http://java.sun.com/products/wsa/
--
| ? + ? = To question
----------------\
Paul Sandoz
x38109
+33-4-76188109