Atributo do XSD
- Página anterior Elemento do XSD
- Próxima página Facetas do XSD
Todos os atributos são declarados como tipos simples.
O que é um atributo?
Elementos simples não podem ter atributos. Se um elemento tiver atributos, ele será tratado como um tipo composto. No entanto, os atributos sempre são declarados como tipos simples.
Como declarar um atributo?
A sintaxe para definir um atributo é:
<xs:attribute name="xxx" type="yyy"/>
Aqui, xxx representa o nome do atributo, e yyy especifica o tipo de dados do atributo. O XML Schema possui muitos tipos de dados internos.
Os tipos mais comuns são:
- xs:string
- xs:decimal
- xs:integer
- xs:boolean
- xs:date
- xs:time
Exemplo
Este é um elemento XML com atributo:
<lastname lang="EN">Smith</lastname>
Esta é a definição correspondente do atributo:
<xs:attribute name="lang" type="xs:string"/>
Valor padrão e fixo do atributo
Os atributos podem ter um valor padrão ou fixo especificado.
Quando nenhum outro valor for especificado, o valor padrão será automaticamente atribuído ao elemento.
No exemplo a seguir, o valor padrão é "EN":
<xs:attribute name="lang" type="xs:string" default="EN"/>
O valor fixo também será automaticamente atribuído ao elemento, e você não pode especificar outro valor.
No exemplo a seguir, o valor fixo é "EN":
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
Atributos opcionais e obrigatórios
Por padrão, os atributos são opcionais. Para especificar que um atributo é obrigatório, use o atributo "use":
<xs:attribute name="lang" type="xs:string" use="required"/>
Restrição de conteúdo
Quando um elemento XML ou atributo possui um tipo de dados definido, restrições são adicionadas ao conteúdo do elemento ou atributo.
Se o tipo do elemento XML for "xs:date" e o conteúdo contido for uma string semelhante a "Hello World", o elemento não será (validado).
Através do XML schema, você também pode adicionar suas próprias restrições aos seus elementos e atributos XML. Essas restrições são chamadas de facet (notação do editor: significa face de poliedro, pode ser traduzida como face de restrição). Você aprenderá mais sobre facet na próxima seção.
- Página anterior Elemento do XSD
- Próxima página Facetas do XSD