Partilhar via


Erros XSLT recuperáveis

A Recomendação de Transformações XSL (XSLT) Versão 1.0 do W3C inclui áreas nas quais o provedor de implementação pode decidir como lidar com uma situação. Estas áreas são consideradas como comportamento discricionário. Por exemplo, na seção 7.3 Criando instruções de processamento, a recomendação XSLT 1.0 afirma que é um erro se instanciar o conteúdo de cria nós diferentes de xsl:processing-instruction nós de texto. Para alguns problemas, a recomendação XSLT 1.0 indica qual decisão deve ser tomada se o processador decidir se recuperar do erro. Para o problema dado na seção 7.3, o W3C diz que a implementação pode se recuperar desse erro ignorando os nós e seu conteúdo.

Comportamentos discricionários

A tabela a seguir lista cada um dos comportamentos discricionários permitidos pela recomendação XSLT 1.0 e como esses comportamentos são tratados pela XslCompiledTransform classe.

Condição XSLT Section Comportamento XslCompiledTransform
Um nó de texto corresponde a ambos e xsl:strip-spacexsl:preserve-space. 3.4 Recuperar
Um nó de origem corresponde a mais de uma regra de modelo. 5,5 Recuperar
Um URI de namespace é declarado como um alias para vários URIs de namespace, todos com a mesma precedência de importação. 7.1.1 Recuperar
O name atributo em xsl:attribute e xsl:element gerado a partir de um valor de atributo não é um QName. 7.1.2, 7.1.3 Erro*
Dois conjuntos de atributos com o mesmo nome de importação e expandido têm um atributo em comum e não há outro conjunto de atributos contendo o atributo comum com o mesmo nome com maior importância. 7.1.4 Recuperar
Adicionar um atributo a um elemento depois que filhos foram adicionados a ele. 7.1.3 Erro*
Criando um atributo com o nome 'xmlns' 7.1.3 Erro*
Adicionar um atributo a um nó que não é um elemento. 7.1.3 Erro*
Criação de nós diferentes de nós de texto durante a instanciação do conteúdo do xsl:attribute atributo. 7.1.3 Erro*
O name atributo de um xsl:processing-instruction não produz um NCName e um destino de instrução de processamento. 7.3 Erro*
Instanciar o conteúdo de xsl:processing-instruction cria nós diferentes dos nós de texto. 7.3 Erro*
O resultado da instanciação do conteúdo do contém a cadeia de xsl:processing-instruction caracteres "?>" 7.3 Recuperar
O resultado da instanciação do conteúdo do contém a cadeia de xsl:processing-instruction caracteres "--" ou termina com "-". 7.4 Recuperar
O resultado da instanciação do conteúdo dos xsl:comment nós de criação diferentes dos nós de texto. 7.4 Erro*
O modelo dentro de um elemento de vinculação variável retorna um nó de atributo ou um nó de namespace. 11.2 Erro*
Há um erro ao recuperar o recurso do URI passado para a função de documento. 12,1 Erro
A referência URI na função de documento contém um identificador de fragmento e há um erro ao processar o identificador de fragmento. 12,1 Recuperar*
Há vários atributos com o mesmo nome, mas valores diferentes, que não são nomeados elementos de seção cdata com xsl:output a mesma precedência de importação. 16 Recuperar
O processador não suporta a xsl:output codificação no atributo de codificação. 16.1 Recuperar
Desativando a saída de escape para um nó de texto que é usado para algo diferente de um nó de texto na árvore de resultados. 16,4 Recuperar*
Converter um fragmento de árvore de resultados em um número ou cadeia de caracteres se o fragmento da árvore de resultados contiver um nó de texto com escape de saída habilitado. 16,4 Recuperar*
O escape de saída é desabilitado para um caractere que não pode ser representado na codificação que o processador XSLT está usando para saída. 16,4 Recuperar*
Adicionar um nó de namespace a um elemento depois que filhos tiverem sido adicionados a ele ou depois que atributos tiverem sido adicionados a ele. errata 25 Erro*
O value atributo de an xsl:number é NAN, infinito ou menor que 0,5 errata 24 Recuperar
O segundo nó de argumento definido para a função de documento está vazio e a referência URI é relativa. errata 14 Recuperar

* Esse comportamento é diferente do XslTransform da classe. Para obter mais informações, consulte Implementação de comportamentos discricionários na classe XslTransform.

Consulte também