Назад к вопросам
Junior
71
questionbank

Какие типы данных существуют в XSD?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

В XSD (XML Schema Definition) существуют встроенные и производные типы данных.

Встроенные типы данных делятся на примитивные и производные от примитивных:

Примитивные типы:

  • xsd:string: последовательность символов.
  • xsd:boolean: логическое значение (true или false, 1 или 0).
  • xsd:decimal: число с плавающей точкой на основе десятичного представления.
  • xsd:float: 32-битное число с плавающей точкой на основе IEEE 754.
  • xsd:double: 64-битное число с плавающей точкой на основе IEEE 754.
  • xsd:duration: временной промежуток.
  • xsd:dateTime: дата и время.
  • xsd:time: время суток.
  • xsd:date: дата.
  • xsd:gYearMonth: месяц и год.
  • xsd:gYear: год.
  • xsd:gMonthDay: месяц и день.
  • xsd:gDay: день месяца.
  • xsd:gMonth: месяц.
  • xsd:hexBinary: двоичные данные, закодированные в шестнадцатеричном формате.
  • xsd:base64Binary: двоичные данные, закодированные в Base64.
  • xsd:anyURI: универсальный идентификатор ресурса (URI).
  • xsd:QName: квалифицированное имя (префикс пространства имен + локальное имя).
  • xsd:NOTATION: ссылка на объявление нотации XML.

Производные от примитивных типов:

  • xsd:normalizedString: строка, в которой символы перевода строки, возврата каретки и табуляции заменены на пробелы.
  • xsd:token: строка без начальных/конечных пробелов и с заменой последовательности пробелов на один пробел.
  • xsd:language: языковой код в соответствии с RFC 3066.
  • xsd:NMTOKEN: имя XML-маркера.
  • xsd:NMTOKENS: список имен XML-маркеров, разделенных пробелами.
  • xsd:Name: имя XML.
  • xsd:NCName: имя XML без двоеточия.
  • xsd:ID: уникальный идентификатор в XML-документе.
  • xsd:IDREF: ссылка на идентификатор (xsd:ID).
  • xsd:IDREFS: список ссылок на идентификаторы.
  • xsd:ENTITY: неразобранная сущность XML.
  • xsd:ENTITIES: список неразобранных сущностей XML.
  • xsd:integer: целое число произвольной точности.
  • xsd:long: 64-битное целое число со знаком.
  • xsd:int: 32-битное целое число со знаком.
  • xsd:short: 16-битное целое число со знаком.
  • xsd:byte: 8-битное целое число со знаком.
  • xsd:nonPositiveInteger: целое число ≤ 0.
  • xsd:negativeInteger: целое число < 0.
  • xsd:nonNegativeInteger: целое число ≥ 0.
  • xsd:positiveInteger: целое число > 0.
  • xsd:unsignedLong: 64-битное целое число без знака.
  • xsd:unsignedInt: 32-битное целое число без знака.
  • xsd:unsignedShort: 16-битное целое число без знака.
  • xsd:unsignedByte: 8-битное целое число без знака.

Производные типы данных:

Могут быть определены пользователем путем ограничения (restriction), расширения (extension) или образования списка (list) или объединения (union) из существующих типов.

Пример определения пользовательского типа:

<xsd:simpleType name="age">
  <xsd:restriction base="xsd:integer">
    <xsd:minInclusive value="0"/>
    <xsd:maxInclusive value="150"/>
  </xsd:restriction>
</xsd:simpleType>