Questão nº 39

Questão de Tecnologia da Informação · CESGRANRIO BASA 02/2021 (nº 39)

CESGRANRIO2021Técnico Científico - Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Aver comentário ↓

Ao desenvolver um sistema de notícias, a empresa X decidiu manter as notícias em um formato XML, como o do exemplo
a seguir:

```xml
<?xml version="1.0"?>
<news>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</news>
```

Mais tarde, entendeu que, para esse formato exemplificado acima, seria melhor definir um esquema em XSD.
Que fragmento de código XSD deve conter esse esquema para permitir que o exemplo apresentado seja validado corre-
tamente, quando nele for incluída a referência ao esquema completo?

Resposta comentada

Gabarito Alternativa A

Conceito-chave: Em XSD, para validar um elemento que contém outros elementos (como <news> que contém <heading> e <body>), é obrigatório declará-lo como <xs:complexType>. Dentro dele, usamos <xs:sequence> para indicar que os filhos devem aparecer na ordem exata definida. Sem o complexType, o XSD não entende que o elemento tem conteúdo estruturado.

  • (A) Correta: É o gabarito porque declara <news> como um tipo complexo, com <xs:sequence> definindo a ordem obrigatória (heading antes de body), ambos do tipo xs:string — exatamente o que o XML de exemplo exige.
  • (B) Incorreta: A pegadinha: falta o <xs:complexType> — sem ele, o XSD não permite aninhar <xs:sequence> diretamente dentro de <xs:element>; o esquema seria inválido e não validaria o documento.
  • (C) Incorreta: Pior ainda: além de faltar complexType, os elementos filhos estão soltos dentro de <xs:element>, o que é sintaxe inválida em XSD (não há como declarar filhos sem o wrapper de tipo complexo).
  • (D) Incorreta: Este é um fragmento de DTD (Document Type Definition), não XSD — usa <!ELEMENT> e (#PCDATA), que são sintaxes de DTD, não de XML Schema.
  • (E) Incorreta: Também é DTD, e ainda erra o tipo do conteúdo: (#PCDATA) seria o correto para texto simples, não (text) — que nem é um tipo válido em DTD.

Fonte: CESGRANRIO BASA 02/2021 Técnico Científico - Tecnologia da Informação. Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho