Páginas filhas
  • 2. XML Schema

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Informações
titleIndice

Índice
stylesquare

 

História

...

Em meados de 99, o consórcio W3C (responsável por vários padrões da WEB) publicou pela primeira vez o XML Schema. Sendo a primeira iniciativa de apresentar uma alternativa ao padrão DTD. Após diversas revisões, em 2001, foi lançada a recomendação final do XML Schema e em 2004 houve algumas adaptações. Dessa data até hoje, diversos fabricantes tem incluído esse padrão em seus produtos. Existem diversas APIs para validação, bancos de dados que dão suporte a tipos de dados XML, além de bancos de dados nativos que trabalham apenas com XML e tem o XML Schema como seu mecanismo básico de controle de consistência.

Padrões de Validação

...

A validação de arquivos. XML pode ser através de uma aplicação própria ou ainda algum outro padrão adotado. Os principais padrões atualmente são:

...

O padrão XSD (Xml Schema Definition) ou XS (Xml Schema) é a recomendação oficial do W3C desde 2001 para validação. Esse padrão consegue suprir as limitações da DTD, além de fornecer diversas funcionalidades, é possível construir tipos próprios derivados dos tipos básicos, realizar relacionamentos entre elementos de dados dentro do XML (similar aos relacionamentos entre tabelas), etc.

Estrutura de um documento XSD

...

Em sua essência é um documento XML. Isso é, deve obedecer as mesmas regras que um documento XML. Um documento XSD também possui outras necessidades que um documento XML não necessita. Para que essas necessidades sejam atendidas é preciso definir as partes de um documento XSD. 

Declaração de elementos

...

Os elementos são declarados utilizando-se a tag “element”. Os principais atributos da tag são:

...

Bloco de código
languagexml
<xsd:element name="endereco" type="xsd:string" minOccurs="0" maxOccurs="1"/>

Declaração de atributos

...

De uma forma geral as declarações de atributos se parecem muito com as declarações de elementos. Essas declarações possuem alguns atributos. Os principais são:

...

A declaração use por default é optional. 

Tipos de Dados

...

O XML Schema possui diversos tipos de dados, além da possibilidade de criar tipos próprios, os mais comuns são:

...

Obs.: esses dados podem ser utilizados tanto com os elementos quanto com os atributos.

Grupos de modelos

...

Permitem que elementos sejam especificados dentro de outros elementos e, obedeçam a uma ordem ou escolha específica através de conectores (opcional). Os três conectores permitidos são: sequenceall e choice.

...

Numéricos

xsd:float

xsd:double

xsd:decimal

xsd:integer

xsd:nonPositiveInteger

xsd:nonNegativeInteger

xsd:negativeInteger

xsd:positiveInteger

xsd:long

xsd:int

xsd:short

xsd:byte

xsd:unsignedLong

xsd:unsignedInt

xsd:unsignedShort

xsd:unsignedByte

Números reais (32bits)

Números reais (64bits)

Número decimal

Número inteiro

Número inteiro negativo (incluindo 0)

Número inteiro positivo (incluindo 0)

Número inteiro negativo

Número inteiro positivo

Números inteiros (64bits)

Números inteiros (32bits)

Números inteiros (16bits)

Números inteiros (8bits)

Números long positivos (incluindo 0)

Números int positivos (incluindo 0)

Números short positivos (incluindo 0)

Números byte positivos (incluindo 0)

Data/Hora

xsd:dateTime

xsd:date

xsd:time

xsd:gDay

xsd:gMonth

xsd:gYear

xsd:gYearMonth

xsd:gMonthDay

xsd:duration

YYYY-MM-DDtHH:MM:SS.000

YYYY-MM-DD

HH:MM:SS.000

Número do dia (1-31)

Número do mês (1-12)

Número do ano

Números do ano e do mês

Números do mês e do dia

Período de tempo

String

xsd:string

xsd:normalizedString

xsd:token

Caracteres Unicode

Caracteres sem CRLF nem Tabs

Sem espaços

Binários

xsd:hexBinary

xsd:base64Binary

Dígitos em HEX (hexadecimal)

Binários em base64

Booleanos

xsd:boolean

1 | 0 | true | false

Para saber mais

...

http://www.w3schools.com/xml/schema_intro.asp

https://www.w3.org/XML/Schema

http://www.ggte.unicamp.br/minicurso/xml/texto/Modulo4/mod004tela001.htm