2013-04-04 2 views
-2

сгенерировать XHTML, но валидатор (http://validator.w3.org/check) дает мне ошибку «тип документа не допускает элемент„Ли“здесь, отсутствует один из„ул“,„ола“старт-тег»XSLT генерировать XHTML 1.0 Strict

Код:

<xsl:template match="/"> 
     <html xmlns="http://www.w3.org/1999/xhtml"> 
      <head> 
       <title>Catalogue</title> 
      </head> 
      <body> 
       <h1>Producers</h1> 
       <div style="margin:1em;background-color:lightgray;padding:0.5em"> 
         <strong>Quick links to producers</strong> 
         <xsl:call-template name="producer" /> 
       </div> 
       <xsl:apply-templates select="//producer[@id]" /> 
       <h1>Products</h1> 
       <xsl:apply-templates select="//product[@id]" /> 
      </body> 
     </html> 
    </xsl:template> 

    <xsl:template name="producer"> 
     <xsl:for-each select="//producer[@id]"> 
      <li> 
       <a href="#{@id}"> 
       <b> 
        <xsl:value-of select="name"/> 
       </b> 
       <xsl:text> (</xsl:text><xsl:value-of select="@id"/><xsl:text>) </xsl:text> 
       </a> 
      </li> 
     </xsl:for-each> 
    </xsl:template> 

    <xsl:template match="producer[@id]"> 
     <a name="{@id}"/> 
     <div style="border: thin solid gray;margin:1em;padding:0.5em;"> 
      <h2> 
       <xsl:value-of select="name"/> 
      </h2> 
       <xsl:text> 
        <xsl:value-of select="description"/> 
       </xsl:text> 
       <xsl:apply-templates select="//producer[@id=current()/@id]/products"/>    
     </div> 
    </xsl:template> 

Любая идея, как генерировать действительный xhtml? Спасибо.

ответ

1

Поместите список вокруг своих элементов списка.

Смежные вопросы