Hi Brett --

> I'll assume you are referring to XSL-T and not XSL-FO.  I've found
> XSL-T to be a great way to do a lot of different things in a standard
> way, but for most purposes it is overkill and it tends to a
> maintainence headache (I hesitate to say nightmare) in production.

I first heard about XSL-T a little over a year ago.  My opinion of it has
not changed much, and is somewhat similar to your own.  I feel that XSL is
yet another scheme for dis-integrating HTML from functionality, but that it
does so very poorly for a variety of reasons.

My primary complaint is that XSL does not reduce complexity.  It actually
INCREASES the amount of moving parts for dynamic applications.  Instead of a
traditional CGI->Template->HTML path, XSL implements a more complicated
CGI->XML->XSLT->HTML path.

Second, nobody knows XSL.  Very few programmers know it, and I've NEVER met
a competent designer who knows it.  XSL is similar in function to CSS.
However, LOTS of people know CSS, including all the top web designers.  CSS
works great -- there is no need to replace it with something which is
unproven.

The ONLY upside I can see for XSL-T is a situation where you have 10,000
*static* XML documents on your server.  In that situation, XSL-T might be a
great way to dynamically format your raw data for HTML output.  Of course,
you could also use T.J. Mather's excellent "Apache::PageKit" for that task.
PageKit uses HTML::Template, which is easy for the best designers to use
without a need for special training or programming skill.

My bottom line opinion:  If you are happy with XML geeks designing your web
site, XSL is great.  If you want to hire the best DESIGNER to design your
website, look elsewhere.  XSL-T is a solution in search of a problem, IMHO.


That said, TIMTOWTDI!  If XSL-T is important for what anybody on the list is
doing, I am interested in making your job easier.  A CGI::Application::XSL
module would be utterly simple to make.


> See my other posting about CGI::XMLApplication for more on your actual
> question.  I'm not sure how it makes sense to have as a subclass since
> it is just an output mechanism (is there a
> CGI::Application::Template?), but I'm not really familiar with common
> usage either.

The sub-class modifications would just be to an output handler.  In fact,
this might be a great use of the newly envisioned cgiapp_preoutput() method.
The cgiapp_preoutput() method could expect $body to contain a chunk of XML,
and based on some other property, an XSL document could be specified.  Maybe
the XSL-T process could happen as a part of the cgiapp_preoutput(), so that
your app module actually spits out HTML.


> This is the entire reason I found CGI::Application and subscribed to
> this mailing list (CGI::XMLApplication).  CGI::Application is itself
> similar to things I've designed (I may have some input when I get the
> chance) but I was curious about CGI::XMLApplication, although I
> haven't really investigated that yet.  I expected CGI::XMLApplication
> to be related in some way and was surprised when it was not.

I suspect Kip did his own module because didn't know about CGI::Application,
or because he thought that the state-management aspect of what he wanted to
do was less than it really is.  What he's done is basically create a more
specialized CGI state-management system.

I would definitely be interested in working with Kip to make a
CGI::Application::XSL module to replace CGI::XMLApplication.  He appears to
be an expert on the subject and someone who uses this technology on a daily
basis, which would make him better candidate than I to figure out the exact
functionality.


TTYL,

-Jesse-


----

  Jesse Erlbaum, CTO
  Vanguard Media
  212.242.5317 x115
  [EMAIL PROTECTED]



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

Reply via email to