Questão nº 42
Questão de Tecnologia da Informação · FCC TRT19 2022 (nº 42)
O `<schema>` é o elemento raiz de todo XML Schema e pode conter alguns atributos, como
- A`lang`, `namespace` e `type`.
- B`xmlnsType`, `defaultNamespace` e `defaultLanguage`.
- C`name`, `type` e `value`.
- D`base`, `value` e `namespace`.
- E`targetNamespace`, `xmlns` e `elementFormDefault`. (alternativa correta)
Resposta comentada
Gabarito Alternativa E
Um XML Schema (ou XSD) é um documento que define a estrutura, o conteúdo e os tipos de dados permitidos para outros documentos XML, garantindo que eles sigam um padrão. O elemento `<schema>` é o ponto de partida de qualquer definição de esquema, como se fosse a "capa" que contém todas as regras.
(A) Incorreta: `lang` define a linguagem humana do conteúdo, não é um atributo do elemento `<schema>`. `namespace` e `type` não são atributos diretos do elemento `<schema>`.
(B) Incorreta: `xmlnsType`, `defaultNamespace` e `defaultLanguage` não são atributos padrão do elemento `<schema>` em XSD.
(C) Incorreta: `name`, `type` e `value` são usados para definir elementos, tipos ou valores dentro do esquema, mas não são atributos do próprio elemento raiz `<schema>`.
(D) Incorreta: `base` é usado para derivar tipos (ex: `<restriction base="...">`), `value` para valores, e `namespace` (como em A) não é o atributo correto para definir o namespace alvo do esquema. A armadilha aqui é que o conceito de namespace é fundamental em XML Schema, mas o atributo específico para o namespace que o esquema define é `targetNamespace`, e para declarar o namespace do próprio esquema é `xmlns`. A opção usa o termo genérico `namespace`, que não é um atributo válido para o `<schema>` com essa finalidade.
(E) Correta: `targetNamespace` define o namespace para os elementos e atributos declarados neste esquema. `xmlns` é um atributo XML padrão usado para declarar o namespace do próprio esquema (geralmente `xmlns="http://www.w3.org/2001/XMLSchema"`). `elementFormDefault` especifica se os elementos locais (não globais) no documento de instância devem ser qualificados com o `targetNamespace`.
Fonte: FCC TRT19 2022 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.