[Saxdotnet-devel] Discussion status
Brought to you by:
jeffrafter,
kwaclaw
From: Karl W. <ka...@wa...> - 2004-12-10 01:49:04
|
Just a brief review of the current status for the various threads: (only 3 participants so far) A) "Unifying" the core and extension interfaces: No opposition, seems accepted. B) Changing Exceptions in the API Issue around SaxNotSupportedException vs. built in NotSupportedException C) Reducing the versioning / eliminating the Ixxx2 interfaces It seems there is no opposition to the actual proposal, but there are a few details to consider: - Should we remove the IsDeclared mtehod from ILocator and replace it with returning "UNDECLARED" from GetType() - Should GetType() potentially differentiate between "NMTOKEN" and and enumeration? Choices: return "ENUMERATION" or the actual list of values. Question: What is GetType() actually useful for? D) Requiring EndDocument Jeff and I differ in one point: if EndDocument() should be called when IXmlReader.Parse() throws an exception (originating from the parser or a call-back). No feedback yet. E) StartElement, when URI is not present The basic question is, do we indicate the absence of a namespace by returning uri = "" or uri = null? So far, there is a 2:1 vote for uri = "". For matters of consistence the same approach (indicating absence of a string value) should be used throughout, so also for the arguments in Start/EndPrefixMapping(). F) Merging the IXmlReaderControl with IXmlReader Some opposition from Elliotte, that is, 2:1 in favour of adding Suspend/Resume() to IXmlReader. G) SAX holes - Max string length: String.Length is defined as int, not much we can do here. - Skipped entities in attribute values: possibility of marking spot in attribute value (at user option). H) Replace is-standalone feature with ILocator member No discussion yet (but off-list agreement between Jeff and Karl). As far as the current source and documentation is concerned, A, F, H are implemented, some of C is done (except for open issues). D and E are documented along Karl's line of thinking, B is partially implemented by removing SaxArgumentException, G is unresolved. Karl |