You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axkit-dev@xml.apache.org by ba...@apache.org on 2002/09/10 18:27:31 UTC
cvs commit: xml-axkit/lib/Apache/AxKit/Language XSP.pm
barries 2002/09/10 09:27:31
Modified: lib/Apache/AxKit/Language XSP.pm
Log:
Note XSP singleton limitation upfront, where it will be seen,
and also recomment Perl module taglib implementations over
LogicSheet (upstream XSLT) implementations.
Revision Changes Path
1.22 +30 -1 xml-axkit/lib/Apache/AxKit/Language/XSP.pm
Index: XSP.pm
===================================================================
RCS file: /home/cvs/xml-axkit/lib/Apache/AxKit/Language/XSP.pm,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- XSP.pm 13 Aug 2002 09:23:30 -0000 1.21
+++ XSP.pm 10 Sep 2002 16:27:30 -0000 1.22
@@ -1161,6 +1161,35 @@
each and every step in your transformation process is namespaces aware
and uses the correct namespace declarations.
+Also, use only one XSP processor in a pipeline. XSP is powerful enough
+that you should only need one stage, and this implementation allows only
+one stage. If you have two XSP processors, perhaps in a pipeline that
+looks like:
+
+ ... => XSP => XSLT => XSLT => XSP => ...
+
+it is pretty likely that the functionality of the intermediate XSLT
+stages can be factored in to either upstream or downstream XSLT:
+
+ ... => XSLT => XSP => XSLT => ...
+
+This design is likely to lead to a clearer and more maintainable
+implementation, if only because generating code, especially embedded
+Perl code, in one XSP processor and consuming it in another is often
+confusing and even more often a symptom of misdesign.
+
+Likewise, you may want to lean towards using Perl taglib modules instead
+of upstream XSLT "LogicSheets". Upstream XSLT LogicSheets work fine,
+mind you, but using Perl taglib modules results in a simpler pipeline,
+simpler configuration (just load the taglib modules in httpd.conf, no
+need to have the correct LogicSheet XSLT page included whereever you
+need that taglib), a more flexible coding environment, the ability to
+pretest your taglibs before installing them on a server, and better
+isolation of interface (the taglib API) and implementation (the Perl
+module behind it). LogicSheets work, and can be useful, but are often
+the long way home. That said, people used to the Cocoon environment may
+prefer them.
+
=head2 Result Code
You can specify the result code of the request in two ways. Both actions