- From: Michael Smith via cvs-syncmail <cvsmail@w3.org>
- Date: Sat, 31 Jul 2010 08:13:18 +0000
- To: public-html-commits@w3.org
Update of /sources/public/html5/markup/tools In directory hutz:/tmp/cvs-serv15998/tools Modified Files: generate-spec-source.xsl Log Message: removed "Form attributes" section, and moved all shared form attribute descriptions to the individual element pages; this required changing a bunch of IDs also changed to using hash-on-hover linking on all attribute descriptions Index: generate-spec-source.xsl =================================================================== RCS file: /sources/public/html5/markup/tools/generate-spec-source.xsl,v retrieving revision 1.279 retrieving revision 1.280 diff -u -d -r1.279 -r1.280 --- generate-spec-source.xsl 30 Jul 2010 10:34:16 -0000 1.279 +++ generate-spec-source.xsl 31 Jul 2010 08:13:16 -0000 1.280 @@ -2186,14 +2186,18 @@ <div class="attr-content-models"> <p> <span class="pattern" id="colgroup.attrs"> - <a href="#global-attributes">global attributes</a> + <a class="ref" + title="global-attributes" + href="#global-attributes">global attributes</a> <span class="postfix optional">?</span> <xsl:text> </xsl:text> <span class="postfix intermixed">&</span> <xsl:text> </xsl:text> <span class="postfix optional">?</span> <xsl:text> </xsl:text> - <a href="#colgroup.attrs.span">span</a> + <a class="ref" + title="colgroup.attrs.span" + href="#colgroup.attrs.span">span</a> <span class="postfix optional">?</span> </span> </p> @@ -2231,28 +2235,29 @@ <xsl:when test="@name='li'"> <div class="attr-content-models"> <p> - <a href="#global-attributes">global attributes</a> + <a class="ref" + title="global-attributes" + href="#global-attributes">global attributes</a> <span class="postfix optional">?</span> <xsl:text> </xsl:text> <span class="postfix &">&</span> <xsl:text> </xsl:text> - <a href="#oli.attrs.value">value</a> + <a + class="ref" + title="li.attrs.value" + href="#li.attrs.value">value</a> <span class="postfix optional">?</span> </p> </div> </xsl:when> <xsl:otherwise> + <xsl:for-each select="$rnc-html"> <div> <xsl:attribute name="class">attr-content-models</xsl:attribute> - <xsl:for-each select="$rnc-html//*[starts-with(@id,$name-dot) + <xsl:for-each select="//*[starts-with(@id,$name-dot) and substring(@id,string-length(@id)-4)='attrs']"> <xsl:text> </xsl:text> <p> - <!-- * <a href="#{@id}" --> - <!-- * > --> - <!-- * <xsl:value-of select="@id"/> --> - <!-- * </a> --> - <!-- * <xsl:text> = </xsl:text> --> <xsl:variable name="ref" select="@id"/> <xsl:choose> <xsl:when test="starts-with($ref,'meta.')"> @@ -2276,33 +2281,81 @@ </xsl:choose> </xsl:for-each> </xsl:when> - <xsl:when test="$rnc-html//h:*[@id = $ref]//h:a[@href='#common-form.attrs']"> + <xsl:when test=" + key('elements',$ref)//h:a[@href='#common-form.attrs'] + or key('elements',$ref)//h:a[starts-with(@href,'#shared-form.attrs')] + or key('elements',$ref)//h:a[starts-with(@href,'#common-form.attrs')] + or key('elements',$ref)//h:a[starts-with(@href,'#input.attrs')] + "> <span class="pattern" id="{@id}"> - <xsl:for-each select="$rnc-html//h:*[@id = $ref]/node()"> + <xsl:for-each select="key('elements',$ref)/node()"> <xsl:choose> <xsl:when test="@class='agroupof'"> + <span class="agroupof"> <xsl:for-each select="node()"> <xsl:choose> <xsl:when test="@href='#common-form.attrs'"> - <xsl:for-each - select="$rnc-html//h:*[@id = 'common-form.attrs']/node()"> - <xsl:copy-of select="."/> + <xsl:for-each select="key('elements','common-form.attrs')/node()"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#common-form.attrs.</xsl:with-param> + </xsl:call-template> </xsl:for-each> </xsl:when> + <xsl:when test="starts-with(@href,'#common-form.attrs')"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#common-form.attrs.</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="starts-with(@href,'#shared-form.attrs')"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#shared-form.attrs.</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="starts-with(@href,'#input.attrs')"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#input.attrs.</xsl:with-param> + </xsl:call-template> + </xsl:when> <xsl:otherwise> <xsl:copy-of select="."/> </xsl:otherwise> </xsl:choose> </xsl:for-each> + </span> </xsl:when> <xsl:otherwise> <xsl:choose> <xsl:when test="@href='#common-form.attrs'"> <xsl:for-each - select="$rnc-html//h:*[@id = 'common-form.attrs']/node()"> - <xsl:copy-of select="."/> + select="key('elements','common-form.attrs')/node()"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#common-form.attrs.</xsl:with-param> + </xsl:call-template> </xsl:for-each> </xsl:when> + <xsl:when test="starts-with(@href,'#common-form.attrs')"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#common-form.attrs.</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="starts-with(@href,'#shared-form.attrs')"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#shared-form.attrs.</xsl:with-param> + </xsl:call-template> + </xsl:when> + <xsl:when test="starts-with(@href,'#input.attrs')"> + <xsl:call-template name="pack-common-attribute"> + <xsl:with-param name="name" select="$name"/> + <xsl:with-param name="prefix">#input.attrs.</xsl:with-param> + </xsl:call-template> + </xsl:when> <xsl:otherwise> <xsl:copy-of select="."/> </xsl:otherwise> @@ -2317,13 +2370,19 @@ <xsl:if test="$name = 'audio'"> <span class="postfix intermixed">&</span> <xsl:text> </xsl:text> - <a href="#audio.attrs.src">src</a> + <a + class="ref" + title="video.attrs.src" + href="#audio.attrs.src">src</a> <span class="postfix optional">?</span> </xsl:if> <xsl:if test="$name = 'video'"> <span class="postfix intermixed">&</span> <xsl:text> </xsl:text> - <a href="#video.attrs.src">src</a> + <a + class="ref" + title="video.attrs.src" + href="#video.attrs.src">src</a> <span class="postfix optional">?</span> </xsl:if> </xsl:otherwise> @@ -2334,27 +2393,31 @@ </xsl:if> </xsl:for-each> </div> + </xsl:for-each> </xsl:otherwise> </xsl:choose> </xsl:when> - <xsl:when test="$rnc-html//*[@id = 'script.attrs.embedded' - or @id = 'script.attrs.imported']"> + <xsl:otherwise> + <xsl:for-each select="$rnc-html"> <div class="attr-content-models"> - <xsl:for-each select="$rnc-html//*[@id = 'script.attrs.embedded' - or @id = 'script.attrs.imported']"> + <xsl:for-each select="key('elements','script.attrs.embedded')"> + <xsl:text> </xsl:text> + <p> + <xsl:copy-of select="node()"/> + </p> + </xsl:for-each> + <xsl:text> </xsl:text> + <div class="postfix or">or</div> + <xsl:for-each select="key('elements','script.attrs.imported')"> <xsl:text> </xsl:text> - <!-- * <dt class="attr-content-model"> --> - <!-- * <span class="attribute-pattern-name" id="{@id}"> --> - <!-- * <xsl:value-of select="@id"/> = --> - <!-- * </span> --> - <!-- * </dt> --> <p> <xsl:copy-of select="node()"/> </p> </xsl:for-each> <xsl:text> </xsl:text> </div> - </xsl:when> + </xsl:for-each> + </xsl:otherwise> </xsl:choose> </xsl:variable> <div class="no-number no-toc" id="{$name}-attributes"> @@ -2503,7 +2566,16 @@ <xsl:template name="make.attribute.definition"> <xsl:param name="name"/> <xsl:param name="attribute-name" select="."/> - <xsl:param name="href" select="@href"/> + <xsl:param name="href"> + <xsl:choose> + <xsl:when test="not(@class = 'ref')"> + <xsl:value-of select="@class"/> + </xsl:when> + <xsl:otherwise> + <xsl:value-of select="@href"/> + </xsl:otherwise> + </xsl:choose> + </xsl:param> <xsl:choose> <xsl:when test="(not(preceding::*[@href=$href]) @@ -2564,11 +2636,11 @@ </xsl:if> </xsl:variable> <xsl:if test="not($filename='')"> - <span class="spec-link"> - <a title="Read about this attribute in the HTML5 spec" - href="{$filename}.html{$spec-target}">ⓘ</a> - </span> - <xsl:text> </xsl:text> + <a + class="spec-link" + title="Read about this attribute in the HTML5 spec" + href="{$filename}.html{$spec-target}">ⓘ</a> + <xsl:text> </xsl:text> </xsl:if> <xsl:choose> <xsl:when test="$ref = 'common.attrs'"> @@ -2584,10 +2656,7 @@ </xsl:call-template> </xsl:when> <xsl:when test="contains(node(),'.')"> - <a class="attribute-name" - id="{$ref}" - title="{$ref}" - href="#{$ref}"> + <span class="attribute-name"> <xsl:choose> <xsl:when test="starts-with(node(),'wrap.')"> <xsl:text>wrap</xsl:text> @@ -2632,28 +2701,19 @@ </xsl:call-template> </xsl:otherwise> </xsl:choose> - </a> + </span> </xsl:when> <xsl:when test="starts-with($ref,'button.') or starts-with($ref,'input.') or starts-with($ref,'command.') or starts-with($ref,'meta.') "> - <a class="attribute-name" - id="{$ref}" - title="{$ref}" - href="#{$ref}"> + <span class="attribute-name"> <xsl:copy-of select="node()"/> - </a> + </span> </xsl:when> <xsl:otherwise> - <xsl:variable name="adj-ref"> - <xsl:value-of select="$ref"/> - </xsl:variable> - <a class="attribute-name" - id="{$adj-ref}" - title="{$adj-ref}" - href="#{$adj-ref}"> + <span class="attribute-name"> <xsl:choose> <xsl:when test="$ref='common.attrs.xml-id'"> <xsl:text>xml:id</xsl:text> @@ -2671,7 +2731,7 @@ <xsl:copy-of select="node()"/> </xsl:otherwise> </xsl:choose> - </a> + </span> </xsl:otherwise> </xsl:choose> <xsl:variable name="model"> @@ -2680,6 +2740,7 @@ </xsl:variable> <xsl:choose> <xsl:when test="$ref = 'common.attrs' + or $ref='global-attributes' or starts-with($ref,'area.attrs.shape.') "/> <xsl:otherwise> @@ -2866,6 +2927,12 @@ title="This markup feature has been obsoleted in HTML5." >OBSOLETE</span> </xsl:if> + <xsl:text> </xsl:text> + <a class="hash" + id="{substring-after(@href,'#')}" + title="{substring-after(@href,'#')}" + href="{@href}">#</a> + <xsl:text> </xsl:text> </xsl:otherwise> </xsl:choose> </dt> @@ -3552,4 +3619,25 @@ <xsl:template match="node()[normalize-space(.)='empty']"> <span>empty (<a href="#void-element">void element</a>)</span> </xsl:template> + + <xsl:template name="pack-common-attribute"> + <xsl:param name="name"/> + <xsl:param name="prefix"/> + <xsl:choose> + <xsl:when test="@href"> + <xsl:variable name="target"> + <xsl:value-of select="concat($name,'.attrs.',substring-after(@href,$prefix))"/> + </xsl:variable> + <a class="{@href}" + title="{$target}" + href="#{$target}"> + <xsl:copy-of select="node()"/> + </a> + </xsl:when> + <xsl:otherwise> + <xsl:copy-of select="."/> + </xsl:otherwise> + </xsl:choose> + </xsl:template> + </xsl:stylesheet>
Received on Saturday, 31 July 2010 08:13:21 UTC