Questão nº 27
Questão de Tecnologia da Informação · FCC TRT5 2022 (nº 27)
Considere a existência da tag <person number="9876" /> e um arquivo XML.
A declaração correta do atributo number da tag person em uma Document Type Definition (DTD), de forma a indicar que toda tag person deve ter um atributo number é
- A<!ATTLIST person number TEXT REQUIRED>
- B<!ATTRIBUTE person number CDATA #REQUIRED>
- C<!ATTLIST element=person attribute=number type=CDATA REQUIRED>
- D<!ATTLIST person number CDATA #REQUIRED> (alternativa correta)
- E<!ATTRIBUTE person number TEXT REQUIRED>
Resposta comentada
Gabarito Alternativa D
DTDs (Document Type Definitions) são como "receitas" que definem a estrutura e as regras de um documento XML. Para declarar que uma tag (elemento) deve ter um atributo obrigatório, usamos a palavra-chave <!ATTLIST>, especificando o nome do elemento, o nome do atributo, seu tipo de dado e a obrigatoriedade.
- (A) Incorreta:
TEXTnão é um tipo de dado válido para atributos em DTD; o tipo genérico para texto e números éCDATA. Além disso, a palavra-chave para indicar obrigatoriedade é#REQUIRED, não apenasREQUIRED. - (B) Incorreta: A palavra-chave correta para declarar uma lista de atributos é
<!ATTLIST>, não<!ATTRIBUTE>. Esta é a principal armadilha da banca:<!ATTRIBUTE>parece intuitivo, mas é sintaticamente incorreto em DTDs, que usam<!ATTLIST>para declarar atributos de um elemento. - (C) Incorreta: A sintaxe apresentada (
element=person,attribute=number,type=CDATA) não corresponde ao padrão de declaração de atributos em DTD. - (D) Correta:
<!ATTLISTé a palavra-chave correta para declarar atributos.personé o nome do elemento.numberé o nome do atributo.CDATA(Character Data) é o tipo de dado padrão para valores de texto ou numéricos.#REQUIREDindica que o atributo é obrigatório para o elementoperson. - (E) Incorreta: Semelhante às alternativas A e B,
<!ATTRIBUTE>está incorreto (deveria ser<!ATTLIST>),TEXTnão é um tipo válido (deveria serCDATA), eREQUIREDdeveria ser#REQUIRED.
Fonte: FCC TRT5 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.