Учебники

XSD — Краткое руководство

XSD — Обзор

Определение схемы XML, широко известное как XSD, является способом точного описания языка XML. XSD проверяет правильность структуры и словаря XML-документа по отношению к грамматическим правилам соответствующего языка XML.

XML-документ может быть определен как —

  • Правильно сформированный — если документ XML придерживается всех общих правил XML, таких как теги, должны быть правильно вложенными, открывающие и закрывающие теги должны быть сбалансированы, а пустые теги должны заканчиваться символом «/>», то он называется правильно сформированным ,

    ИЛИ ЖЕ

  • Действительный — XML-документ, который считается действительным, когда он не только правильно сформирован , но также соответствует имеющемуся XSD, в котором указывается, какие теги он использует, какие атрибуты могут содержать эти теги и какие теги могут встречаться внутри других тегов, среди прочих. свойства.

Правильно сформированный — если документ XML придерживается всех общих правил XML, таких как теги, должны быть правильно вложенными, открывающие и закрывающие теги должны быть сбалансированы, а пустые теги должны заканчиваться символом «/>», то он называется правильно сформированным ,

ИЛИ ЖЕ

Действительный — XML-документ, который считается действительным, когда он не только правильно сформирован , но также соответствует имеющемуся XSD, в котором указывается, какие теги он использует, какие атрибуты могут содержать эти теги и какие теги могут встречаться внутри других тегов, среди прочих. свойства.

На следующей диаграмме показано, как XSD используется для структурирования документов XML:

Технология XSD

Вот простой код XSD. Посмотрите на это.

<?xml version = "1.0"?>

<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
   targetNamespace = "http://www.tutorialspoint.com" 
   xmlns = "http://www.tutorialspoint.com"
   elementFormDefault = "qualified">

   <xs:element name = 'class'>
      <xs:complexType>
         <xs:sequence>
            <xs:element name = 'student' type = 'StudentType' minOccurs = '0' 
               maxOccurs = 'unbounded' />
         </xs:sequence>
      </xs:complexType>
   </xs:element>

   <xs:complexType name = "StudentType">
      <xs:sequence>
         <xs:element name = "firstname" type = "xs:string"/>
         <xs:element name = "lastname" type = "xs:string"/>
         <xs:element name = "nickname" type = "xs:string"/>
         <xs:element name = "marks" type = "xs:positiveInteger"/>
      </xs:sequence>
      <xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
   </xs:complexType>
   
</xs:schema>

Характеристики

Вот список некоторых популярных функций XSD —

  • XSD могут быть расширяемыми для будущих дополнений.
  • XSD богаче и мощнее, чем DTD.
  • XSD написан на XML.
  • XSD поддерживает типы данных.
  • XSD поддерживает пространства имен.
  • XSD — рекомендация W3C.

Синтаксис XSD

XML XSD хранится в отдельном документе, и затем документ может быть связан с документом XML для его использования.

Синтаксис

Основной синтаксис XSD следующий:

<?xml version = "1.0"?>

<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
   targetNamespace = "http://www.tutorialspoint.com"
   xmlns = "http://www.tutorialspoint.com" elementFormDefault = "qualified">
   
   <xs:element name = 'class'>
      <xs:complexType>
         <xs:sequence>
            <xs:element name = 'student' type = 'StudentType' minOccurs = '0' 
               maxOccurs = 'unbounded' />
         </xs:sequence>
      </xs:complexType>
   </xs:element>

   <xs:complexType name = "StudentType">
      <xs:sequence>
         <xs:element name = "firstname" type = "xs:string"/>
         <xs:element name = "lastname" type = "xs:string"/>
         <xs:element name = "nickname" type = "xs:string"/>
         <xs:element name = "marks" type = "xs:positiveInteger"/>
      </xs:sequence>
      <xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
   </xs:complexType>
   
</xs:schema>

Элемент <Schema>

Схема является корневым элементом XSD, и это всегда требуется.

<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">

Приведенный выше фрагмент указывает, что элементы и типы данных, используемые в схеме, определены в пространстве имен http://www.w3.org/2001/XMLSchema, и эти элементы / типы данных должны начинаться с префикса xs . Это всегда требуется.

targetNamespace = "http://www.tutorialspoint.com"

Приведенный выше фрагмент указывает, что элементы, используемые в этой схеме, определены в пространстве имен http://www.tutorialspoint.com . Это необязательно.

xmlns = "http://www.tutorialspoint.com"

