A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

XML Schema XML schema é um vocabulário XML para expressar regras de negócios (sobre os dados).

Apresentações semelhantes


Apresentação em tema: "XML Schema XML schema é um vocabulário XML para expressar regras de negócios (sobre os dados)."— Transcrição da apresentação:

1 XML Schema XML schema é um vocabulário XML para expressar regras de negócios (sobre os dados).

2 Exemplo ° A localização precisa ser seguida de uma latitude e de uma longitude e do grau de incerteza que envolve as medidas; ° A latitude precisa ser um decimal com um valor entre -90 e 90 ° A longitude precisa ser um decimal com um valor entre -180 e 180

3 Validando os dados: XML Schema validator checar a latitude checar a longitude etc

4 Proposta do schema XML Especificar a estrutura das instâncias dos documentos! Definir o tipo de dados (datatype) de cada elemento/atributo! Exemplo de um esquema Schema XML

5 BookStore.xsd xsd = XML Schema Definition

6 DTD de uma Livraria (BookStore) DTD equivalente ao Schema XML exemplificado

7

8 Declaração de elementos: Tipo simples (xsd:string) ou complexo. Inteiro não negativo. Inteiro não negativo ou unbounded. Alternativa Default: minOccurs=1 e maxOccurs=1

9

10 Declaração de elementos: Tipo simples (xsd:string) ou complexo. Inteiro não negativo. Inteiro não negativo ou unbounded. ... Alternativa

11

12 Book +

13

14

15 Nomes para tipos complexos Sem nome Declaração Inline

16 Nomes para tipos complexos Vantagem: reutilização!

17 Tipo de dados do usuário Declaração de ISBN como do tipo ISBNType Definição de um novo tipo de dados

18 Outros Exemplos Restringe um tipo string a no máximo 8 caracteres, seguindo um padrão: 3 dígitos seguido por um traço (-) e mais 4 dígitos.

19 Outros Exemplos Restringe um tipo string aos valores circle, triangle e square.

20 Outros Exemplos Restringe um tipo integer a um valor mínimo igual a e máximo igual a

21 ... 3 Resumo de declaração de Elementos

22 Tipos Derivados Formam uma subclasse de tipos complexos 1. Derivados por extensão: estendem o tipo complexo pai com mais elementos 2. Derivados por restrição: criam um tipo que é um subconjunto do tipo base Redefinir um elemento tipo base para ter uma restrição sobre os valores possíveis; 2.2. OU redefinir um elemento tipo base para ter uma restrição sobre o número de ocorrências;

23 Derivando por extensão: BookPublication estende a Publication

24 O tipo Publication passa a ter 05 elementos!

25 Title Author Date Publication ISBN Publisher BookPublication

26 Derivando por restrição: Note que SingleAuthorPublication tem apenas três elementos e o elemento Author aparecerá apenas 1 vez!

27 BookStore.dtd Declaração de Atributos

28 xsd:string xsd:integer xsd:boolean... required optional prohibited Obs.:se for usar valor default, não usar a opção "use " Declaração de Atributos

29 Category (autobiography | non fiction | fiction) #REQUIRED - InStock (true | false) "false" Reviewer CDATA " "

30 - Instâncias dos documentos têm que obrigatoriamente ter o atributo Categoria. - Os atributos são sempre simples, ou seja, não podem ter elementos filhos.

31 Declarando o atributo no próprio elemento

32 element complexType schema sequence XMLSchema Namespace string integer boolean

33 Indica que os elementos definidos por esse esquema: - BookStore - Book - Title - Author - Date - ISBN - Publisher estarão no namespace

34 BookStore Book Title Author Date ISBN Publisher (targetNamespace) Book Namespace (targetNamespace)

35 Referência ao elemento Book, declarado no namespace padrão O namespace padrão é que também é o targetNamespace

36 Tipos de dados primitivos Primitive Datatypes –string –boolean –decimal –float –double –duration –dateTime –time –date –gYearMonth –gYear –gMonthDay –gDay –gMonth –hexBinary –base64Binary –anyURI –QName –NOTATION Atomic, built-in –"Hello World" –{true, false, 1, 0} –7.08 – 12.56E3, 12, 12560, 0, -0, INF, -INF, NAN – P1Y2M3DT10H30M12.3S – format: CCYY-MM-DDThh:mm:ss – format: hh:mm:ss.sss – format: CCYY-MM-DD – format: CCYY-MM – format: CCYY – format: --MM-DD –format: ---DD (note the 3 dashes) – format: --MM-- –a hex string –a base64 string –http://www.xfront.com –a namespace qualified name –a NOTATION from the XML spec Note: 'T' is the date/time separator INF = infinity NAN = not-a-number

37 Derived types –normalizedString –token –language –IDREFS –ENTITIES –NMTOKEN –NMTOKENS –Name –NCName –ID –IDREF –ENTITY –integer –nonPositiveInteger –negativeInteger –long –int –short –byte –nonNegativeInteger –unsignedLong –unsignedInt –unsignedShort –unsignedByte –positiveInteger Subtype of primitive datatype –A string without tabs, line feeds, or carriage returns –String w/o tabs, l/f, leading/trailing spaces, consecutive spaces –any valid xml:lang value, e.g., EN, FR,... –usado somente com atributos –part (no namespace qualifier) –usado somente com atributos –456 –infinito negativo a 0 –infinito negativo a -1 – to – to – to – -127 to 128 – 0 to infinity – 0 to – 0 to – 0 to –0 to 255 –1 to infinity Tipos de dados primitivos (cont.)

38 … Facets: - length - minlength - maxlength - pattern - enumeration - totalDigits - minInclusive - maxInclusive - minExclusive - maxExclusive... Sources: - string - boolean - number - float - double - duration - dateTime - time... Forma geral para a especificação de valores de novos tipos


Carregar ppt "XML Schema XML schema é um vocabulário XML para expressar regras de negócios (sobre os dados)."

Apresentações semelhantes


Anúncios Google