Seção 3: Autores

Q3.11: O XML permite a criação de tags próprias?

Sim, mas não são chamadas de tags. Elas são tipos de elementos.

O XML permite que você faça nomes para seus próprios tipos de elementos. Se você acha que tags e elementos são a mesma coisa, você já está em problemas consideráveis: leia o restante desta questão com cuidado.

O mesmo se aplica se você estiver pensando em termos de 'campos' (veja como eu obtenho XML para dentro ou fora do meu banco de dados? ). Paradigma errado, linguagem errada.

Bob DuCharme escreve:

Não confunda o termo 'tag' com o termo 'elemento'. Eles não são intercambiáveis. Um elemento geralmente contém dois tipos diferentes de tag: uma marca de início e uma etiqueta final, com texto ou mais marcação entre elas.

O XML permite que você decida quais os elementos que deseja em seu documento e, em seguida, indique os limites dos elementos usando as marcas de início e de término adequadas para esses elementos. Cada declaração <!ELEMENT... define um tipo de elemento que pode ser usado em um documento conforme a essa DTD. Chamamos esse tipo de elemento e um 'tipo de elemento'. Assim como o HTML DTD inclui os tipos de elemento H1 e P seu documento pode ter tipos de elementos de cores ou preços ou qualquer outra coisa que você deseja.

Os elementos normais (não vazios) são constituídos por uma marca de início, o conteúdo do elemento e uma etiqueta final. <color>red</color> é uma instância completa do elemento de color. <color> é apenas a marca de início do elemento, mostrando onde ele começa; Não é o próprio elemento.

Os elementos vazios são um caso especial que pode ser representado como um par de tags de início e fim com nada entre eles (por exemplo <price retail="123"></price> ) ou como uma única tag de início de elemento vazio que tem uma barra de fechamento para dizer ao analisador 'não vá procurar uma etiqueta final para corresponder a isso' (por exemplo <price retail="123"/> ).