[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SAX 2.0 Enhancement proposal (2nd Ed)
- From: Rob Lugt <email@example.com>
- To: firstname.lastname@example.org
- Date: Fri, 15 Jun 2001 14:36:55 +0100
To summarise the position so far:-
There have been a number of eminent responders to my original proposal .
Explicit supporters were Normal Walsh , James Clark  and Jonathan
Borden . Paul Grosso  did not say so explicitly, but I believe the
proposal has his support also. David Brownell  did not like the proposal
at all, and David Cleary  is concerned about the effect that James
Clark's modified proposal will have on non-Java implementations.
The weight of opinion then is on the side of change. The proposal for a new
interface in the next version of SAX (SAX 3.0?) remains unmodified so I
propose it goes onto the 'list of proposed enhancements' that I presume
David Megginson has tucked away somewhere to be resurrected when SAX
eventually goes to its new home.
The proposal for a bug-fix to SAX 2.0 needs modification along the lines of
James Clark's suggestion.
Modified SAX 2.0 Bug-Fix Proposal:
1) create a new standard feature:
http://xml.org/sax/features/absolutize-system-identifiers with a default
value of false. Applications may modify this feature at any time. When set
to 'true', the behaviour of SAX will be altered so that calls to
EntityResolver::resolveEntity will not turn system identifiers into absolute
2) In order to furnish the application with the base URI of the entity
containing the ENTITY declaration, I would like your opinion on a choice
a) When http://xml.org/sax/features/absolutize-system-identifiers is true,
the systemId parameter contains the system identifier from the ENTITY
declaration concatenated with the baseURI in effect when the ENTITY
declaration was read. The two strings are separated with SOH (0x01) which
is not a legal system identifier character.
b) A new standard property: http://xml.org/sax/properties/baseURI. This
property will contain the baseURI as described in (a) above. The value of
this property will only be valid during the invocation of a resolveEntity()
Votes, suggestions and comments welcome!