Outras questões de marcação 
Além da marcação, existem algumas outras questões a considerar: manipulação de espaços em branco, normalização de valores dos atributos e a linguagem com a qual o documento foi escrito. 
Manipulação de Espaços em Branco 
A manipulação de espaços em brancos é uma questão sutil. Considere o seguinte fragmento de conteúdo: 
<piada> 
 
<João>Diga <citação>boa noite</citação>, Maria.</João> 
O espaço em branco (a nova linha entre <piada> e <João> ) é significante? 
Provavelmente não. 
Mas como você pode afirmar isto? Você somente pode determinar se um espaço em branco é significante se você conhece o modelo de conteúdo dos elementos em questão. Em resumo, um espaço em branco é significante em conteúdo misturado e insignificante em conteúdo de elemento. 
A regra para os processadores XML é que eles devem passar por todos os caracteres que não são marcação na aplicação. Se o processador é um processador de validação, ele também deve informar à aplicação se os caracteres espaços em branco são significantes. 
O atributo especial xml:space pode ser usado para indicar explicitamente que os espaços em branco são significantes. Em qualquer elemento que inclua a especificação de atributo xml:space='preserve', todos os espaços em branco naquele elemento (e dentro dos subelementos que não alteram explicitamente xml:space) serão significantes. 
Os únicos valores válidos para xml:space são preserve e default. O valor default indica que o processamento padrão é desejado. Em um DTD, o atributo xml:space deve ser declarado como um tipo enumerado com somente estes dois valores. 
Uma última observação sobre espaços em branco: em texto analisável, os processadores XML são requeridos para normalizar todas as marcas de final de linha para um um único caracter de alimentação de linha (&#A;). Isto raramente é de interesse dos autores, mas elimina um número de questões de portabilidade de plataformas cruzadas. 
Normalização dos valores de atributos 
O processador XML executa a normalização dos valores de atributos em valores de atributos: referências a caracteres são substituídas por caracteres referenciados, referências a entidades sã resolvidas (recursivamente) e os espaços em branco são normalizados. 
Identificação da linguagem 
Muitas aplicações de processamento de documentos podem se beneficiar da informação sobre a linguagem natural com a qual o documento foi escrito. A XML define o atributo xml:lang para identificar a linguagem. Visto que o propósito deste atributo é padronizar a informação entre as aplicações, a especificação XML também descreve como as linguagens devem ser identificadas.
 
 
 
Nenhum comentário:
Postar um comentário