Two things I think people always forget when considering XSLT are that to do XSLT well you need to know XPath and that sometimes you need to extend XSLT with your own custom functions to make life easier.

As to your novice programmers. Well if they already know Perl then picking up TT should be a snap. If they are manipulating XML then they will have to learn XML/XSLT/XPath anyway. However, I find XSLT very frustrating as outputting plain text or maintaining correct formatting in a document can be hard. Add in complex XPath and then I find myself reaching for TT or for HTML::Template.

At work, I tend to use XSLT purely in XSL-FO and create the underlying XML via TT. I rarely use XSLT out of the box unless my underlying data is in XML to begin with. So you know, XSL-FO can be used to create RTF and PDF documents (to name a few).

Of course, language neutrality is a boon for XML but there is nothing stopping you exposing whatever service you provide as a webservice or adding an additional output switch (for the command line as an example) for added interoperability.

My own personal take is that it depends. It depends on whether you are going to be processing XML most of the time, you have data in XML format or you need to interoperate between systems/applications. If your programs aren't going to do this then there probably isn't a need for XML at that time.

If you do decide to use XML/XSLT then you will need a good and fast library. For that I would recommend the LibXML and LibXSLT libraries from the Gnome project.

HTH

In reply to Re: Model-View-Controller: Template Toolkit vs. XSLT by simon.proctor
in thread Model-View-Controller: Template Toolkit vs. XSLT by kvale

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.