Avalie as afirmativas a seguir no contexto da estrutura de documentos XML. I. Os elementos estão dispostos numa organização de árvore, iniciando com o elemento root. II. Um elemento XML pode possuir um ou mais elementos filhos (childs). III. Somente elementos que possuam filhos podem possuir atributos (attributes). Está correto somente o que se afirma em
- A)I.
A alternativa afirma que somente a afirmativa I está correta, isto é, que a estrutura XML é uma árvore com um elemento raiz. A I realmente corresponde ao modelo de documento XML, que organiza os elementos hierarquicamente a partir do root. O problema é que a II também está correta, porque um elemento pode ter elementos filhos; por isso não se pode limitar o acerto apenas à I.
- B)II.
Aqui se sustenta que apenas a afirmativa II está certa, ou seja, que um elemento XML pode ter filhos. Esse enunciado está de acordo com a estrutura hierárquica do XML, em que elementos podem conter outros elementos, texto ou ambos. Contudo, a I também é verdadeira ao indicar a árvore com elemento raiz, então a opção fica incompleta.
- C)III.
Esta alternativa diz que somente a afirmativa III estaria correta, isto é, que apenas elementos com filhos poderiam receber atributos. Isso contraria a regra básica do XML: atributos podem ser atribuídos a qualquer elemento, inclusive elementos vazios ou sem filhos. Como a III está errada, a alternativa não se sustenta.
- D)I e II.
A opção reúne as afirmativas I e II. No XML, o documento é organizado em árvore com um único elemento raiz, e os elementos podem conter um ou mais elementos filhos, o que torna as duas proposições corretas. A III é falsa, porque a existência de atributos não depende de haver filhos, então a combinação I e II é exatamente a correta.
- E)II e III.
A alternativa combina II e III, ou seja, afirma que um elemento pode ter filhos e que só elementos com filhos podem ter atributos. Embora a II esteja correta, a III está errada, porque atributos podem aparecer em qualquer elemento, não apenas nos que possuem filhos. Além disso, a I também é verdadeira, de modo que a composição proposta não corresponde ao conjunto correto.
Gabarito: D
Em XML, a estrutura costuma ser comparada a uma arvore: existe um elemento raiz, o root, e a partir dele os demais elementos se organizam em niveis. Isso torna o documento hierarquico e facil de navegar, como uma familia organizada em cima de um ancestral comum. A afirmativa I esta correta porque descreve exatamente essa ideia de arvore com um elemento raiz. Tambem esta correta a afirmativa II: um elemento XML pode ter um ou varios filhos, ou ate nenhum filho, porque XML aceita elementos vazios e elementos com varios descendentes. O ponto aqui e simples: filho em XML e qualquer elemento interno ligado ao elemento pai, e essa relacao pode aparecer em qualquer quantidade. Entao, nada de achar que XML gosta de filho unico. A afirmativa III esta errada. Atributos nao dependem de o elemento ter filhos; um elemento pode ter atributos mesmo sem conter elementos internos. Por exemplo, tem atributo e nao tem filho algum. Em termos práticos, os atributos servem para trazer informacoes complementares do elemento, sem essa regra de depender de descendentes. Por isso, o gabarito e D: somente I e II estao corretas. A ideia de arvore e de relacao pai-filho e basica em XML, como ensinam as especificacoes do W3C e a doutrina de markup, e a banca costuma cobrar exatamente essa diferenca entre filhos e atributos.