Junior
Que tipos de dados existem no XSD?
sobes.tech IA
Resposta da IA
Existem dois tipos principais de dados no XSD:
-
Tipos primitivos: São básicos e não são construídos com base em outros tipos XSD. Cobrem conceitos fundamentais como strings, números, valores booleanos e datas.
-
Tipos derivados: São criados por extensão ou restrição de tipos existentes (primitivos ou derivados).
Principais tipos primitivos de dados:
xs:string- Sequência de caracteres.xs:boolean- Valor lógico (true,false,1,0).xs:decimal- Número decimal.xs:float- Número de ponto flutuante de precisão simples (32 bits).xs:double- Número de ponto flutuante de dupla precisão (64 bits).xs:integer- Número inteiro (sem parte fracionária, pode ser negativo).xs:date- Data do calendário.xs:time- Hora do dia.xs:dateTime- Data e hora.xs:duration- Duração do tempo.xs:anyURI- Indicador universal de recurso (URI).xs:QName- Nome qualificado.xs:base64Binary- Dados binários em codificação Base64.xs:hexBinary- Dados binários em codificação Hex.xs:NOTATION- Lista de notações.
Muitos tipos derivados são padrão, por exemplo:
xs:long- Derivado dexs:integer.xs:int- Derivado dexs:long.xs:short- Derivado dexs:int.xs:byte- Derivado dexs:short.xs:nonNegativeInteger- Derivado dexs:integer.xs:positiveInteger- Derivado dexs:nonNegativeInteger.xs:nonPositiveInteger- Derivado dexs:integer.xs:negativeInteger- Derivado dexs:nonPositiveInteger.xs:unsignedLong- Derivado dexs:nonNegativeInteger.xs:unsignedInt- Derivado dexs:unsignedLong.xs:unsignedShort- Derivado dexs:unsignedInt.xs:unsignedByte- Derivado dexs:unsignedShort.xs:normalizedString- Derivado dexs:string(elimina caracteres de retorno de carro, salto de línea y tabulación).xs:token- Derivado dexs:normalizedString(elimina espacios en blanco al principio y al final, reemplaza secuencias de espacios por uno solo).xs:language- Derivado dexs:token.xs:Name- Derivado dexs:token.xs:NCName- Derivado dexs:Name.xs:ID- Derivado dexs:NCName.xs:IDREF- Derivado dexs:NCName.xs:IDREFS- Lista dexs:IDREF.xs:ENTITY- Derivado dexs:NCName.xs:ENTITIES- Lista dexs:ENTITY.xs:NMTOKEN- Derivado dexs:token.xs:NMTOKENS- Lista dexs:NMTOKEN.
Tipos derivados definidos pelo utilizador podem ser criados usando os elementos <xs:simpleType> e <xs:complexType>, usando restriction (restrição) ou extension (extensão) de tipos existentes.