Приведенный выше фрагмент указывает, что пространством имен по умолчанию является http://www.tutorialspoint.com .

elementFormDefault = "qualified"

Приведенный выше фрагмент указывает, что любые элементы, объявленные в этой схеме, должны быть квалифицированы в пространстве имен, прежде чем использовать их в любом документе XML. Это необязательно.

Схема ссылок

Взгляните на следующую схему ссылок:

<?xml version = "1.0"?>

<class xmlns = "http://www.tutorialspoint.com"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://www.tutorialspoint.com student.xsd">  
   
   <student rollno = "393">    
      <firstname>Dinkar</firstname>
      <lastname>Kad</lastname>
      <nickname>Dinkar</nickname>
      <marks>85</marks>
   </student>
   
   <student rollno = "493">	 
      <firstname>Vaneet</firstname>
      <lastname>Gupta</lastname>
      <nickname>Vinni</nickname>
      <marks>95</marks>
   </student>
   
   <student rollno = "593">    
      <firstname>Jasvir</firstname>
      <lastname>Singh</lastname>
      <nickname>Jazz</nickname>
      <marks>90</marks>
   </student>
</class>
xmlns = "http://www.tutorialspoint.com"

Приведенный выше фрагмент определяет объявление пространства имен по умолчанию. Это пространство имен используется средством проверки схемы, что все элементы являются частью этого пространства имен. Это необязательно.

xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://www.tutorialspoint.com student.xsd">  

После определения xsi экземпляра XMLSchema используйте атрибут schemaLocation . Этот атрибут имеет два значения: пространство имен и местоположение XML-схемы, которые будут использоваться через пробел. Это необязательно.

XSD — валидация

Мы будем использовать XSD-валидатор на основе Java для валидирования student.xml и по адресу student.xsd.

students.xml

<?xml version = "1.0"?>

<class>  
   <student rollno = "393">
      <firstname>Dinkar</firstname>    
      <lastname>Kad</lastname>
      <nickname>Dinkar</nickname>
      <marks>85</marks>	 
   </student>
   
   <student rollno = "493">	 
      <firstname>Vaneet</firstname>
      <lastname>Gupta</lastname>
      <nickname>Vinni</nickname>
      <marks>95</marks>
   </student>
   
   <student rollno = "593">    
      <firstname>Jasvir</firstname>
      <lastname>Singh</lastname>
      <nickname>Jazz</nickname>
      <marks>90</marks>
   </student>
</class>

students.xsd

<?xml version = "1.0"?>

<xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
   <xs:element name = 'class'>
      <xs:complexType>
         <xs:sequence>
             <xs:element name = 'student' type = 'StudentType' minOccurs = '0' 
                maxOccurs = 'unbounded' />
         </xs:sequence>
      </xs:complexType>
   </xs:element>

   <xs:complexType name = "StudentType">
      <xs:sequence>
         <xs:element name = "firstname" type = "xs:string"/>
         <xs:element name = "lastname" type = "xs:string"/>
         <xs:element name = "nickname" type = "xs:string"/>
         <xs:element name = "marks" type = "xs:positiveInteger"/>
      </xs:sequence>
      <xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
   </xs:complexType>			 
</xs:schema>

XSDValidator.java

import java.io.File;
import java.io.IOException;

import javax.xml.XMLConstants;
import javax.xml.transform.stream.StreamSource;

import javax.xml.validation.Schema;
import javax.xml.validation.SchemaFactory;
import javax.xml.validation.Validator;

import org.xml.sax.SAXException;

public class XSDValidator {
   public static void main(String[] args) {
      if(args.length !=2){
         System.out.println("Usage : XSDValidator <file-name.xsd> <file-name.xml>" );
      } else {
         boolean isValid = validateXMLSchema(args[0],args[1]);
         
         if(isValid){
            System.out.println(args[1] + " is valid against " + args[0]);
         } else {
            System.out.println(args[1] + " is not valid against " + args[0]);
         }
      }
   }
   
   public static boolean validateXMLSchema(String xsdPath, String xmlPath){
      try {
         SchemaFactory factory =
            SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
            Schema schema = factory.newSchema(new File(xsdPath));
            Validator validator = schema.newValidator();
            validator.validate(new StreamSource(new File(xmlPath)));
      } catch (IOException e){
         System.out.println("Exception: "+e.getMessage());
         return false;
      } catch(SAXException e1){
         System.out.println("SAX Exception: "+e1.getMessage());
         return false;
      }
		
      return true;
   }
}

