Validador oficial do XSLT?
Existe algum validador XSLT oficial, como http://validator.w3.org/ para HTML & XHTML?
eu sei http://validator.w3.org/ também pode ser usado para validar documentos XML e XSL. Mas são validadas como estruturas XML.
em XHTML válido, por exemplo, <span><div>...</div></span>
é inválido, dado que os elementos de bloco não devem aparecer dentro dos elementos em linha.
(acho que podemos combinar XML e XSL, emite o XHTML e depois valida-o. Mas isto não é directo nem conveniente.)
Obrigado!3 answers
Assumo que, ao validar as folhas de estilo XSLT, quer dizer verificar se os elementos, atributos etcetera num documento XML já bem formado (que parece ser o código XSLT) aderem à especificação XSLT W3C.
Em primeiro lugar, note que existe uma diferença entre o bem-estar e a validade de um documento XML. Ele é bem formado se os elementos contidos são devidamente aninhados, se há um único elemento raiz e assim por diante (isto é definido pelo XML especificacao). Veja Também: existe uma diferença entre' XML válido 'e'xml bem formado'? .
A validade de um documento XML só pode ser verificada em conjunto com um esquema XML (ou DTD, ou RelaxNG...). Um esquema é um conjunto de regras que definem, por exemplo, quais elementos e atributos são permitidos em que sequência.
Agora, para responder à sua pergunta: não existe tal serviço do W3C, no entanto, há um esquema disponível, Ver por exemplo: http://www.w3.org/2007/schema-for-xslt20.xsd para um esquema que incorpore todas as estruturas de "standard" {[[0]}.
Pode validar o seu código XSLT com este esquema. Ainda assim, é mais perspicaz executar o seu código com um processador XSLT e procurar os avisos e erros que produz.
Além disso, esteja ciente de que a validade do código XSLT e a validade do XHTML que ele emite não é a mesma. Mesmo que o seu XSLT seja perfeitamente válido em relação ao XSLT specification, it does not mean that the resulting XHTML is reasonable.
No caso geral, não pode tomar uma folha de estilo XSLT arbitrária e provar estaticamente que irá gerar XHTML válido. Você pode, no entanto, detectar alguns casos em que ele não vai, desde que a folha de estilo é escrito para tirar proveito do schema-conscientização. Para isso, você precisa de um processador XSLT que faça a verificação estática (por exemplo Saxon-EE), e você precisa da 'stylesheet' para (a) importar o esquema usando o xslt: import-schema, e (b) para invocar a validação dos elementos do resultado usando [xsl:]validação= "estrito". Isto irá detectar alguns erros de validade na sua saída de 'stylesheet' estaticamente (ao compilar a 'stylesheet'), e o restante dinamicamente (ao executá-la).
Existem muitas ferramentas de edição XML (e provavelmente algumas HTML também) que conhecem a estrutura do (X)HTML o suficiente para destacar erros. Visual Studio, por exemplo, pode validar qualquer documento XML usando o esquema, incluindo XHTML ou XSL - se um div é ou não permitido dentro de um span é definido no esquema XHTML.