<?xml version="1.0" ?>
<!-- gateway-techs.xsl written by Wendy Chisholm 
     command line to process:
     java org.apache.xalan.xslt.Process -IN wcag-src.html -XSL gateway-techs.xsl -OUT techs-gateway.html
-->

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="html" indent="yes" doctype-public='-//W3C/DTD HTML 4.01 Final//EN'/>
   
  <!-- versioning variables -->
  <xsl:variable name="draftDate">XXX</xsl:variable>
  <xsl:variable name="thisVersion">XXX</xsl:variable>
  <xsl:variable name="previousVersion">XXX</xsl:variable>
  <xsl:variable name="latestVersion">XXX</xsl:variable>

    
    <xsl:template match='/'>
      <html><head>
               <link rel="stylesheet" type="text/css" href="http://www.w3.org/WAI/style/waiwg.css"/>
               <link rel="stylesheet" type="text/css" href="http://www.w3.org/TR/WCAG10-HTML-TECHS/style/default.css"/>
               <link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-WD"/>
               <style>
                  .rule {background-color:  #ddeeff; color: black}
                  p {padding-left: 30px}
                  h4 {font-style: italic; padding-left: 10px}
               </style>
               <title>Techniques Gateway for WCAG 2.0</title>
            </head>
         <body>
            <div class="head">
            <p><a href="http://www.w3.org/">
            <img height="48" width="72" alt="W3C" src="http://www.w3.org/Icons/w3c_home" /></a>
            </p></div>
            
            <h1>Techniques Gateway for WCAG 2.0</h1>
            <h2>W3C Working Draft <xsl:value-of select="$draftDate"/></h2>
               <dl>
                  <dt>This version:</dt>
                  <dd><a href="{$thisVersion}"><xsl:value-of select="$thisVersion"/></a></dd>
                  <dt>Latest version:</dt>
                  <dd><a href="{$latestVersion}"><xsl:value-of select="$latestVersion"/></a></dd>
                  <dt>Previous version:</dt>
                  <dd><a href="{$previousVersion}"><xsl:value-of select="$previousVersion"/></a></dd>
                  <dt>Editors:</dt>
                  <dd>Wendy Chisholm, W3C<br />
                  Jason White, University of Melbourne</dd>
               </dl>

            <xsl:apply-templates select="*//div[@class='normative']"/>
         </body>
       </html>
  </xsl:template>
  
  <xsl:template match="div">
       <xsl:apply-templates/>
  </xsl:template>
  
  <xsl:template match="h3">
      <h2><xsl:value-of select="."/></h2>
      <xsl:apply-templates select="ol"/>
  </xsl:template>
  
  <xsl:template match="div[@class='criteria']">
      <xsl:apply-templates/>
  </xsl:template>
  
  <xsl:template match="ol">
      <dl>
         <xsl:apply-templates/>
      </dl>
  </xsl:template>
  
  <xsl:template match="ul">
      <xsl:apply-templates/>
  </xsl:template>
  
  <!-- get rid of paragraphs and headers that are within the success criteria divs. -->
  <xsl:template match="p | h4">
  </xsl:template>
  
  <!-- Need to include all success criteria, even if we don't have info. -->
  <xsl:template match="li">
      <dt><xsl:value-of select="."/></dt>
      <dd>No information provided yet for this success criterion</dd>
   </xsl:template>

  <!-- some success criteria have nested lists. copy these over -->
  <!-- to make this work will have to add an "apply-templates" to each
       criterion template, right? -->
  <!-- xsl:template match="li" mode="sublist">
      <xsl:copy-of select="."/>
   </xsl:template -->

  <!-- create a template for each li element, i.e. each success criteria. This is where the
       non-technology-specific technique info is stored for each success criteria. 
       This means that each success criterion needs a unique id. -->

  <xsl:template match="li[@id='explicit-assoc-nontext-text']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Further information is technology-specific. e.g. use alt on IMG in X/HTML, etc.</dd>
  </xsl:template>

  <xsl:template match="li[@id='text-equiv-function']">
      <dt><xsl:value-of select="."/></dt>
      <dd>To write a description, refer to <a href="http://www.w3.org/2000/08/nba-manual/Overview.html">
      Excerpts from NBA Tape Recording Manual</a></dd>
      <dd>To write a short text equivalent...
         <ul>
            <li>For a spacer image...</li>
            <li>For a bullet...</li>
            <li>For a horizontal rule...</li>
            <li>i.e. a combination of info from <a href="http://www.w3.org/TR/AERT#text-equivalent">
            AERT - Checkpoint 1.1</a> and <a href="http://www.w3.org/TR/2000/NOTE-WCAG10-CORE-TECHS-20000920/#text-equivalent">
            WCAG 1.0 Core Techniques - Text Equivalents</a>.</li>
            <li>Illustrate the examples from the checkpoint (logos, photos, submit buttons, etc.)</li>
            <li>"interactive scripts have a functional equivalent..." can be described in core
            and developed further in scripting specific techniques.  However, this concept in general
            needs to be explored further.</li>
         </ul>
      </dd>
  </xsl:template>

  <xsl:template match="li[@id='text-for-undescribable']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Not technology specific.  Put info and examples here. 
      e.g. Mona Lisa or Beethoven's 5th.  Label them as such rather than trying to describe.</dd>
  </xsl:template>

  <xsl:template match="li[@id='describe-viz-cues']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Not technology-specific. Put info and examples here.</dd>
  </xsl:template>

  <xsl:template match="li[@id='captions']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Not technology-specific. Put info and exmaples here. Refer to 
      <a href="http://www.w3.org/TR/2000/NOTE-WCAG10-CORE-TECHS-20000920/#audio-information">Audio Information</a>
      and <a href="http://www.w3.org/TR/2000/NOTE-WCAG10-CORE-TECHS-20000920/#video-information">Visual
      Motion and Information</a> from the Core Techniques for WCAG 1.0.</dd>
  </xsl:template>

  <xsl:template match="li[@id='synch-desc-and-cap']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology specific. e.g. refer to 
      <a href="http://www.w3.org/TR/SMIL-access/">Accessibility Features of SMIL</a>
      </dd>
  </xsl:template>

  <xsl:template match="li[@id='real-time-broadcast']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Requires development of both core techniques and technology-specific.</dd>
  </xsl:template>

  <xsl:template match="li[@id='unambiguous-struct'] | li[@id='non-hierarchical-relationships'] | li[@id='reading-order']">
      <dt><xsl:value-of select="."/></dt>
      <dd>The non-technology aspect of this success criterion is related to types of content.
      A portal site will have a different logical structure than a long document.</dd>  
      <dd>Since the structure must be represented in the markup, there are lots of
      technology-specifics to cover.</dd>
  </xsl:template>
  
  <xsl:template match="li[@id='sep-structure-pres']">
      <dt><xsl:value-of select="."/></dt>
     <dd>Since the structure must be represented in the markup, there are lots of
      technology-specifics to cover.</dd>
      <dd>Types of models rather than types of content as with 1.3? 
      PDF vs CSS will separate structure from presentation differently.</dd>
  </xsl:template>
  

  <xsl:template match="li[@id='lang-changes']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology specific.  e.g. refer to the Language section in the latest 
      <a href="http://www.w3.org/WAI/GL/WCAG20/WD-WCAG20-HTMLTECHS-20011118.html">HTML Techniques
      for WCAG 2.0 draft</a> (eeeks. no targets! pls search for "language" until a new draft
      is published...apologies...).</dd>
  </xsl:template>

  <xsl:template match="li[@id='multiple-nav-mechs']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Core techniques: provide overview. related to 1.3 and 1.5.</dd>
      <dd>Tech-specifics: examples. site map, search, index, etc.  Particulary related
      to server-side techniques.</dd>
  </xsl:template>

  <xsl:template match="li[@id='easily-id-nav-mechs']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Checkpoints 1.3 and 1.5 "enforce" consistency through structure and markup. If these
      are followed, then this criteria should be met as a side-effect.</dd>
      <dd class="issue">If content types are developed in relation to checkpoints 1.3 and 1.5, will it reduce the 
      need for this checkpoint?</dd>
  </xsl:template>

  <xsl:template match="li[@id='UI-layout'] | li[@id='UI-labels'] | li[@id='UI-behaviors'] | li[@id='unique-UI-doc']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Discussion with examples will go here.  
      Perhaps provide some technology-specific examples.</dd>
  </xsl:template>

  <xsl:template match="li[@id='standard-UI-behaviors']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Need technology-specific exmaples with some overview info in Core Techniques.</dd>
  </xsl:template>

  <xsl:template match="li[@id='deactive-context-changes'] | li[@id='id-context-changes']">
      <dt><xsl:value-of select="."/></dt>
      <dd>The success criteria for checkpoint 2.3 are an either/or.  Therefore, they will likely be
      handled a bit differently than the rest of the success criteria, right?</dd>
      <dd>Provide core exmaple and technology specifics. e.g. <ul>
      <li>script examples</li>
      <li>in HTML: if a has target="new" then you must...</li></ul></dd>
  </xsl:template>

  <xsl:template match="li[@id='auto-update']">
      <dt><xsl:value-of select="."/></dt>
      <dd>technology-specifics: form or client-side scripting</dd>
  </xsl:template>

  <xsl:template match="li[@id='warn-or-extend-time']">
      <dt><xsl:value-of select="."/></dt>
      <dd>technology-specifics: server-side</dd>
  </xsl:template>

  <xsl:template match="li[@id='user-sets-update']">
      <dt><xsl:value-of select="."/></dt>
      <dd>technology-specifics: server-side/form</dd>
  </xsl:template>

  <xsl:template match="li[@id='indefinite-time']">
      <dt><xsl:value-of select="."/></dt>
      <dd>show previous examples w/out time limit?</dd>
  </xsl:template>

  <xsl:template match="li[@id='generic-event-handlers'] | li[@id='multi-device-spec-handlers']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology specifics needed.</dd>
  </xsl:template>

  <xsl:template match="li[@id='flicker']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology-specific research needed.</dd>
  </xsl:template>

  <xsl:template match="li[@id='check-misspellings'] | li[@id='select-rather-than-generate']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology-specific examples.</dd>
  </xsl:template>

  <xsl:template match="li[@id='consistent-presentation']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Reliance on 1.3 and 1.5.  Primary checks in core.  Examples in tech-specifics.</dd>
  </xsl:template>

  <xsl:template match="li[@id='unique-styles'] | li[@id='label-struct-diffs']">
      <dt><xsl:value-of select="."/></dt>
      <dd>technology-specific examples are needed.</dd>
  </xsl:template>

  <xsl:template match="li[@id='hilite-struct-diffs']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Specifically address the different media types? Within tech-specifics address media types?</dd>
  </xsl:template>

  <xsl:template match="li[@id='audience-chars'] | li[@id='familiar-lang']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Not technology-specific.</dd>
      <dd>Need to help people understand the circumstances for when to employ these.</dd>
      <dd>Look at <a href="http://www.w3.org/WAI/GL/2001/11/14-minutes.html#comp-sc">the work 
      by Lisa, Graham, and Charles and the November F2F</a>.</dd>
  </xsl:template>

  <xsl:template match="li[@id='annotate-new-concepts']">
      <dt><xsl:value-of select="."/></dt>
      <dd>This is the same as checkpoint 3.5.  Perhaps instead of having a separate checkpoint
      leave this success criteria?  Either way, it requries technology-specific examples and info.</dd>
  </xsl:template>
  <xsl:template match="li[@id='summaries'] | li[@id='definitions']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology-specific examples.</dd>
      <dd>Information about deciding when to provide in core techniques.</dd>
  </xsl:template>
  <xsl:template match="li[@id='xxx']">
      <dt><xsl:value-of select="."/></dt>
      <dd></dd>
  </xsl:template>
  <xsl:template match="li[@id='xag-equivs'] | li[@id='xag-structure'] | li[@id='xag-di'] | li[@id='xag-documentation'] | li[@id='xag-supported']">
      <dt><xsl:value-of select="."/></dt>
      <dd>In core techniques - info about how to choose.</dd>
      <dd>Reference XAG - this be the "technology-specific" piece?</dd>
  </xsl:template>
  <xsl:template match="li[@id='valid-markup'] | li[@id='access-api-used']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology-specific examples, refer to specifications.</dd>
  </xsl:template>

  <xsl:template match="li[@id='access-used']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology-specifics. e.g. Accessibility features of SMIL, SVG.</dd>
  </xsl:template>

  <xsl:template match="li[@id='uaag']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Some explantation in Core, then "tech-specifics" is UAAG and UAAG techs.</dd>
  </xsl:template>

  <xsl:template match="li[@id='di']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Device indie event handlers.  Redundant with that?</dd>
  </xsl:template>

  <xsl:template match="li[@id='tested']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Provide info in Core Techniques.</dd>
  </xsl:template>
  
   <xsl:template match="li[@id='default-styling']">
      <dt><xsl:value-of select="."/></dt>
      <dd>Technology-specifics. Primarily CSS/HTML Techniques.  Will be a side benefit if
      good structure is used.</dd>
  </xsl:template>
  

</xsl:stylesheet>