Шаги для проверки XML на XSD

  • Скопируйте файл XSDValidator.java в любое место, например, E: > java

  • Скопируйте Students.xml в то же место E: > Java

  • Скопируйте Students.xsd в том же месте E: > Java

  • Скомпилируйте XSDValidator.java с помощью консоли. Убедитесь, что на вашем компьютере установлен JDK 1.5 и более поздних версий и настроены пути к классам. Подробнее о том, как использовать JAVA, смотрите Учебное пособие по JAVA.

Скопируйте файл XSDValidator.java в любое место, например, E: > java

Скопируйте Students.xml в то же место E: > Java

Скопируйте Students.xsd в том же месте E: > Java

Скомпилируйте XSDValidator.java с помощью консоли. Убедитесь, что на вашем компьютере установлен JDK 1.5 и более поздних версий и настроены пути к классам. Подробнее о том, как использовать JAVA, смотрите Учебное пособие по JAVA.

E:\java\javac XSDValidator.java
  • Запустите XSDValidator, указав в качестве аргумента Students.xsd и Students.xml .

Запустите XSDValidator, указав в качестве аргумента Students.xsd и Students.xml .

E:\java\java XSDValidator students.xsd students.xml

Проверьте вывод

Вы увидите следующий результат —

students.xml is valid against students.xsd

XSD — Простые типы

В этой главе мы увидим простые типы, которые определяет XSD.

S.No. Простой тип и описание
1

Элемент

Простой элемент может содержать только текст. Он не может содержать никаких других элементов.

2

атрибут

Атрибут сам по себе является типом и используется в сложном элементе.

3

ограничение

Ограничение определяет допустимые значения элемента XML.

Элемент

Простой элемент может содержать только текст. Он не может содержать никаких других элементов.

атрибут

Атрибут сам по себе является типом и используется в сложном элементе.

ограничение

Ограничение определяет допустимые значения элемента XML.

XSD — сложные типы

Комплексный элемент — это элемент XML, который может содержать другие элементы и / или атрибуты. Мы можем создать сложный элемент двумя способами —

  • Определите сложный тип, а затем создайте элемент, используя атрибут типа

  • Определите сложный тип непосредственно, назвав

Определите сложный тип, а затем создайте элемент, используя атрибут типа

Определите сложный тип непосредственно, назвав

Определите сложный тип, а затем создайте элемент, используя атрибут типа.

<xs:complexType name = "StudentType">
   <xs:sequence>
      <xs:element name = "firstname" type = "xs:string"/>
      <xs:element name = "lastname" type = "xs:string"/>
      <xs:element name = "nickname" type = "xs:string"/>
      <xs:element name = "marks" type = "xs:positiveInteger"/>
   </xs:sequence>
   <xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
</xs:complexType>

<xs:element name = 'student' type = 'StudentType' />			 

Определите сложный тип непосредственно, назвав.

<xs:element name = "student">
   <xs:complexType>   
      <xs:sequence>
         <xs:element name = "firstname" type = "xs:string"/>
         <xs:element name = "lastname" type = "xs:string"/>
         <xs:element name = "nickname" type = "xs:string"/>
         <xs:element name = "marks" type = "xs:positiveInteger"/>
      </xs:sequence>
   <xs:attribute name = 'rollno' type = 'xs:positiveInteger'/>
   </xs:complexType>
<xs:element>

Ниже приведен список сложных типов, которые поддерживает XSD.

S.No. Простой тип и описание
1

пустой

Сложный Пустой элемент сложного типа может иметь только атрибуты, но без содержимого.

2

Только элементы

Элемент сложного типа «Только элементы» может содержать только элементы

3

Только текст

Текстовый элемент сложного типа может содержать только атрибут и текст.

4

смешанный

Смешанный элемент сложного типа может содержать элемент, атрибут и текст.

5

индикаторы

Индикаторы контролируют способы организации элементов в документе XML.

6

<любой>

Элемент <any> используется для элементов, которые не определены схемой

7

<anyAttribute>

Атрибут <anyAttribute> используется для атрибута, который не определен схемой.

пустой

Сложный Пустой элемент сложного типа может иметь только атрибуты, но без содержимого.

Только элементы

Элемент сложного типа «Только элементы» может содержать только элементы

Только текст

Текстовый элемент сложного типа может содержать только атрибут и текст.

смешанный

