Questão nº 38
Questão de Tecnologia da Informação · FCC TRT23 2022 (nº 38)
Considere o bloco XML Schema abaixo, que define o elemento `cargo`, com uma restrição.
```
<xs:element name="cargo">
<xs:simpleType>
<xs:restriction base="xs:string">
I
</xs:restriction>
</xs:simpleType>
</xs:element>
```
Para que sejam aceitáveis somente cargos com letras minúsculas entre `a` e `z`, a lacuna I deve ser preenchida corretamente com
- A`<xs:acceptable value="[a-z]"/>`
- B
<xs:regular-expression value="$[a-z]"/> - C`<xs:pattern value="[a-z]"/>` (alternativa correta)
- D`<xs:input value="[a-z]"/>`
- E
<xs:input value="$[a-z]"/>
Resposta comentada
Gabarito Alternativa C
Em XML Schema, usamos a tag <xs:restriction> para definir regras sobre o tipo de dados de um elemento. Para restringir o conteúdo de um texto (string) a um formato específico, como apenas letras minúsculas, utilizamos a faceta <xs:pattern>, que aceita uma expressão regular.
- (A) Incorreta: A tag
<xs:acceptable>não é uma faceta válida para<xs:restriction>em XML Schema. - (B) Incorreta: A tag
<xs:regular-expression>não é uma faceta válida para<xs:restriction>. A faceta correta para expressões regulares é<xs:pattern>. Além disso, a expressão regular$[a-z]não está formatada corretamente para o que se deseja; o símbolo$geralmente indica o fim da string em expressões regulares, e[a-z]sozinho corresponde a um único caractere. Armadilha da banca: Esta alternativa é tentadora porque "regular-expression" soa como o que se quer fazer, mas o nome da tag está incorreto. É crucial lembrar o nome exato da faceta (xs:pattern). - (C) Correta: A tag
<xs:pattern>é a faceta correta para aplicar uma expressão regular a um tipo de dado. A expressão[a-z]corresponde a um único caractere que seja uma letra minúscula de 'a' a 'z'. Embora para aceitar "cargos com letras minúsculas" (plural, indicando possivelmente mais de uma letra) o padrão ideal seria[a-z]+(uma ou mais letras) ou[a-z]*(zero ou mais letras), entre as opções apresentadas, esta é a única que utiliza a faceta correta (xs:pattern) e uma expressão regular válida para o contexto de letras minúsculas. - (D) Incorreta: A tag
<xs:input>não é uma faceta válida para<xs:restriction>em XML Schema. - (E) Incorreta: A tag
<xs:input>não é uma faceta válida para<xs:restriction>.
Fonte: FCC TRT23 2022 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.