You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by js...@apache.org on 2002/05/30 18:00:56 UTC
cvs commit: jakarta-commons-sandbox/jelly/xdocs todo.xml navigation.xml
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="jstrachan@apache.org">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 <mixedCase> tags to <mixed-case> tags</li>
<li>Add tags <copy> <copyOf> <element> <attribute> 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><junit:assert test="${foo == 22}">some description</junit:assert>
<junit:assertEquals value="${foo}" expected="${22}">some description</junit:assert>
</pre>
</li>
<li>Add support for namespace URI use inside XPath expressions.</li>
<li>When defining new tags using <define:tag>, 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>
<magic:form>
<form>
<input name="foo">
<input name="bar">
</form>
</magic:form>
</pre>
Then at 'parse/compile' time the <magic:form> could transform its fragment
of real HTML into
<pre>
<form>
<input name="foo" <j:expr value="${foo}">
<input name="bar" <j:expr value="${bar}">
</form>
</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>
<babelfish:translate from="EN" to="FR">
hello Geir
</babelfish:translate>
</pre>
The <babelfish:translate> 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>
<io:soap url=http://babelfish.altavista.com/soap
SOAPAction="urn:babelfish">
<io:body>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<babelfish:translate xmlns:babelfish="bablefish.altavista.com" from="EN" to="FR">
hello Geir
</babelfish:translate>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</io:body>
</io:soap>
</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 <jsl:stylesheet var="foo"> then reusing the stylesheet later via
<pre>
<style stylesheet="${foo}">
xml goes there...
</style></pre>
</li>
</ul>
</section>
</body>
</document>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>