<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
                      "http://www.w3.org/TR/WD-html-in-xml/DTD/xhtml1-strict.dtd">
<HTML>
 <HEAD>
  <TITLE>Xerces 2 | Schedule</TITLE>
  <LINK href="css/site.css" rel="stylesheet" type="text/css">
<STYLE type="text/css">
     .note { font-size: smaller }
    </STYLE>
 </HEAD>
 <BODY>
  <SPAN class="netscape">
   <H1>Xerces 2 Schedule</H1>
   <H2>Current Milestones</H2>
   <A name="M2"></A>
   <H3>Parser with DTD scanning without validation    (M2)   </H3>
   <P>
    <TABLE border="0">
     <TR>
      <TH>Date:</TH>
      <TD>Friday, 6 October 2000</TD>
     </TR>
     <TR>
      <TH>Depends:</TH>
      <TD><A href="#M1">M1</A></TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>More documentation<SPAN class="note">
        <BR>     Parser initialization and the validation system needs
        to be     documented.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:jeffreyr@us.ibm.com">Jeff Rodriguez</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <A href="mailto:lehors@us.ibm.com">Arnaud Le Hors</A>
        - <EM>Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>     Re-organize package structure to separate core interfaces
       and     classes from implementation    <SPAN class="note">
        <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:andyc@apache.org">Andy Clark</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <A href="mailto:lehors@us.ibm.com">Arnaud Le Hors</A>
        - <EM>Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Improve entity manager and scanner<SPAN class="note">
        <BR>     Must support external entities, including the DTD
        entity and     pre-defined general entities (e.g. &amp;amp;).    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:andyc@apache.org">Andy Clark</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Improve document scanner<SPAN class="note">
        <BR>     Handle trailing miscellaneous section; premature end of
        file; use     the error reporter; etc.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:ericye@apache.org">Eric Ye</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Parsing of DOCTYPE line and DTD markup declarations<SPAN class="note">
        <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:lehors@us.ibm.com">Arnaud Le Hors</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Storing basic DTD grammar information<SPAN class="note">
        <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:jeffreyr@us.ibm.com">Jeff Rodriguez</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
    </TABLE>
   </P>
   <A name="M3"></A>
   <H3>Parser with DTD scanning + datatypes and content model validation
    (M3)   </H3>
   <P>
    <TABLE border="0">
     <TR>
      <TH>Depends:</TH>
      <TD><A href="#M2">M2</A></TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Ever more documentation<SPAN class="note">
        <BR>     Document parser configurations and how new components
        and      configurations would be written and connected.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:andyc@apache.org">Andy Clark</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Datatype validators<SPAN class="note">
        <BR>     Only those datatype validators needed for DTD grammars
        need to be     added. All DTD datatypes should work: CDATA,
        ENTITY, ENTITIES, ID,     IDREF, IDREFS, NMTOKEN, NMTOKENS, and
        NOTATION.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:jeffreyr@us.ibm.com">Jeff Rodriguez</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Content model validators<SPAN class="note">
        <BR>     This affects the following classes:
        SimpleContentModel, MixedContentModel, DFAContentModel.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:ericye@apache.org">Eric Ye</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
    </TABLE>
   </P>
   <A name="M4"></A>
   <H3>Parser with DTD scanning and Schema parsing + validation    (M4)   </H3>
   <P>
    <TABLE border="0">
     <TR>
      <TH>Depends:</TH>
      <TD><A href="#M3">M3</A></TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>DOM implementation<SPAN class="note">
        <BR>     Write the DOMParser to populate the DOM tree. Decide
        what should     be done with the &quot;deferred&quot; DOM
        implementation.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:lehors@us.ibm.com">Arnaud Le Hors</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Schema structures updated to current spec (22 Sep 2000)<SPAN class="note">
        <BR>Can this be done without using the DOM?<BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:ericye@apache.org">Eric Ye</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Schema datatypes updated to current spec (22 Sep 2000)<SPAN class="note">
        <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:jeffreyr@us.ibm.com">Jeff Rodriguez</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
    </TABLE>
   </P>
   <H2>Future Milestones</H2>
   <A name="M666"></A>
   <H3>Full Schema support    (M666)   </H3>
   <P>
    <TABLE border="0"></TABLE>
   </P>
   <A name="M9999"></A>
   <H3>Party!    (M9999)   </H3>
   <P>
    <TABLE border="0"></TABLE>
   </P>
   <H2>Completed Milestones</H2>
   <A name="M1"></A>
   <H3>Parser without DTD support    (M1)   </H3>
   <P>
    <TABLE border="0">
     <TR>
      <TH>Date:</TH>
      <TD>Friday, 29 Sep 2000</TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Document design based on Xerces community feedback<SPAN class="note">
        <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:andyc@apache.org">Andy Clark</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Support classes<SPAN class="note">
        <BR>     This affects the following classes:      XMLString,
        XMLStringBuffer, XMLChar, EncodingMap, SymbolTable, QName.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:ericye@apache.org">Eric Ye</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Basic entity managment<SPAN class="note">
        <BR>     This affects the following classes: XMLEntityManager,
        XMLEntityScanner.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:jeffreyr@us.ibm.com">Jeff Rodriguez</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Basic error handling<SPAN class="note">
        <BR>     This affects the following interfaces &amp; classes:
        XMLErrorReporter, some MessageFormatter.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:ericye@apache.org">Eric Ye</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Parsing of elements and attributes using internal
        interface<SPAN class="note">
        <BR>     This affects the following classes: XMLAttributes,
        XMLDocumentScanner.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:andyc@apache.org">Andy Clark</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
     <TR>
      <TH>Task:</TH>
      <TD>Implement a SAX2 parser from internal callbacks<SPAN class="note">
        <BR>     This affects the following classes:      XMLParser,
        XMLDocumentParser, SAXParser.    <BR>
        <STRONG>Driver:</STRONG>
        <A href="mailto:lehors@us.ibm.com">Arnaud Le Hors</A>
        <BR>
        <STRONG>Contributors:</STRONG>
        <EM>Contributors wanted! Contact task driver to contribute.</EM>
       </SPAN>
      </TD>
     </TR>
    </TABLE>
   </P>
  </SPAN>
  <HR>
<SPAN class="netscape">
     Last modified: $Date$</SPAN>
 </BODY>
</HTML>
