Elementos XML
Um documento XML contém elementos XML.
O que é um elemento XML?
Um elemento XML é tudo, desde (incluindo) a marca inicial do elemento até (incluindo) a marca final do elemento.
<price>29.99</price>
Um elemento pode conter:
- texto
- atributos
- outros elementos
- ou uma mistura dos anteriores
<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> têm conteúdo de texto porque contêm texto (como 29,99).
<bookstore> e <book> possuem elementos de conteúdo , pois contêm elementos.
<book> tem um atributo (category="children").
Elementos XML vazios
Um elemento sem conteúdo é dito vazio.
Em XML, você pode indicar um elemento vazio como este:
<element></element>
Você também pode usar a chamada tag de fechamento automático:
<element />
As duas formas produzem resultados idênticos em software XML (Leitores, Analisadores, Navegadores).
Elementos vazios podem ter atributos.
Regras de nomenclatura XML
Os elementos XML devem seguir estas regras de nomenclatura:
- Os nomes dos elementos diferenciam maiúsculas de minúsculas
- Os nomes dos elementos devem começar com uma letra ou sublinhado
- Os nomes dos elementos não podem começar com as letras xml (ou XML, ou Xml, etc)
- Os nomes dos elementos podem conter letras, dígitos, hífens, sublinhados e pontos
- Os nomes dos elementos não podem conter espaços
Qualquer nome pode ser usado, nenhuma palavra é reservada (exceto xml).
Práticas recomendadas de nomenclatura
Crie nomes descritivos, como este: <person>, <firstname>, <lastname>.
Crie nomes curtos e simples, como este: <book_title> não assim: <the_title_of_the_book>.
Evitar "-". Se você nomear algo como "primeiro nome", alguns softwares podem pensar que você deseja subtrair "nome" de "primeiro".
Evitar ".". Se você nomear algo como "first.name", alguns softwares podem pensar que "name" é uma propriedade do objeto "first".
Evitar ":". Dois pontos são reservados para namespaces (mais adiante).
Letras não inglesas como éòá são perfeitamente legais em XML, mas cuidado com os problemas se o seu software não as suportar.
Estilos de nomenclatura
Não há estilos de nomenclatura definidos para elementos XML. Mas aqui estão alguns comumente usados:
Estilo | Exemplo | Descrição |
---|---|---|
Minúsculas | <nome> | Todas as letras minúsculas |
Maiúsculas | <FIRSTNAME> | Todas as letras maiúsculas |
Sublinhado | <first_name> | O sublinhado separa as palavras |
Caso Pascal | <Nome> | Primeira letra maiúscula em cada palavra |
Caixa de camelo | <firstName> | Primeira letra maiúscula em cada palavra, exceto a primeira |
Se você escolher um estilo de nomenclatura, é bom ser consistente!
Os documentos XML geralmente têm um banco de dados correspondente. Uma prática comum é usar as regras de nomenclatura do banco de dados para os elementos XML.
Camel case é uma regra de nomenclatura comum em JavaScripts.
Elementos XML são extensíveis
Elementos XML podem ser estendidos para transportar mais informações.
Veja o seguinte exemplo de XML:
<note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
Vamos imaginar que criamos um aplicativo que extraiu os elementos <to>, <from> e <body> do documento XML para produzir esta saída:
MENSAGEM
Para: Tove Não se esqueça de mim neste fim de semana! |
Imagine que o autor do documento XML adicionou algumas informações extras 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>
O aplicativo deve quebrar ou travar?
Não. O aplicativo ainda deve ser capaz de localizar os elementos <to>, <from> e <body> no documento XML e produzir a mesma saída.
Essa é uma das belezas do XML. Pode ser estendido sem interromper os aplicativos.