jstrachan    02/05/30 09:00:56

  Modified:    jelly    project.properties
               jelly/xdocs navigation.xml
  Added:       jelly/xdocs todo.xml
  Removed:     jelly    TODO.txt
  Log:
  Added Vinay's patch so that the To Do List is now in XML format so that it can be 
put onto the website. Thanks Vinay!
  
  Revision  Changes    Path
  1.5       +1 -0      jakarta-commons-sandbox/jelly/project.properties
  
  Index: project.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/jelly/project.properties,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- project.properties        30 May 2002 08:13:50 -0000      1.4
  +++ project.properties        30 May 2002 16:00:56 -0000      1.5
  @@ -7,6 +7,7 @@
   maven.compile.deprecation = off
   
   maven.jarResources.basedir=${basedir}/src/java
  +maven.junit.usefile = false
    
   
   # use Sun coding standards
  
  
  
  1.4       +1 -0      jakarta-commons-sandbox/jelly/xdocs/navigation.xml
  
  Index: navigation.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/jelly/xdocs/navigation.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- navigation.xml    28 May 2002 07:14:58 -0000      1.3
  +++ navigation.xml    30 May 2002 16:00:56 -0000      1.4
  @@ -9,6 +9,7 @@
         <item name="Overview"                href="/index.html"/>
         <item name="FAQ"                     href="/faq.html"/>
         <item name="Detail"                  href="/overview.html"/>
  +      <item name="To Do List"              href="/todo.html"/>
       </menu>
     </body>
   </project>
  
  
  
  1.1                  jakarta-commons-sandbox/jelly/xdocs/todo.xml
  
  Index: todo.xml
  ===================================================================
  <?xml version="1.0"?>
  
  <document>
    <properties>
      <title>TODO</title>
      <author email="[EMAIL PROTECTED]">James Strachan</author>
    </properties>
  
    <body>
      <section name="TODO"> 
        <p>
          The following is a list of items that need to be completed in
          Jelly.  Contributions are welcome!.
        </p>
        <ul>
          <li>autogenerate tag library documentation, in a kinda javadoc style, 
showing all tag libraries, 
                        their tags and descriptions of their tags</li>
          <li>Patch TagLibrary to alias all &lt;mixedCase&gt; tags to 
&lt;mixed-case&gt;  tags</li>
                <li>Add tags &lt;copy&gt; &lt;copyOf&gt; &lt;element&gt; 
&lt;attribute&gt; to JSL </li>
                <li>Add JSL test cases to test for ordering of patterns and that the 
correct output comes out.</li>
                <li>Rename the DynaTag interface to be DynamicAttributes along with 
JSP1.3, 
                        also add a namespace URI parameter
                </li>
                <li>Add JUnit tags along these lines...
  <pre>&lt;junit:assert test="${foo == 22}"&gt;some description&lt;/junit:assert&gt;
  &lt;junit:assertEquals value="${foo}" expected="${22}"&gt;some 
description&lt;/junit:assert&gt;
  </pre>
                </li>
                <li>Add support for namespace URI use inside XPath expressions.</li>
                <li>When defining new tags using &lt;define:tag&gt;, we should allow 
attributes to be named,<br/>
                        specified as required, specify the optional conditions and so 
forth for validating instances.<br/> 
                        I guess this could just be normal script though.
                </li>
                <li>The org.apache.commons.jelly.impl package doesn't have a great 
name - <br/>
                        Can we think of a better one? <br/>
                        Also some of the classes in this package could maybe do with a 
rename? <br/>
                        ScriptBlock for example - should we just call it a Block or 
maybe a CompositeScript?
                </li>
                <li>Add EmptyScript to allow tags optimise if their body is empty.</li>
                <li>Add whitespace trimming support. <br/>
                        Allow a taglib to decide which tags 'trim' and which don't so 
that<br/>
                        unnecessary whitespace can be removed at compile time.
                </li>
                <li>Add parent Context and support for other scopes such as session, 
<br/>
                        request, cookie, initParam, param etc.<br/>
                        Maybe add a Scope class for variable names which can contain a 
scope name <br/>
                        and variable name. Then things like  cookie:foo or 
initParam:bar can be parsed <br/>
                        at compile time into an object.<br/>
                </li>
                <li>Add getResource() and getResourceAsStream() methods from 
ServletContext to <br/>
                        Context to allow  included files to be loaded etc.
                </li>
                <li>Add an adapter to run JSP tag libraries inside Jelly when Jelly is 
used in a 
                        Servlet / JSP environment?
                </li>
                <li>Document much more!</li>
                <li>Provide an alternative non-XML parser such that Jelly scripts do 
not<br/>
                        need to be XML. This could allow Velocity-style concise 
notation <br/>
                        for common Jelly tags.
                </li>
                <li>Provide easy compile time tag transformations. Here are some 
possible use cases
  <pre>
  &lt;magic:form&gt;
        &lt;form&gt;
                  &lt;input name="foo"&gt;
                  &lt;input name="bar"&gt;
        &lt;/form&gt;
  &lt;/magic:form&gt;
  </pre>
                        Then at 'parse/compile' time the &lt;magic:form&gt; could 
transform its fragment
                        of real HTML into
  <pre>
  &lt;form&gt;
    &lt;input name="foo" &lt;j:expr value="${foo}"&gt;
    &lt;input name="bar" &lt;j:expr value="${bar}"&gt;
  &lt;/form&gt;
  </pre>
                        i.e. tags can just be a simple transformation mechansim that 
can add some<br/>
                        common programatical guff to scripts. <br/>
                                                        Or <br/>
                        We could do SOAP scripting...<br/>
  <pre>
  &lt;babelfish:translate from="EN" to="FR"&gt;
        hello Geir
  &lt;/babelfish:translate&gt;
  </pre>
                        The &lt;babelfish:translate&gt; tag could really just be a 
small 'macro'<br/>
                        autogenerated from a SOAP WSDL file that expands in place to 
the full SOAP<br/>
                        equivalent of<br/>
  <pre>
  &lt;io:soap url=http://babelfish.altavista.com/soap 
              SOAPAction="urn:babelfish"&gt;
     &lt;io:body&gt;
         &lt;SOAP-ENV:Envelope
                        xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/";
                        
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"&gt;
            &lt;SOAP-ENV:Body&gt;
                 &lt;babelfish:translate xmlns:babelfish="bablefish.altavista.com" 
from="EN" to="FR"&gt;
                                        hello Geir
                 &lt;/babelfish:translate&gt;
                &lt;/SOAP-ENV:Body&gt;
         &lt;/SOAP-ENV:Envelope&gt;
     &lt;/io:body&gt;
  &lt;/io:soap&gt;
  </pre>
                  So its more of a traditional macro - though could be implemented 
using XML<br/>
                  technology for the transformation (e.g .it could use SAX, XSLT, 
XPath or<br/>
                  DVSL to transform itself and its body).
                </li>
  
          </ul>
      </section>
      <section name="Ponder about"> 
        <p>
          The following is a list of things that might be good to add to Jelly, maybe 
after more thought.
        </p>
        <ul>
          <li>
                        maybe consider a tag which will switch the default EL to 
XPath; then XPath and EL can be peers. Then ${foo}
                        can be used as an XPath expression anywhere
                </li>
                <li>
                        Consider using &lt;jsl:stylesheet var="foo"&gt; then reusing 
the stylesheet later via 
  <pre>
  &lt;style stylesheet="${foo}"&gt;
        xml goes there...
  &lt;/style&gt;</pre>
                </li>
          </ul>
      </section>
    </body>
  </document>
  
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to