Смешанный элемент сложного типа может содержать элемент, атрибут и текст.

индикаторы

Индикаторы контролируют способы организации элементов в документе XML.

<любой>

Элемент <any> используется для элементов, которые не определены схемой

<anyAttribute>

Атрибут <anyAttribute> используется для атрибута, который не определен схемой.

XSD — Строка

Строковые типы данных используются для представления символов в документах XML.

<xs: string> тип данных

Тип данных <xs: string> может содержать символы, переводы строк, возврат каретки и символы табуляции. Процессор XML не заменяет символы перевода строки, возврата каретки и символов табуляции в содержимом пробелами и сохраняет их нетронутыми. Например, несколько пробелов или вкладок сохраняются во время отображения.

Пример <xs: string>

Объявление элемента в xsd —

<xs:element name = "name" type = "xs:string"/>

Использование элемента в xml —

<name>Dinkar</name>
<name>Dinkar    Kad</name>

<xs: token> тип данных

Тип данных <xs: token> является производным от типа данных <string> и может принимать символы, переводы строк, возврат каретки и символы табуляции. Процессор XML удалит переводы строк, табуляции, возврат каретки, начальные и конечные пробелы и несколько пробелов.

Пример <xs: token>

Объявление элемента в xsd —

<xs:element name = "name" type = "xs:token"/>

Использование элемента в xml —

<name>Dinkar</name>
<name>Dinkar    Kad</name>

Типы данных String

Ниже приведен список часто используемых типов данных, которые являются производными от типа данных <string>.

S.No. Имя и описание
1

Я БЫ

Представляет атрибут ID в XML и используется в атрибутах схемы.

2

IDREF

Представляет атрибут IDREF в XML и используется в атрибутах схемы.

3

язык

Представляет действительный идентификатор языка

4

название

Представляет правильное имя XML

5

NMTOKEN

Представляет атрибут NMTOKEN в XML и используется в атрибутах схемы.

6

normalizedString

Представляет строку, которая не содержит перевода строки, возврата каретки или табуляции.

7

строка

Представляет строку, которая может содержать переводы строк, возврат каретки или вкладки.

8

знак

Представляет строку, которая не содержит перевода строки, возврата каретки, табуляции, начальных или конечных пробелов или нескольких пробелов

Я БЫ

Представляет атрибут ID в XML и используется в атрибутах схемы.

IDREF

Представляет атрибут IDREF в XML и используется в атрибутах схемы.

язык

Представляет действительный идентификатор языка

название

Представляет правильное имя XML

NMTOKEN

Представляет атрибут NMTOKEN в XML и используется в атрибутах схемы.

normalizedString

Представляет строку, которая не содержит перевода строки, возврата каретки или табуляции.

строка

Представляет строку, которая может содержать переводы строк, возврат каретки или вкладки.

знак

Представляет строку, которая не содержит перевода строки, возврата каретки, табуляции, начальных или конечных пробелов или нескольких пробелов

ограничения

Следующие типы ограничений могут быть использованы с типами данных String —

  • перечисление
  • длина
  • максимальная длина
  • MINLENGTH
  • шаблон
  • WHITESPACE

XSD — дата и время

Типы данных Date и Time используются для представления даты и времени в документах XML.

<xs: date> тип данных

Тип данных <xs: date> используется для представления даты в формате ГГГГ-ММ-ДД.

  • ГГГГ — представляет год

  • ММ — представляет месяц

  • ДД — представляет день

ГГГГ — представляет год

ММ — представляет месяц

ДД — представляет день

Пример <xs: date>

Объявление элемента в XSD —

<xs:element name = "birthdate" type = "xs:date"/>

Использование элемента в XML —

<birthdate>1980-03-23</birthdate>

тип данных <xs: time>

Тип данных <xs: time> используется для представления времени в формате чч: мм: сс.

  • чч — представляет часы

  • мм — представляет минуты

  • сс — представляет секунды

чч — представляет часы

мм — представляет минуты

сс — представляет секунды

Пример <xs: time>

Объявление элемента в XSD —

<xs:element name = "startTime" type = "xs:time"/>

Использование элемента в XML —

<startTime>10:20:15</startTime>

<xs: datetime> тип данных

Тип данных <xs: datetime> используется для представления даты и времени в формате ГГГГ-ММ-ДДЧч: мм: сс.

  • ГГГГ — представляет год

  • ММ — представляет месяц

  • ДД — представляет день

  • T — представляет начало отрезка времени

  • чч — представляет часы

  • мм — представляет минуты

  • сс — представляет секунды

