Um documento XML contém elementos XML.
O que é um elemento XML?
Um elemento XML é tudo a partir de (including) do elemento tag início ao (including) tag final do elemento.
<price>29.99</price>
Um elemento pode conter:
- texto
- atributos
- outros elementos
- ou uma mistura do acima
<bookstore>
<book category="children">
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title>Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
No exemplo acima:
<title>, <author>, <year> e <price> tem text content , pois eles contêm texto (like 29.99) .
<bookstore> e <book> têm element contents , porque eles contêm elementos.
<book> tem um attribute (category="children") .
Elementos XML vazias
Um elemento com nenhum conteúdo é dito estar vazio.
Em XML, você pode indicar um elemento vazio como este:
<element></element>
Você também pode usar um tag chamado de auto-fechamento:
<element />
As duas formas produzem resultados idênticos em software XML (Leitores, Parsers, navegadores).
Os elementos vazios podem ter atributos.
Regras de nomeação XML
elementos XML devem seguir estas regras de nomenclatura:
- Os nomes dos elementos são case-sensitive
- Os nomes dos elementos deve começar com uma letra ou sublinhado
- Os nomes dos elementos não pode começar com o xml letras (or XML, or Xml, etc)
- Os nomes dos elementos pode conter letras, números, hífens, sublinhados e períodos
- Os nomes dos elementos não podem conter espaços
Qualquer nome pode ser usado, não há palavras são reservadas (except xml) .
Melhores Práticas de Nomenclatura
Criar nomes descritivos, como este: <person>, <firstname> , <lastname> .
Criar nomes curtos e simples, como este: <book_title> não como este: <the_title_of_the_book> .
Evite "-" . Se você nomear algo "first-name" , algum software pode pensar que você quer subtrair "name" do "first" .
Evite "." . Se você nomear algo "first.name" , alguns softwares podem pensar que "name" é uma propriedade do objeto "first" .
Evitar ":" . Dois pontos são reservados para namespaces (more later) .
letras não inglesas como eoa são perfeitamente legais em XML, mas cuidado com problemas se o seu software não apoiá-los.
Estilos Naming
Não há estilos de nomeação definidas para elementos XML. Mas aqui estão alguns usados:
Estilo | Exemplo | Descrição |
---|---|---|
Lower case | <firstname> | Todas as letras minúsculas |
Upper case | <FIRSTNAME> | Todas as letras maiúsculas |
Underscore | <first_name> | Sublinhado separa palavras |
Pascal case | <FirstName> | primeira letra maiúscula em cada palavra |
Camel case | <firstName> | primeira letra maiúscula em cada palavra, exceto a primeira |
Se você escolher um estilo de nomeação, é bom ser consistente!
documentos XML, muitas vezes têm um banco de dados correspondente. Uma prática comum é usar as regras de nomenclatura do banco de dados para os elementos XML.
caso Camel é uma regra de nomenclatura comum em JavaScripts.
Elementos XML são Extensible
elementos XML pode ser estendido para levar mais informações.
Olhe para o seguinte exemplo XML:
<note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
Vamos imaginar que nós criamos uma aplicação que extraiu o <to>, <from> e <body> elementos do documento XML para produzir esta saída:
MESSAGE To: Tove Não me esqueça neste fim de semana! |
Imagine que o autor do documento XML acrescentou alguma informação extra a ele:
<note>
<date>2008-01-10</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Caso o pedido de quebrar ou falhar?
Não. O aplicativo ainda deve ser capaz de encontrar o <to>, <from> e <body> elementos no documento XML e produzir a mesma saída.
Esta é uma das belezas de XML. Ele pode ser estendido sem quebrar aplicações.