blob: a924df046edbff85a83e03ea47619729384bbfbb [file] [log] [blame]
<?xml version='1.0' encoding='US-ASCII'?>
<!-- $Id$ -->
<!DOCTYPE issues SYSTEM 'issues.dtd' [
<!ENTITY people SYSTEM 'people.ent'>
]>
<issues date='$Date$'>
<!-- People -->
&people;
<!-- Issues -->
<issue id='I1' originator='andyc'>
<title>Entity Management &amp; Readers</title>
<detail>
The heart of parsing XML documents is the interaction between
the various scanners and the document input stream. Since this
is the critical path in the parser, performance is an important
consideration. Yet, at the same time, the interaction between
scanner and reader should be simple and straightforward.
</detail>
<problem>
<detail>
Entity stack management. The scanners can push readers on the
stack when an entity reference is seen but who pops the reader?
</detail>
</problem>
<problem>
<detail>
Who scans the XMLDecl and TextDecl lines? The scanner(s) or
the entity reader?
</detail>
</problem>
<problem>
<detail>
Handling the changing of the input stream reader based
on the encoding specified in the XMLDecl or TextDecl lines.
</detail>
</problem>
<problem>
<detail>
How do we handle the pushback buffer needed at certain
times during parsing while still keeping the amount of
delegation down to a minimum?
</detail>
</problem>
</issue>
<issue id='I2' originator='estaub'>
<title>Parser Pipeline Construction</title>
<detail>
The parser is designed as a pipeline and the components need
to be connected together and configured.
</detail>
<problem>
<detail>
Is there a generic way to put components together in
order to construct the pipeline? If users want to
construct a new parser object with a different pipeline
configuration, this should be easy to do.
</detail>
</problem>
</issue>
<issue id='I3' originator='estaub'>
<title>Operations on XML Infoset</title>
<detail>
There are many emerging XML standards that involve operations
on the <a href='http://www.w3.org/TR/xml-infoset'>XML Infoset</a>.
<a href='http://www.w3.org/TR/xinclude'>XInclude</a> is one of
these standards that defines how XML inclusion operates on the
Infoset.
</detail>
<problem>
<detail>
When should these operations take place in the parser
pipeline: before or after validation? And if it's after
validation, then what does it mean for the parser to say a
document is "valid"? The inclusion could cause the document to
become invalid. This is more than an implementation issue; it's
a standards issue.
</detail>
<comment author='estaub' link='http://archive.covalent.net/xml/xerces-j-dev/2000/09/0482.xml'>
If XInclude processing were called after validation, then what would be
validated would be the unexpanded XInclude. In other words, the schema or
DTD would describe the original unexpanded xinclude:href attributes, and so
forth.
</comment>
</problem>
<problem>
<detail>
Should operations on the XML Infoset even be in the parser
pipeline?
</detail>
</problem>
</issue>
</issues>