ГГГГ — представляет год

ММ — представляет месяц

ДД — представляет день

T — представляет начало отрезка времени

чч — представляет часы

мм — представляет минуты

сс — представляет секунды

Пример <xs: datetime>

Объявление элемента в XSD —

<xs:element name = "startTime" type = "xs:datetime"/>

Использование элемента в XML —

<startTime>1980-03-23T10:20:15</startTime>

Тип данных <xs: duration>

Тип данных <xs: duration> используется для представления временного интервала в формате PnYnMnDTnHnMnS. Каждый компонент не является обязательным, кроме P.

  • P — представляет начало раздела даты

  • нг — представляет год

  • нМ — представляет месяц

  • нд — представляет день

  • T — представляет начало отрезка времени

  • нг — представляет часы

  • нМ — представляет минуты

  • нс — представляет секунды

P — представляет начало раздела даты

нг — представляет год

нМ — представляет месяц

нд — представляет день

T — представляет начало отрезка времени

нг — представляет часы

нМ — представляет минуты

нс — представляет секунды

Пример <xs: duration>

Объявление элемента в XSD —

<xs:element name = "period" type = "xs:duration"/>

Использование элемента в xml представляет период 6 лет, 3 месяца, 10 дней и 15 часов.

<period>P6Y3M10DT15H</period>

Типы данных даты

Ниже приведен список наиболее часто используемых типов данных даты.

S.No. Имя и описание
1.

Дата

Представляет значение даты

2.

DATETIME

Представляет значение даты и времени

3.

продолжительность

Представляет интервал времени

4.

Gday

Представляет часть даты как день (DD)

5.

gMonth

Представляет часть даты как месяц (ММ)

6.

gMonthDay

Представляет часть даты как месяц и день (MM-DD).

7.

gYear

Представляет часть даты как год (ГГГГ)

8.

gYearMonth

Представляет часть даты как год и месяц (ГГГГ-ММ)

9.

время

Представляет значение времени

Дата

Представляет значение даты

DATETIME

Представляет значение даты и времени

продолжительность

Представляет интервал времени

Gday

Представляет часть даты как день (DD)

gMonth

Представляет часть даты как месяц (ММ)

gMonthDay

Представляет часть даты как месяц и день (MM-DD).

gYear

Представляет часть даты как год (ГГГГ)

gYearMonth

Представляет часть даты как год и месяц (ГГГГ-ММ)

время

Представляет значение времени

ограничения

Следующие типы ограничений могут использоваться с типами данных Date —

  • перечисление
  • maxExclusive
  • maxInclusive
  • minExclusive
  • minInclusive
  • шаблон
  • WHITESPACE

XSD — Числовые типы данных

Числовые типы данных используются для представления чисел в документах XML.

<xs: десятичный> тип данных

Тип данных <xs: decimal> используется для представления числовых значений. Поддерживаются десятичные числа до 18 цифр.

Пример <xs: decimal>

Объявление элемента в XSD —

<xs:element name = "score" type = "xs:decimal"/>

Использование элемента в XML —

<score>9.12</score>

<xs: integer> тип данных

Тип данных <xs: integer> используется для представления целочисленных значений.

Пример <xs: integer>

Объявление элемента в XSD —

<xs:element name = "score" type = "xs:integer"/>

Использование элемента в XML —

<score>9</score>

Числовые типы данных

Ниже приведен список часто используемых числовых типов данных.

S.No. Имя и описание
1.

байт

8-разрядное целое число со знаком

2.

десятичный

Десятичное значение

3.

ИНТ

32-разрядное целое число со знаком

4.

целое число

Целочисленное значение

5.

долго

64-разрядное целое число со знаком

6.

negativeInteger

Целое число, имеющее только отрицательные значения (.., — 2, -1)

7.

nonNegativeInteger

Целое число, имеющее только неотрицательные значения (0,1,2, ..)

8.

nonPositiveInteger

Целое число, имеющее только неположительные значения (.., — 2, -1,0)

9.

положительное число

Целое число, имеющее только положительные значения (1,2, ..)

10.

короткая

16-разрядное целое число со знаком

11.

unsignedLong

64-разрядное целое число без знака

12.

Целочисленный Беззнаковый

32-разрядное целое число без знака

13.

unsignedShort

16-разрядное целое число без знака

14.

