<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="pmathml.xsl"?><html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://www.w3.org/1999/xhtml">
   <head>
      <title>Why such complexity?</title>
      <link href="../Tools/slide-640.css" rel="stylesheet" type="text/css" title="W3C Talk" /><style xmlns:pref="http://www.w3.org/2002/Math/preference" type="text/css">
      math { font-size: 30pt }
    </style></head>
   <body><a href="http://www.w3.org/"><img src="../Icons/w3c_home.gif" alt="W3C  " /></a><h1 class="slide">
         <h2 xmlns:pref="http://www.w3.org/2002/Math/preference">Why such complexity?</h2>
      </h1>
      <hr class="top" />
      <div>
         <p xmlns:pref="http://www.w3.org/2002/Math/preference">Well, you have what you asked for!</p>
         <ul xmlns:pref="http://www.w3.org/2002/Math/preference">
              
            <li>More functionality: support for regexps, grouping, date manipulating
                   functions, collations etc.
            </li>
            
         </ul>
         <p xmlns:pref="http://www.w3.org/2002/Math/preference">But also, interoperability with other specs:</p>
         <ul xmlns:pref="http://www.w3.org/2002/Math/preference">
              
            <li>XML Schema simple types</li>
              
            <li>XML Query</li>
            
         </ul>
         <p xmlns:pref="http://www.w3.org/2002/Math/preference">But XSLT 2.0 is not that complicated:</p>
         <ul xmlns:pref="http://www.w3.org/2002/Math/preference">
              
            <li>A lot of the added complexity comes with the (optional) type
                 information
            </li>
              
            <li>Functions and Operators are a library</li>
              
            <li>No fundamental change in processing or data model</li>
              
            <li>Code can be much shorter in some cases:
               	<pre>&lt;foo&gt;
  &lt;xsl:attribute name="bar"&gt;
    &lt;xsl:choose&gt;
      &lt;xsl:when test="baz=1"&gt;baz1&lt;/xsl:when&gt;
      &lt;xsl:otherwise&gt;baz2&lt;/xsl:otherwise&gt;
    &lt;/xsl:choose&gt;
  &lt;/xsl:attribute&gt;
&lt;/foo&gt;</pre>
               <p>Can be shortened to:</p>
               <pre>&lt;foo bar="{if (baz=1) baz1 else baz2}"/&gt;</pre>
                     </li>
            
         </ul>
      </div>
      <hr class="bottom" />
      <table class="footer" cellspacing="0" cellpadding="0" width="97%" summary="footer">
         <tr valign="bottom">
            <td>
               <p class="author">Max Froumentin</p>
            </td>
            <td>
               <p class="index">4 of 18</p>
            </td>
            <td valign="top">
               <div><a rel="previous" href="slide3.xml" accesskey="P"><img src="../Icons/left.gif" width="32" height="32" alt=" previous" title="Back to &#34;Ouch, 4 specifications?&#34;" /></a><a rel="contents" href="Overview.html" accesskey="C"><img src="../Icons/toc.png" width="32" height="32" alt=" contents" title="Table of Contents" /></a><a rel="next" href="slide5.xml" accesskey="N"><img src="../Icons/right.gif" width="32" height="32" alt=" next" title="On to &#34;But I hear 2.0 is not backwards compatible&#34;" /></a></div>
            </td>
         </tr>
      </table>
   </body>
</html>