unsignedByte

8-битное целое число без знака

байт

8-разрядное целое число со знаком

десятичный

Десятичное значение

ИНТ

32-разрядное целое число со знаком

целое число

Целочисленное значение

долго

64-разрядное целое число со знаком

negativeInteger

Целое число, имеющее только отрицательные значения (.., — 2, -1)

nonNegativeInteger

Целое число, имеющее только неотрицательные значения (0,1,2, ..)

nonPositiveInteger

Целое число, имеющее только неположительные значения (.., — 2, -1,0)

положительное число

Целое число, имеющее только положительные значения (1,2, ..)

короткая

16-разрядное целое число со знаком

unsignedLong

64-разрядное целое число без знака

Целочисленный Беззнаковый

32-разрядное целое число без знака

unsignedShort

16-разрядное целое число без знака

unsignedByte

8-битное целое число без знака

ограничения

Следующие типы ограничений могут использоваться с типами данных Date —

  • перечисление
  • fractionDigits
  • maxExclusive
  • maxInclusive
  • minExclusive
  • minInclusive
  • шаблон
  • totalDigits
  • WHITESPACE

XSD — Разные типы данных

XSD имеет несколько других важных типов данных, таких как логические, двоичные и anyURI.

<xs: логический> тип данных

Тип данных <xs: boolean> используется для представления значений true, false, 1 (для true) или 0 (для false).

Пример <xs: boolean>

Объявление элемента в XSD —

<xs:element name = "pass" type = "xs:boolean"/>

Использование элемента в XML —

<pass>false</pass>

Двоичные типы данных

Двоичные типы данных используются для представления двоичных значений. Два двоичных типа распространены в использовании.

  • base64Binary — представляет двоичные данные в кодировке base64

  • hexBinary — представляет шестнадцатеричные закодированные двоичные данные

base64Binary — представляет двоичные данные в кодировке base64

hexBinary — представляет шестнадцатеричные закодированные двоичные данные

Пример <xs: hexbinary>

Объявление элемента в XSD —

<xs:element name = "blob" type = "xs:hexBinary"/>

Использование элемента в XML —

<blob>9FEEF</blob>

тип данных <xs: anyURI>

Тип данных <xs: anyURI> используется для представления URI.

Пример <xs: anyURI>

Объявление элемента в XSD —

<xs:attribute name = "resource" type = "xs:anyURI"/>

Использование элемента в XML —

<image resource = "http://www.tutorialspoint.com/images/smiley.jpg" />

Числовые типы данных

Ниже приведен список часто используемых числовых типов данных.

S.No. Имя и описание
1.

байт

8-разрядное целое число со знаком

2.

десятичный

Десятичное значение

3.

ИНТ

32-разрядное целое число со знаком

4.

целое число

Целочисленное значение

5.

долго

64-разрядное целое число со знаком

6.

negativeInteger

Целое число, имеющее только отрицательные значения (.., — 2, -1)

7.

nonNegativeInteger

Целое число, имеющее только неотрицательные значения (0,1,2, ..)

8.

nonPositiveInteger

Целое число, имеющее только неположительные значения (.., — 2, -1,0)

9.

положительное число

Целое число, имеющее только положительные значения (1,2, ..)

10.

короткая

16-разрядное целое число со знаком

11.

unsignedLong

64-разрядное целое число без знака

12.

Целочисленный Беззнаковый

32-разрядное целое число без знака

13.

unsignedShort

16-разрядное целое число без знака

14.

unsignedByte

8-битное целое число без знака

байт

8-разрядное целое число со знаком

десятичный

Десятичное значение

ИНТ

32-разрядное целое число со знаком

целое число

Целочисленное значение

долго

64-разрядное целое число со знаком

negativeInteger

Целое число, имеющее только отрицательные значения (.., — 2, -1)

nonNegativeInteger

Целое число, имеющее только неотрицательные значения (0,1,2, ..)

nonPositiveInteger

Целое число, имеющее только неположительные значения (.., — 2, -1,0)

положительное число

Целое число, имеющее только положительные значения (1,2, ..)

короткая

16-разрядное целое число со знаком

unsignedLong

64-разрядное целое число без знака

Целочисленный Беззнаковый

32-разрядное целое число без знака

unsignedShort

16-разрядное целое число без знака

unsignedByte

8-битное целое число без знака

ограничения

Следующие типы ограничений могут быть использованы с другими типами данных, за исключением логического типа данных —