Как удалить элемент из XML-документа в C#?

Значительные улучшения в простоте дизайна и ясности изложения без ущерба для ...

Значительные улучшения в простоте дизайна и ясности изложения без ущерба для обратной и прямой совместимости;

  • Поддержка версий для языков XML, определенных с использованием спецификации схемы XML, включая синтаксис передачи XML для самих схем.

  • Эти цели немного расходятся; . 0 и 1. 1

    1. Добавить поддержку версий (при этом признавая, что это может немного нарушить синтаксис передачи XML на полях).

    2. Разрешить исправления ошибок (если мы не решим, что исправление слишком разрушительно для точечного выпуска в конкретном случае)

    3. Разрешить редакционные изменения

    4. Разрешить изменениям дизайна влиять на поведение в крайних случаях

    5. Разрешить относительно ненарушающие изменения в иерархии типов (чтобы лучше поддерживать текущие и будущие международные стандарты и рекомендации W3C)

    6. Разрешить очистку проекта для изменения структуры компонентов (функциональные изменения ограничены крайними случаями)

    7. Не допускать значительных изменений в функциональности

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

    С точки зрения совместимости, общая цель состоит в том, чтобы

    • Все документы схемы, соответствующие версии 1. Версия 1 также должна быть совместима с версией 0 этой спецификации. 1 и 1 должны иметь одинаковое поведение проверки. 0 и 1. 1 реализации (за исключением, возможно, крайних случаев и связанных с ними подробностей PSVI);

    • Подавляющее большинство документов схемы соответствуют версии 1. Также следует соблюдать версию 1 этой спецификации. 0, за исключением любых несовместимостей, вызванных поддержкой версий, и когда они соответствуют версии 1. 0 (или становятся совместимыми путем удаления информации о версиях) должны иметь такое же поведение при проверке, что и 1. 0 и 1. 1 реализации (с возможным исключением пограничных случаев и сведений о результирующем PSVI);

    1. 2 Цель

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

    В таблице ниже представлены два типичных примера экземпляров XML с неявными типами данных. Экземпляр слева — это счет-фактура, а экземпляр справа — заметка или, возможно, сообщение электронной почты в формате XML.

    Ориентация на данныеОриентация на документ
    <invoice>
      <orderDate>1999-01-21</orderDate>
      <shipDate>1999-01-25</shipDate>
      <billingAddress>
       <name>Ashok Malhotra</name>
       <street>123 Microsoft Ave.</street>
       <city>Hawthorne</city>
       <state>NY</state>
       <zip>10532-0000</zip>
      </billingAddress>
      <voice>555-1234</voice>
      <fax>555-4321</fax>
    </invoice>
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>

    Счет-фактура включает несколько дат и телефонных номеров, аббревиатуру для штата (выбирается из пронумерованного списка разрешенных значений) и почтовый индекс (в определяемой обычной форме). дата, номер телефона, адрес электронной почты и значение «важности» (из списка вариантов, таких как «низкий», «средний» или «высокий»)

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

    1. 3 Зависимости от других спецификаций

    Другие требования, от которых зависит этот, перечислены в

    Эта спецификация определяет некоторые типы данных, которые полагаются на определения в и; . Версия 0 (,) и Версия 1. 1 (,) из этих требований. В любом заданном приложении этой спецификации выбор 1. 0 или 1. Одним из примеров типа данных является

    Реализации, соответствующие этой спецификации, могут предоставлять либо 1. 1 на основе типов данных или 1. типы данных на основе 0 или оба. Если оба поддерживаются, принимается решение о том, какие типы данных использовать в конкретном эпизоде ​​оценки. должен находиться под контролем пользователя.

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

    В этой спецификации используется обозначение EBNF спецификации. есть различия. См. спецификацию для более подробного описания нотации EBNF.

    1. 4 Требования

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

    1. предоставлять примитивные типы данных, такие как байт, дата, целое число, последовательность, примитивные типы данных SQL и Java и т. д. ;

    2. создать систему типов, пригодную для импорта/экспорта из систем баз данных (например,. g. g. реляционный, объектный, OLAP);

    3. различать требования к лексическому представлению данных и. те, кто отвечает за базовый набор данных;

    4. позволяют создавать определяемые пользователем типы данных, такие как типы данных, производные от существующих типов данных, которые могут иметь определенные свойства (например,. g. g. , диапазон, точность, длина, формат)

    1. 5 Объем

    Типы данных, определенные в этой спецификации, могут использоваться в XML-схеме.

    1. 6 Терминология

    Терминология, используемая для описания типов данных схемы XML, определена в теле спецификации. Термины, определенные в следующем списке, используются для построения этих определений, а также для описания действий процессора типов данных.

    [Определение. ]  для совместимости

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

    [Определение. ] соответствовать

    (Из строк или имен. ) Две сравниваемые строки или имена должны быть идентичными. Символы в ISO/IEC 10646 с несколькими возможными представлениями (e. g. g. Символы как с предварительно составленными, так и с базовыми диакритическими формами) совпадают, только если их представление в обеих строках одинаково. Складывание корпуса не выполняется

    (О строках и правилах грамматики). ) Строка соответствует грамматической продукции тогда и только тогда, когда она является членом языка, порожденного этой постановкой.

    [Определение. ]   может

    Схемы, документы схемы и процессоры могут, но не обязаны вести себя так, как описано

    [Определение. ]   следует

    Рекомендуется, чтобы схемы, документы схемы и обработчики вели себя так, как описано, но могут быть веские причины, по которым это не так;

    [Определение. ]   должен

    (О схемах и документах схемы. ) Схемы и документы должны вести себя так, как описано; .

    (Из процессоров. ) Процессоры должны действовать в соответствии со спецификациями

    [Определение. ]   не должен

    Схемы, документы схемы и процессоры не могут вести себя так, как описано; .

    [Определение. ] ошибка

    Несоблюдение правил данной спецификации схемой или документом схемы

    Если не указано иное, обработчики должны различать безошибочные (соответствующие) схемы и документы схемы; . должен сообщить об этом; . Если нарушается более одного из ограничений, указанных в этой спецификации, сообщается о том, сколько и о каких нарушениях.

    Запись. Отказ элемента или атрибута XML быть допустимым для определенного типа данных в определенной схеме не является несоответствием этой спецификации и, следовательно, не является ошибкой для целей этой спецификации.

    [Определение. ]  параметр пользователя

    Выбор процессора, оставленный на усмотрение пользователя, а не фиксированный для всех пользователей или вариантов использования процессора.

    Эта спецификация включает такие утверждения, как «Процессоры могут «по усмотрению пользователя» означать, что процессоры будут вести себя определенным образом. может предоставлять пользователям механизмы для (i). e. вызывающие процессоры), чтобы включить или отключить указанное поведение. Процессоры, которые не предлагают такие удобные элементы управления, не должны вести себя указанным образом. Процессоры, предлагающие такие удобные элементы управления, должны позволять пользователю деактивировать дополнительное поведение.

    Запись. Обычное ожидание от таких опций состоит в том, что настройка по умолчанию отключит рассматриваемое дополнительное поведение, включив его только тогда, когда пользователь явно запрашивает его. Однако это не является обязательным требованием для соблюдения. Если в документации процессора указано, что пользователь может отключить дополнительное поведение, то вызов процессора без запроса на его отключение может быть интерпретирован как запрос на его включение. Однако требуется, чтобы пользователь мог отключить необязательное поведение

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

    1. 7 Ограничения и вклады

    Эта спецификация включает три типа нормативных утверждений о компонентах схемы, их XML-представлениях и их вкладе в проверку схемы информационных элементов.

    [Определение. ]   Ограничение на схемы

    Ограничение на сами компоненты схемы, i. e. e. условия, которым компоненты должны соответствовать, чтобы быть компонентами вообще. В основном можно найти в

    [Определение. ]   Ограничение представления схемы

    Ограничения XML на представление компонентов схемы.

    [Определение. ] Правило проверки

    Компоненты схемы выражают ограничения, которым информационные элементы должны соответствовать, чтобы быть допустимыми для схемы.

    2 Система типов данных

    В этом разделе объясняется концептуальная основа, лежащая в основе системы типов данных, определенной в этой спецификации.

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

    Запись. Эта спецификация определяет только операции и отношения, необходимые для обработки схемы. Обычно ожидается, что приложения, использующие эти типы данных, будут реализовывать соответствующие дополнительные функции и/или отношения, чтобы тип данных был полезен в целом. Для некоторых типов данных (например,. g. или) определено частично посредством ссылки на другие спецификации, которые налагают ограничения, не являющиеся частью типов данных, определенных здесь, приложения могут также захотеть проверить, соответствуют ли значения требованиям, указанным в текущей версии соответствующей внешней спецификации.

    2. 1 тип данных

    [Определение. ]

    • A представляет собой набор значений

    • A - это набор значений, который используется для их представления

    • Небольшой набор функций, отношений и процедур, связанных с типом данных.

    Запись. В этой спецификации определены только операции и отношения, необходимые для обработки схемы. e. , как идентифицировать типы данных и варианты «реального мира», для которых типы данных, определенные здесь, предназначены для использования для обмена данными.

    Кроме того, часто бывает полезно иметь инверсию, которая обеспечивает стандарт для каждого значения. Отображение лексических представлений в значения зависит от контекста для некоторых типов данных, в первую очередь and;

    Запись. Они определены для типов данных везде, где они определены в этой спецификации. Когда тип данных получен с использованием фасетов, которые непосредственно ограничивают его, соответствующие лексические представления удаляются из лексического пространства для каждого значения, исключаемого из лексического пространства. Для такого типа данных является подмножеством для его типа и предоставляет для каждого оставшегося значения в

    Фасет же, как и любые другие () грани, ограничивают непосредственно. Когда предоставляется более одного лексического представления для данного значения, такие аспекты могут удалять, допуская другое лексическое представление; . . В таких случаях регресс по настоящей спецификации невозможен. Приложения могут обращаться с этим так, как считают нужным

    Запись. В этой спецификации используется более короткая форма «тип», когда ожидается более длинная форма «тип данных» (например,. g. g. во фразах «тип объединения», «тип списка», «базовый тип», «тип элемента» и т. д. Нет намеренного систематического различия между формами этих фраз с «типом» и формами с «типом данных»;

    Напротив, различие между «типом данных» и «определением простого типа» содержит больше информации. Тип данных отличается значком ,, и т. д. , как описано ранее, независимо от конкретных аспектов или других механизмов определения, используемых в определении простого типа для описания этого конкретного или. Различные определения простых типов с различными аспектами могут описывать один и тот же тип данных.

    2. 2 Пространство значений

    2. 2. 1
    2. 2. 2
    2. 2. 3

    [Определение. ]. . (Если во время вывода отображение ограничено таким образом, что значение не имеет обозначения, это значение удаляется из пространства значений. ). )

    Пространства значений типов данных — это абстракции, которые определены в той мере, в какой это необходимо, чтобы прояснить их для читателей.

    Запись. Пространства значений и содержащиеся в них значения являются абстракциями.

    Кроме того, ожидается, что другие приложения будут определять дополнительные соответствующие операции и/или отношения в этих пространствах значений (например,. g. ,. g. , сложение и умножение в пространствах значений различных числовых типов данных), и им разрешено переопределять операции и отношения, определенные в этой спецификации, где это уместно, при условии, что отношения и операции, используемые для обработки схемы, определены здесь.

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

    • аксиоматически определено в другом месте из фундаментальных понятий (преднамеренное определение) [см.]

    • перечисляется непосредственно из значений ранее определенного типа данных (расширенное определение)

    • определяется путем ограничения ранее определенного типа данных определенным подмножеством с заданным набором свойств [см.]

    • определяется как набор значений, полученных из одного или нескольких ранее определенных(ых) с помощью определенной процедуры построения [см. и]

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

    2. 2. 1 Личность

    Отношение идентичности всегда указывается. Каждое пространство значений имеет тождественное отношение по определению. Две вещи идентичны тогда и только тогда, когда они одинаковы. я. e. , если нет возможности отличить их друг от друга.  

    Запись. Это не исключает использования нескольких внутренних представлений для заданного значения при реализации типов данных, если в реализации типа данных нет встроенного механизма (т. e. e. Помимо «приведения» данных к другому типу данных с сохранением битовой строки), два представления будут различаться.

    Значения из разных типов данных искусственно различаются в определенном здесь отношении идентичности, если в противном случае они считались бы идентичными.

    ПРЕДУПРЕЖДЕНИЕ. Необходимо соблюдать осторожность при идентификации значений в различных примитивных типах данных. 1 или 0. Пространство значений содержит 10000000009, и каждый литерал сопоставляется с ближайшим значением, а именно 0. 100000001490116119384765625), но они соответствуют разным значениям в

    Запись. Типы данных не генерируют новые значения; . . В результате «

    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    5», рассматриваемое как «a», «
    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    5», рассматриваемое как «an», и «
    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    5», рассматриваемое как «все обозначают одно и то же значение». Они не только равны, но и одинаковы

    Если заданы два списка A и B, то A и B являются одним и тем же списком, если они содержат одинаковую последовательность атомарных значений. Элементы A и B попарно идентичны элементам B, что является одновременно необходимым и достаточным условием для этой идентичности.

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

    2. 2. 2 Равенство

    Для пространства значений каждого типа данных указано отношение равенства.

    Равенство, с другой стороны, не обязательно должно охватывать все пространство значений типа данных (хотя обычно это происходит). В частности, в типах данных и NaN не равен самому себе.

    При выполнении перечислением, проверке ограничений идентичности (в контексте) и проверке ограничений значения это отношение равенства используется в сочетании с идентичностью. При оформлении привлекающего ордера используется совместно с ордером. Отношение равенства, используемое для оценки выражений XPath, может различаться.

    Запись. Предыдущая версия этой спецификации (1. 0), равенство всегда было тождеством

    Тип данных, например, имеет равенство, которое не является тождеством (. 0), и чей домен исключает одно значение, NaN, так что

    В другом примере, когда значение было преобразовано в тип данных, ранее терявший любую информацию о смещении часового пояса в;

    Значения из разных примитивных пространств данных искусственно делаются неравными в отношении равенства, определенном здесь, даже если в противном случае они считались бы равными.

    A и B равны тогда и только тогда, когда их длины одинаковы, а их элементы попарно равны. Список одной длины, содержащий значение V1 и атомарное значение V2, равен тогда и только тогда, когда V1 равен V2.

    Для целей этой спецификации существует одно отношение равенства для всех значений всех типов данных (объединение индивидуальных равенств различных типов данных, если отношения рассматриваются как наборы упорядоченных пар). х = у и х ≠ у

    2. 2. 3 Заказ

    Отношение порядка предписано для некоторых типов данных, которые будут использоваться при проверке верхней и нижней границ. . [Определение. ]. Два несовместимых значения.

    При принятии решений, связанных с порядком, отношение порядка используется в сочетании с равенством.

    Это отношение меньшего порядка обозначается '' (и обратное ему '>'), слабый порядок - '' (и его обратное - ''), а результирующее отношение - '>', все из которых используются

    Запись. Слабый порядок «меньше или равно» означает «меньше чем» или «равно», и очевидно, что есть что. )

    Пространства значений примитивных типов данных не пересекаются для целей этой спецификации, даже если считается, что представляемые ими абстракции имеют общие значения.

    Запись. В зависимости от контекста сравнение значений из разных типов данных может быть ошибкой или нет.

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

    Наоборот, указание верхней или нижней границы неправильного примитивного типа данных (и, следовательно, значений типа данных, которые он должен ограничивать) всегда является ошибкой. Это результат правил соответствия простых определений типов, верхних и нижних границ и перечисляемых значений. должен быть взят из пространства значений типа данных, что обязательно означает из того же типа данных.

    Сравнение значений в контексте выражения XPath (например,. g. g. в утверждении или в правилах присвоения условного типа) может вызвать динамическую ошибку при оценке выражения XPath;

    2. 3 Лексическое отображение и лексическое пространство

    [Определение. ]

    [Определение. ]

    [Определение. ]

    Запись. Определенная здесь карта из типов данных в, но не в них. . Типы данных включают «невыразимые» значения, для которых в этой спецификации нет лексического представления.

    Это (общая) функция для всего (а не просто для) для и атомарных типов данных. . Каждый член сопоставляется с некоторым членом, и каждое значение сопоставляется с некоторым членом.

    Для типов данных не всегда является функцией, потому что одно и то же значение может отображаться на разные значения в разных типах членов. Является функцией для типов данных тогда и только тогда, когда список является функцией

    [Определение. ]. Этот термин используется взаимозаменяемо как для последовательностей символов, которые являются членами определенного семейства, так и для тех, которые не являются.

    Если деривация вводит значение фасета (либо новое значение, либо фасет, определенный реализацией), соответствующее преобразование строки символов, если оно вообще изменило строку, может предотвратить применение к этой строке производного типа данных. . e. , они не находятся в диапазоне преобразования фасета) всегда удаляются из производных типов данных

    Запись. Важно понимать, что в контексте допустимости схемы XML существуют преобразования строки входных символов (управляемые фасетом и любыми фасетами, определенными реализацией), которые приводят к желаемому результату. .

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

    Запись. Это может произойти через тот или иной аспект или через описанный выше аспект.

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

    Запись. В настоящее время нет аспектов, оказывающих такое влияние

    Например, «100» и «1. 0E2' - это два разных типа данных, которые представляют одно и то же значение.

    2. 3. 1 каноническое сопоставление

    Хотя типы данных, определенные в этой спецификации, часто имеют одно значение (т. e. , значение каждого типа данных обозначается единичным в своем), но это не всегда так.

    [Определение. ]. .

    [Определение. ] .

    недоступны для контекстно-зависимых типов данных (т. e. e. , сопоставления, в которых значение a зависит от контекста, в котором оно встречается, или строки символов, которые могут быть или не быть допустимыми в зависимости от контекста)

    Запись. предусмотрены для использования другими приложениями, где это возможно; .

    2. 4 различия типов данных

    2. 4. 1
    2. 4. 1. 1
    2. 4. 1. 2
    2. 4. 1. 3
    2. 4. 2
    2. 4. 2. 1
    2. 4. 2. 2
    2. 4. 2. 3
    2. 4. 3
    2. 4. 4

    Полезно классифицировать типы данных, определенные в этой спецификации, по разным измерениям, определяя термины, которые можно использовать для характеристики типов данных и определяющих их элементов.

    2. 4. 1 Атомный против. Список против. Объединение типов данных

    Для начала мы различаем и типы данных

    [Определение. ]

    • [Определение. ]

    • [Определение. ]. Значения в списке извлекаются из некоторого типа данных (или набора типов данных), который является типом данных списка.

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

    • [Определение. ]

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

    Например, один токен from находится в пространстве значений типа данных, тогда как последовательность таких токенов находится в пространстве значений типа данных.

    2. 4. 1. 1 атомарные типы данных

    Тип данных состоит из набора «атомарных» или элементарных значений.

    Запись. Атомарные значения иногда рассматриваются и описываются как «неразложимые», но значения в нескольких определенных здесь типах данных имеют внутреннюю структуру, которая используется для определения того, удовлетворяют ли конкретные значения различным ограничениям (например,. g. g. верхняя и нижняя границы типа данных). Другие спецификации, которые используют определенные здесь типы данных, могут определять операции, которые присваивают внутреннюю структуру значениям и раскрывают или воздействуют на эту структуру.

    Тип данных — это набор, внутренняя структура которого уникальна для рассматриваемого типа данных.

    Есть один тип данных () и несколько типов данных, которые имеют. Ни один тип данных не может иметь в качестве.

    2. 4. 1. 2 списка типов данных

    Типы данных всегда являются производными от другого типа; . . Тип данных — это набор последовательностей конечной длины из нуля или более значений, где каждое значение берется из и не имеет пробелов. Тип данных — это набор, каждый из которых представляет собой разделенную пробелом последовательность

    [Определение. ]. должен быть.

    Пример

    <simpleType name='sizes'>
      <list itemType='decimal'/>
    </simpleType>
    

    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    

    Тип данных может быть обычным или типом данных, допускающим использование пробелов (например, или), или любым из них, допускающим использование пробелов. Поскольку элементы разделяются пробелами перед сопоставлением со значениями, в элементе никогда не будет пробелов, даже если тип элемента теоретически допускает это.

    Пример

    <simpleType name='listOfString'>
      <list itemType='string'/>
    </simpleType>
    

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    0

    В предыдущем примере значение элемента someElement равно 18, а не 3.

    Следующие правила применяются, когда тип данных определяется типом данных.

    Длина каждого из и измеряется количеством элементов списка.

    Для типов данных состоит из разделенных пробелом. . Точно так же перечисляемые значения сравниваются со всем , а не с отдельными элементами списка, и применяются также ко всему. Списки идентичны тогда и только тогда, когда их длины одинаковы, а их элементы попарно идентичны; . И список одной длины, элемент которого является атомарным значением V1, равен или идентичен списку, элемент которого является атомарным значением V2, тогда и только тогда, когда V1 равен или идентичен V2.

    Пример

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    1

    Используя, тип данных сопоставляет каждое значение с разделенной пробелом конкатенацией всех элементов в значении (по порядку).

    2. 4. 1. 3 типа данных Union

    Типы Union могут быть определены двумя способами. Когда тип объединения by, его и являются «упорядоченными объединениями» его, и.

    Следует отметить, что объединение, как определено, не всегда является функцией. Данное может отображаться на одно или несколько значений разных типов данных, и может быть неясно, какое значение следует предпочесть в данном контексте. Когда типы данных, определенные здесь, используются в контексте, атрибут

    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    8, определенный в разделе, может использоваться для указания того, какое значение a, которое является содержимым элемента, должно отображаться на. Другие правила (например, правила приведения типов) могут использоваться в других контекстах, чтобы определить, какое значение следует использовать.

    Когда один тип объединения определяется другим, его и являются его подмножествами, и.

    Типы данных всегда отличаются друг от друга; . . В настоящее время нет

    Пример

    Сама схема in XML является прототипом типа. Как показано ниже, это объединение nonNegativeInteger и перечисления с единственным членом, строкой "unbounded. "

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    3

    Тип может включать любое количество (ноль или более) обычных или

    [Определение. ]

    Запись. Типы членов объединения — это простые определения типов, указанные в свойстве, когда типы данных представлены с использованием компонентов схемы XSD, как описано в разделе

    [Определение. ]. Если U является a, то (a) он находится в транзитивном членстве U, и (b) для любых типов данных T1 и T2, если T1 находится в транзитивном членстве U, а T2 является одним из T1, то T2 также находится в транзитивном членстве U

    А не должен содержать ни тот, ни какой-либо другой тип данных или из.

    [Определение. ]

    [Определение. ]. Говорят, что эта последовательность типов данных находится между M и U. Когда в контексте указаны U и M, типы данных в последовательности называются промежуточными объединениями. Множество промежуточных объединений является пустым множеством, когда M является одним из U

    [Определение. ]. [Определение. ]. Это активный основной член профсоюза.

    Порядок, в котором указаны в определении (то есть порядок элементов simpleType>, дочерних элементов union>, или порядок элементов s в атрибуте

    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    9 в случае типов данных, определенных в документе схемы) имеет значение. Во время проверки значение элемента или атрибута проверяется в том порядке, в котором они появляются в определении, пока не будет найдено совпадение.

    Пример

    Например, учитывая приведенное ниже определение, первый экземпляр элемента size> проверяется как, второй и третий как

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    5

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    6

    Каждое значение типа данных сопоставляется с этим значением, полученным с использованием первого значения, в пространстве значений которого оно находится.

    Следующие правила применяются, когда тип данных определяется типом данных.

    2. 4. 2 Особые против. Примитив против. Обычные типы данных

    После этого мы различаем и (или) типы данных

    • [Определение. ]. Они уникальны благодаря своему положению в иерархии типов.

    • [Определение. ]. Все типы данных имеют свои, но их и нужно указывать в прозе; .

      Примечание. Соответствующие процессоры, как указано в другом месте, должны поддерживать все примитивные типы данных, определенные в этой спецификации; .

      Процессоры могут поддерживать десятичный тип данных с плавающей запятой, указанный, например, в.

    • [Определение. ]. .

    В этой спецификации, например, тип данных основан на четко определенной математической концепции, которая не определена в терминах других типов данных, в то время как из более общего типа данных.

    2. 4. 2. 1 ограничение на основе аспектов

    [Определение. ]. Тип должен быть либо a, либо типом данных.

    2. 4. 2. 2 Строительство по списку

    Тип данных может быть получен из другого типа данных (его) путем построения a из последовательностей конечной длины из нуля или более значений его. . Типы данных имеют это как их. Следует отметить, что, поскольку и любого типа данных обязательно являются подмножествами и, любой тип данных как а является своего базового типа.

    2. 4. 2. 3 Строительство Союзом

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

    2. 4. 3 Определение, вывод, ограничение и дизайн

    Хотя определение, вывод, ограничение и построение концептуально различны, на практике они часто выполняются одними и теми же механизмами.

    Под «определением» мы подразумеваем явную идентификацию релевантных свойств типа данных, в частности его и.

    Эта спецификация определяет свойства и стандартные типы данных. A присутствует в каждой допустимой схеме для каждого из этих типов данных;

    Запись. Свойства любого типа данных приведены в документации к рассматриваемой реализации, а не здесь. В качестве альтернативы примитивный тип данных, который не указан в этом документе, может быть указан в отдельном документе, который не привязан к конкретной реализации;

    Достаточно для всех других типов данных. Свойства типа данных могут быть выведены из типов данных и свойств, если таковые имеются. Вот как можно определить все типы данных

    Связь типа данных с его типом или с его типом и т. д. называется «порождением». '

    За исключением случаев, когда он связан с другим типом данных, его базовый тип. Базовые типы включают и

    [Определение. ]

    Запись. Предыдущее не исключает того, что for имеет значение. . . )

    В более общем смысле,

    Если и только если выполняется одно из следующих условий, тип данных R является производным от другого типа данных B.

    • R представлен B

    • Существует тип данных X, который является типом R и получен из B.

    Тип данных не должен быть от самого себя. Другими словами, отношение базового типа должно быть ациклическим.

    В результате предыдущего, каждый тип данных, кроме

    Поскольку каждый тип данных имеет ровно один тип данных, кроме прямо или косвенно производных, отношение организует все простые типы в древовидную структуру, известную как иерархия производных.

    Определение типа данных, чьи и являются подмножествами его подмножеств, подразумевается под «ограничением». '

    Формально, когда один тип данных R является ограничением другого типа данных B,

    • R является подмножеством B, и

    • является подмножеством B

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

    Термин «конструкция» относится к процессу создания типа данных путем определения его в терминах другого

    [Определение. ]. Эти три формы часто упоминаются как "", "by" и "by" соответственно. Типы данных, построенные таким образом, могут быть полностью поняты (для целей системы типов) с точки зрения (а) свойств типа(ов) данных, из которых они созданы, и (б) их собственных свойств. . Это отличает типы данных от типов данных и , которые можно понять только из документации (в частности, их описания в других местах этой спецификации или, например, в соответствующей документации по конкретной реализации). Каждый тип данных и каждый тип данных.

    2. 4. 4 Встроенная vs. Пользовательские типы данных

    • [Определение. ]

    • [Определение. ]

    Типы данных спроектированы так, чтобы быть доступными автоматически всякий раз, когда эта спецификация реализуется или используется, будь то сама по себе или как часть базового языка. Типы данных автоматически включаются в каждую допустимую схему на языке, определенном. Другие базовые языки должны указывать, что все типы данных, описанные здесь как встроенные, доступны по умолчанию; . may specify that additional datatypes are automatically made available.

    Запись. Типы данных, независимо от того, могут ли они включаться автоматически в любые схемы, обрабатываемые этой реализацией время от времени;

    Эта спецификация не определяет механизм предоставления типов данных для использования; . должен определяться основным языком.

    [Определение. ]

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

    1 Произошла ошибка при указании имени типа данных.

    2 Тип данных — это тип данных, который не был сделан доступным с помощью определенных средств основного языка (например,. g. g. потому что соответствующий документ схемы не был сверен).

    3 Тип данных не поддерживается реализацией.

    4 Тип данных — это тип данных, который автоматически предоставляется некоторыми реализациями, но не используемой реализацией.

    5 Тип данных — это тип данных с базовым типом

    Эти случаи, вероятно, будут неразличимы с точки зрения реализации

    Запись. Упомянутые здесь типы данных называются в терминологии

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

    3 интегрированных типа данных и их определения

    Как удалить элемент из XML-документа в C#?

    Диаграмма, иллюстрирующая отношения наследования иерархии типов. (Подробное объяснение схемы доступно отдельно. ). )

    Каждый встроенный тип данных, определенный в этой спецификации, может быть уникально адресован с использованием следующей ссылки URI.

    1. Базовый URI — это URI пространства имен для схемы XML.

    2. Имя типа данных является идентификатором фрагмента

    Например, URI используется для обращения к типу данных

    • <simpleType name='listOfString'>
        <list itemType='string'/>
      </simpleType>
      
      0

    Кроме того, каждый элемент определения фасета может быть уникально адресован с использованием следующего URI.

    1. Базовый URI — это URI пространства имен для схемы XML.

    2. Имя фасета является идентификатором фрагмента

    Например, URI используется для обращения к аспекту maxInclusive.

    • <simpleType name='listOfString'>
        <list itemType='string'/>
      </simpleType>
      
      1

    Кроме того, использование каждого аспекта во встроенной функции может быть уникально адресовано с использованием URI, построенного следующим образом.

    1. Базовый URI — это URI пространства имен для схемы XML.

    2. Идентификатор фрагмента — это имя, за которым следует точка ('

      <simpleType name='listOfString'>
        <list itemType='string'/>
      </simpleType>
      
      2'), а затем имя фасета.

    Например, URI используется для решения проблемы использования фасета maxInclusive в определении int.

    • <simpleType name='listOfString'>
        <list itemType='string'/>
      </simpleType>
      
      3

    3. 1 Вопросы пространства имен

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

    • http. //www. w3. org/2001/XMLSchema

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

    • http. //www. w3. org/2001/XMLSchema-типы данных

    Каждый тип данных также может быть связан с определенным пространством имен. (См. в. )

    3. 2 специальных встроенных типа данных

    3. 2. 1
    3. 2. 1. 1
    3. 2. 1. 2
    3. 2. 1. 3
    3. 2. 2
    3. 2. 2. 1
    3. 2. 2. 2
    3. 2. 2. 3

    Два типа данных в верхней части иерархии простых типов — это и

    3. 2. 1 любой простой тип

    anySimpleType — это специализация anyType.

    Для получения дополнительной информации и его представления в качестве.

    3. 2. 1. 1 место для значений

    of - это множество всех и всех списков конечной длины с нулем или более элементов.

    Запись. В результате этого определения, а также определения в следующем разделе, некоторые значения этого типа данных не могут использовать определенные этой спецификацией. То есть термины «потенциальный» и «изреченный» или «именуемый» различаются для этого типа данных. В этой спецификации нет операционной разницы между потенциальным и выразимым, и это различие в основном представляет формальный интерес. Поскольку некоторые базовые языки для определенной здесь системы типов могут разрешать средства построения значений, отличные от отображения из a, различие может быть важным в некоторых контекстах. Если не указано иное, этот термин следует понимать как означающий потенциал в этих контекстах.

    3. 2. 1. 2 Лексическое отображение

    Это множество всех последовательностей конечной длины из нуля или более s (как определено в ), которые могут быть получены. . Это равносильно объединению всех и всех возможных типов данных.

    Это вопрос о том, поддерживает ли реализация этой спецификации производство из или производство из обоих. Видеть

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

    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    8, определенный в разделе, может использоваться для указания того, какое значение a, которое является содержимым элемента, должно отображаться на. Другие правила (например, правила приведения типов) могут использоваться в других контекстах, чтобы определить, какое значение следует использовать.

    3. 2. 1. 3 аспекта

    При определении нового типа данных нельзя использовать в качестве. В результате нет прямого применения к.

    3. 2. 2 любой атомный тип

    [Определение. ]. and of anyAtomicType являются объединением всех типов данных и, а anyAtomicType является их объединением.

    Для получения дополнительной информации и его представления в качестве.

    3. 2. 2. 1 место для значений

    of — это объединение всех типов данных, определенных здесь или представленных как

    3. 2. 2. 2 Лексическое отображение

    Это множество всех последовательностей конечной длины из нуля или более s (как определено в ), которые могут быть получены. . Это то же самое, что объединение всех типов данных

    Это вопрос о том, поддерживает ли реализация этой спецификации производство из или производство из обоих. Видеть

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

    <cerealSizes xsi:type='sizes'> 8 10.5 12 </cerealSizes>
    
    8, определенный в разделе, может использоваться для указания того, какое значение a, которое является содержимым элемента, должно отображаться на. Другие правила (например, правила приведения типов) могут использоваться в других контекстах, чтобы определить, какое значение следует использовать.

    3. 2. 2. 3 аспекта

    При определении нового типа данных нельзя использовать в качестве. В результате нет прямого применения к.

    3. 3 примитивных типа данных

    3. 3. 1
    3. 3. 1. 1
    3. 3. 1. 2
    3. 3. 1. 3
    3. 3. 1. 4
    3. 3. 2
    3. 3. 2. 1
    3. 3. 2. 2
    3. 3. 2. 3
    3. 3. 3
    3. 3. 3. 1
    3. 3. 3. 2
    3. 3. 3. 3
    3. 3. 4
    3. 3. 4. 1
    3. 3. 4. 2
    3. 3. 4. 3
    3. 3. 5
    3. 3. 5. 1
    3. 3. 5. 2
    3. 3. 5. 3
    3. 3. 6
    3. 3. 6. 1
    3. 3. 6. 2
    3. 3. 6. 3
    3. 3. 6. 4
    3. 3. 7
    3. 3. 7. 1
    3. 3. 7. 2
    3. 3. 7. 3
    3. 3. 7. 4
    3. 3. 8
    3. 3. 8. 1
    3. 3. 8. 2
    3. 3. 8. 3
    3. 3. 9
    3. 3. 9. 1
    3. 3. 9. 2
    3. 3. 9. 3
    3. 3. 10
    3. 3. 10. 1
    3. 3. 10. 2
    3. 3. 10. 3
    3. 3. 11
    3. 3. 11. 1
    3. 3. 11. 2
    3. 3. 11. 3
    3. 3. 12
    3. 3. 12. 1
    3. 3. 12. 2
    3. 3. 12. 3
    3. 3. 13
    3. 3. 13. 1
    3. 3. 13. 2
    3. 3. 13. 3
    3. 3. 14
    3. 3. 14. 1
    3. 3. 14. 2
    3. 3. 14. 3
    3. 3. 15
    3. 3. 15. 1
    3. 3. 15. 2
    3. 3. 15. 3
    3. 3. 16
    3. 3. 16. 1
    3. 3. 16. 2
    3. 3. 16. 3
    3. 3. 17
    3. 3. 17. 1
    3. 3. 17. 2
    3. 3. 17. 3
    3. 3. 18
    3. 3. 18. 1
    3. 3. 19
    3. 3. 19. 1

    Типы данных этой спецификации описаны ниже.

    Соответствующие процессоры должны не поддерживать ли они типы данных, определенные в этой спецификации; . Эта спецификация может быть пересмотрена для включения новых типов данных.

    Примечание. Процессоры могут поддерживать десятичный тип данных с плавающей запятой, указанный, например, в.

    3. 3. 1 струна

    [Определение. ]

    Запись. Многие человеческие языки имеют системы записи, которые полагаются на дочерние элементы для управления такими вещами, как двунаправленное форматирование или рубиновые аннотации (см. и Раздел 8). 2. 4 из ). В таких случаях следует рассматривать сложный тип со смешанным содержанием. Раздел 5 содержит дополнительную информацию. 5 из

    3. 3. 1. 1 место для значений

    of - это набор последовательностей конечной длины из нуля или более s (как определено в ), из которых продукция состоит из. . А — атомарная единица связи;

    Это вопрос о том, поддерживает ли реализация этой спецификации производство из или производство из обоих. Видеть

    Равенство для тождества. Порядок не установлен

    Запись. Как указано в, отсутствие отношения порядка в этой спецификации не мешает другим приложениям обрабатывать строки как упорядоченные.

    3. 3. 1. 2 Лексическое отображение

    of - это набор последовательностей конечной длины из нуля или более s (как определено в ), из которых продукция состоит из.

    Лексическое пространство

    [1]   stringRep . = * 

    */ (как определено в)

    Это вопрос о том, поддерживает ли реализация этой спецификации производство из или производство из обоих. Видеть

    for и the оба являются подмножествами функции тождества

    3. 3. 1. 3 аспекта

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = сохранить

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = ложь
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 1. 4 производных типа данных

    Следующий тип данных получен из

    3. 3. 2 логическое значение

    [Определение. ]

    3. 3. 2. 1 место для значений

    имеет логику двух значений. {правда, ложь}

    3. 3. 2. 2 Лексическое отображение

    лексическое пространство состоит из четырех слов.

    Лексическое пространство

    [2]   booleanRep . = '

    <simpleType name='listOfString'>
      <list itemType='string'/>
    </simpleType>
    
    6'. «
    <simpleType name='listOfString'>
      <list itemType='string'/>
    </simpleType>
    
    7». «
    <simpleType name='listOfString'>
      <list itemType='string'/>
    </simpleType>
    
    8». "
    <simpleType name='listOfString'>
      <list itemType='string'/>
    </simpleType>
    
    9"

    Слово для ;

    3. 3. 2. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = ложь
    • = ложь
    • = конечный
    • = ложь

    3. 3. 3 десятичных

    [Определение. ]. Десятичная система — это набор чисел, полученных делением целого числа на неотрицательную степень числа десять, i. e. e. , как выражается я. Это пространство значений не отражает точности; . Число 0 не отличается от числа 2. 00. Отношение порядка для десятичных чисел является подмножеством отношения порядка для действительных чисел.

    Запись. См. Decimal Datatypes для десятичного типа данных, значения которого отражают точность.

    3. 3. 3. 1 лексическое сопоставление

    decimal имеет лексическое представление, состоящее из непустой последовательности десятичных цифр конечной длины (#x30–#x39), разделенных точкой в ​​качестве десятичного индикатора. Например. «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    00», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    01», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    02», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    03»

    Лексическое представление

    [3]   decimalLexicalRep . знак равно.

    Десятичное лексическое пространство — это набор лексических представлений, которые соответствуют приведенной выше грамматике или (эквивалентно) регулярному выражению.

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    04

    Отображение лексических представлений в значения является стандартным для десятичных чисел;

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

    Формальное отображение значений в приведено в

    3. 3. 3. 2 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = всего
    • = ложь
    • = счетно бесконечный
    • = правда

    3. 3. 3. 3 типа данных на основе десятичного числа

    Следующий тип данных получен из

    3. 3. 4 поплавка

    [Определение. ]. .

    3. 3. 4. 1 место для значений

    содержит все ненулевые числа.

    Запись. Как объяснено ниже, значение notANumber равно «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    05». Соответственно, в английском тексте мы обычно используем «NaN» для обозначения этого значения. Точно так же мы используем «INF» и «-INF» для обозначения двух значений положительной бесконечности и отрицательной бесконечности, а «0» и «-0» для обозначения положительных и отрицательных нулей.

    Равенство и порядок определяются следующим образом

    • Равенство — это тождество, за исключением того, что 0 = −0 (хотя они и не идентичны) и NaN ≠ NaN (хотя NaN, конечно, идентичен самому себе)

      Таким образом, 0 и -0 эквивалентны для целей перечисления и ограничений идентичности, а также для минимальных и максимальных значений.

    • Для основных значений отношение порядка для числа с плавающей запятой является отношением порядка для рациональных чисел. INF больше всех других значений, отличных от NaN; . NaN имеет любое значение в самом включении. 0 и -0 больше всех отрицательных чисел и меньше всех положительных чисел

    Запись. Любое значение со значением, используемым для четырех ограничивающих фасетов (, , и ) будет исключено из результирующего ограниченного. В частности, когда NaN используется в качестве значения фасета для ограничивающего фасета, поскольку с ним нет значений, результатом является пустое. Если для ограничивающего фасета используется какое-либо другое значение, NaN будет исключен из результирующего ограничения;

    Запись. Схема 1. 0 версия этого типа данных не различала 0 и -0, а NaN был равен самому себе. Изменения были внесены, чтобы сделать тип данных более точно отражающим

    3. 3. 4. 2 Лексическое отображение

    Это набор всех десятичных цифр с десятичной точкой или без нее, цифр в научной (экспоненциальной) записи, а также «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    07», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    08», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    09» и «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    05».

    Лексическое пространство

    [4]   floatRep . знак равно.  .  .

    Результат эквивалентен этому регулярному выражению (после удаления пробелов из регулярного выражения)

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    11

    Тип данных предназначен для реализации для обработки схемы типа данных с плавающей запятой одинарной точности. Эта спецификация не определяет конкретных, но предписывает требования к любому используемому. Любая функция, которая отображает только что описанное на , является функцией, удовлетворяет требованиям и правильно обрабатывает отображение литералов '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    07', '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    05' и т. д. , до , удовлетворяет требованиям соответствия этой спецификации

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

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

    Запись. Схема 1. 0 версия этого типа данных не позволяла использовать алгоритмы округления, результаты которых отличались от

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

    3. 3. 4. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = правда
    • = конечный
    • = правда

    3. 3. 5 двухместных

    [Определение. ]  Тип данных double основан на 64-битном типе данных с плавающей запятой двойной точности IEEE.   Каждый тип данных с плавающей запятой имеет пространство значений, которое является подмножеством рациональных чисел.

    Запись. Единственными существенными различиями между float и double являются три определяющие константы 53 (против 24), -1074 (против -149) и 971 (против 104).

    3. 3. 5. 1 место для значений

    Число содержит ненулевые числа m × 2e , где m – целое число, абсолютное значение которого меньше 253, а e – целое число от −1074 до 971 включительно.

    Запись. Как объяснено ниже, значение notANumber равно «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    05». Соответственно, в английском тексте мы обычно используем «NaN» для обозначения этого значения. Точно так же мы используем «INF» и «-INF» для обозначения двух значений положительной бесконечности и отрицательной бесконечности, а «0» и «-0» для обозначения положительных и отрицательных нулей.

    Равенство и порядок определяются следующим образом

    • Равенство — это тождество, за исключением того, что 0 = −0 (хотя они и не идентичны) и NaN ≠ NaN (хотя NaN, конечно, идентичен самому себе)

      Таким образом, 0 и -0 эквивалентны для целей перечисления, ограничений идентичности, а также минимального и максимального значений.

    • Для основных значений отношение порядка для двойного числа является отношением порядка для рациональных чисел. INF больше всех других значений, отличных от NaN; . NaN имеет любое значение в самом включении. 0 и -0 больше всех отрицательных чисел и меньше всех положительных чисел

    Запись. Любое значение со значением, используемым для четырех ограничивающих фасетов (, , и ) будет исключено из результирующего ограниченного. В частности, когда NaN используется в качестве значения фасета для ограничивающего фасета, поскольку с ним нет значений, результатом является пустое. Если для ограничивающего фасета используется какое-либо другое значение, NaN будет исключен из результирующего ограничения;

    Запись. Схема 1. 0 версия этого типа данных не различала 0 и -0, а NaN был равен самому себе. Изменения были внесены, чтобы сделать тип данных более точно отражающим

    3. 3. 5. 2 Лексическое отображение

    Это набор всех десятичных цифр с десятичной точкой или без нее, цифр в научной (экспоненциальной) записи, а также «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    07», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    08», «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    09» и «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    05».

    Лексическое пространство

    [5]   doubleRep . знак равно.  .  .

    Результат эквивалентен этому регулярному выражению (после удаления пробелов из выражения)

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    30

    Тип данных предназначен для реализации для обработки схемы типа данных с плавающей запятой двойной точности. Эта спецификация не определяет конкретных, но предписывает требования к любому используемому. Любая функция, которая отображает только что описанное на , является функцией, удовлетворяет требованиям и правильно обрабатывает отображение литералов '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    07', '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    05' и т. д. , до , удовлетворяет требованиям соответствия этой спецификации

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

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

    Запись. Схема 1. 0 версия этого типа данных не позволяла использовать алгоритмы округления, результаты которых отличались от

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

    3. 3. 5. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = правда
    • = конечный
    • = правда

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

    [Определение. ]  duration – это тип данных, представляющий продолжительность времени.   Концепция фиксируемой длительности взята из концепции , в частности длительности без фиксированных конечных точек. Например, «15 дней» (наиболее распространенное лексическое представление которого — «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    33») — это значение; . может обеспечивать операции сложения и вычитания между значениями и между парами /значение и может быть результатом вычитания значений. Однако для обработки XML-схемы требуется только дополнение, которое определяется в функции.

    3. 3. 6. 1 место для значений

    Значения длительности можно моделировать как кортежи с двумя свойствами. Каждое значение состоит из целого числа месяцев и десятичного числа секунд. Значение не должно быть отрицательным, если значение положительное, и не должно .

    Свойства значений

    · месяцев ·

    · секунд ·

    значение; . must not be negative if is positive, and must not be positive if is negative.

    частично заказано. Равенство определяется через равенство ; . В частности, равенство или порядок двух значений определяется путем добавления каждого из пары к каждому из следующих четырех значений.
    • 1696-09-01T00. 00. 00Z

    • 1697-02-01T00. 00. 00Z

    • 1903-03-01T00. 00. 00Z

    • 1903-07-01T00. 00. 00Z

    Если все четыре результирующие пары значений упорядочены одинаково (меньше, равно или больше), то исходная пара значений упорядочена таким же образом;

    Запись. Эти четыре значения выбраны таким образом, чтобы максимизировать возможные различия в результатах, которые могут возникнуть, например, разницу при добавлении P1M и P30D. 1697-02-01T00. 00. 00Z + P1M 1903-03-01T00. 00. 00Z + P30D, так что P1M P30D. Если два значения упорядочены одинаково при добавлении к каждому из этих четырех значений, они сохранят тот же порядок при добавлении к любым другим значениям. Следовательно, два значения несравнимы тогда и только тогда, когда они могут привести к разным порядкам при добавлении к любому значению.

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

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

    Запись. Существует множество способов реализации, некоторые из которых не основывают реализацию на двухкомпонентной модели. Эта спецификация не предписывает какую-либо конкретную реализацию, если видимые результаты изоморфны описанным здесь.

    Запись. См. примечания о соответствии в , которые относятся к этому типу данных.

    3. 3. 6. 2 Лексическое отображение

    Они более или менее основаны на шаблоне

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    34

    Точнее, это набор строк символов, которые удовлетворяют следующим условиям:

    Фрагменты лексического представления

    [6]   duYearFrag . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    35'

    [7]   duMonthFrag . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    36'

    [8]   duDayFrag . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    37'

    [9]   duHourFrag . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    38'

    [10]   duMinuteFrag . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    36'

    [11]   duSecondFrag . знак равно. ) '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    50'

    [12]   duYearMonthFrag . знак равно.

    [13]   duTimeFrag . = '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    51' (( ? ?). ( ?). )

    [14]   duDayTimeFrag . знак равно.

    Лексическое представление

    [15]   durationLexicalRep . = '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'? . )

    Таким образом, a состоит из одного или нескольких из a, , , , и/или по порядку с буквами «__

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    53» и «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    51» (и, возможно, «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52»), где это уместно.

    Язык, принятый в производстве, представляет собой набор строк, которые удовлетворяют всем следующим трем регулярным выражениям.

    • Выражение

      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      57

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

    • Выражение "

      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      58" соответствует только строкам, в которых встречается хотя бы одно поле.

    • Выражение «

      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      59» соответствует только строкам, в которых «
      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      51» не является последним символом, поэтому, если появляется «
      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      51», за ним что-то следует. Первое правило гарантирует, что после «
      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      51» будет час, минута или секундное поле.

    Пересечение этих трех регулярных выражений эквивалентно следующему (после удаления пробела, вставленного здесь для удобочитаемости):

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    0

    для

    ибо есть

    3. 3. 6. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 6. 4 связанных типа данных

    Следующие типы данных взяты из

    3. 3. 7 ДатаВремя

    представляет моменты времени, необязательно отмеченные смещением определенного часового пояса. Значения, представляющие один и тот же момент, но имеющие разные смещения часовых поясов, равны, но не идентичны.

    3. 3. 7. 1 место для значений

    использует , без каких-либо свойств, за исключением того, что разрешено отсутствовать. Имущество остается

    Запись. В версии 1. 0 этой спецификации свойство не может иметь нулевое значение. Год до 1 года в пролептическом григорианском календаре, традиционно обозначаемый как 1 г. до н.э. или 1 г. до н.э., был представлен значением -1, 2 г. до н.э. - -2 и так далее. Конечно, многие, а возможно, и большинство ссылок на 1 г. до н. э. (или 1 г. до н. э.) на самом деле относятся не к году пролептического григорианского календаря, а к году юлианского или «старого стиля» календаря;

    В этой версии этой спецификации внесены два изменения, чтобы согласовать существующее использование. Во-первых, разрешено иметь нулевое значение. Во-вторых, соответственно меняется интерпретация ценностей. значение нуля представляет 1 BCE, -1 представляет 2 BCE и т. д. Это представление упрощает интервальную арифметику и вычисление високосного года для дат до нашей эры (возможно, поэтому астрономы и другие лица, заинтересованные в таких вычислениях с пролептическим григорианским календарем, приняли его), и согласуется с текущим изданием

    Обратите внимание, что 1 г. до н.э., 5 г. до н.э. и т. д. (годы 0000, -0004 и т. д.). в определенном здесь лексическом представлении) являются високосными годами в пролептическом григорианском календаре, используемом для определенных здесь типов данных даты/времени. Версия 1. 0 этой спецификации было неясно, как обращаться с високосными годами до нашей эры. Если в существующих схемах или данных указаны даты 29 февраля для любых лет до нашей эры, то некоторые значения, дающие дату 29 февраля, которые были действительны при правдоподобной интерпретации XSD 1. 0 будет недействительным в соответствии с этой спецификацией, а некоторые недействительные будут действительными. За этим возможным исключением схемы и данные, действительные при старой интерпретации, остаются действительными и при новой интерпретации.

    Ограничение. Значения дня месяца

    Значение должно быть не более 30, если оно является одним из 4, 6, 9 или 11; .

    Запись. См. примечание о соответствии, в котором применяется к значениям и этого типа данных.

    Равенство и порядок прописаны в. значения упорядочены по их значению

    Запись. Поскольку порядок значения, имеющего относительно другого значения, отсутствующего, определяется путем вменения смещения часового пояса обоих +14. 00 и −14. 00 к значению без смещения часового пояса, будет много таких комбинаций, потому что два вмененных смещения часового пояса дают разные порядки.

    Хотя и другие типы, связанные с датами и временем, имеют только частичный порядок, типы данных, производные от, могут иметь общий порядок, если они ограничены (например,. g. с использованием фасета) к подмножеству значений со смещением часового пояса или подмножеству значений без него. Аналогичные ограничения для других типов, связанных с датой и временем, будут аналогичным образом создавать полностью упорядоченные подтипы. Обратите внимание, однако, что такие ограничения не влияют на значение, показанное для данного , в фасете

    Запись. Порядок и равенство по сути такие же, как и в версии 1 в этой версии этой спецификации. 0. Однако, поскольку значения теперь различают смещения часовых поясов, одинаковые значения с разными s не идентичны, и значения с крайними s больше не могут быть равны любому значению с меньшим

    3. 3. 7. 2 Лексическое отображение

    Лексические представления for следующие:

    Лексическое пространство

    [16]   dateTimeLexicalRep . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'  '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'  '__
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    51' (( '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    66'  '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    66' ). ) ? . Представления дня месяца

    Ограничение. Представления дня месяца

    Внутри a не должно начинаться с цифры '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    68' или быть '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    69', если только значение, которому оно будет сопоставлено, не . Значения дня месяца"), приведенные выше.

    В таких представлениях
    • представляет собой число, состоящее по крайней мере из четырех десятичных цифр, которому необязательно предшествует знак минус; . Он представляет собой значение

    • Последующие «

      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      52», «
      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      51» и «
      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      66» разделяют различные цифры.

    • , , , и — числа, состоящие ровно из двух десятичных цифр. Они представляют значения , , и соответственно

    • это число, состоящее ровно из двух десятичных цифр или двух десятичных цифр, десятичной точки и одной или нескольких завершающих цифр. Он представляет собой значение

    • В качестве альтернативы, объединяет символы , , и их разделители для представления полуночи дня, которая является первым моментом следующего дня.

    • , если присутствует, указывает смещение между UTC и местным временем. Смещение часового пояса — это количество минут (выраженное как количество часов и минут), которые добавляются или вычитаются из времени UTC, чтобы получить «местное» время. «

      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      04» — это альтернативное представление смещения часового пояса «
      <memo importance='high'
            date='1999-03-23'>
        <from>Paul V. Biron</from>
        <to>Ashok Malhotra</to>
        <subject>Latest draft</subject>
        <body>
          We need to discuss the latest
          draft <emph>immediately</emph>.
          Either email me at <email>
          mailto:[email protected]</email>
          or call <phone>555-9876</phone>
        </body>
      </memo>
      05», что, конечно же, составляет ноль минут от UTC.

      Например, 2002-10-10T12. 00. 00−05. 00 (полдень 10 октября 2002 г., центральное летнее время, а также восточное стандартное время в США). S. ) равно 2002-10-10T17. 00. 00Z, на пять часов позже, чем 2002-10-10T12. 00. 00Z

      Запись. По большей части эта спецификация принимает различие между «часовым поясом» и «смещением часового пояса», изложенное в. Версия 1. 0 этой спецификации не делал этого различия, но использовал термин «часовой пояс» для информации о смещении часового пояса, связанной с типами данных, связанными с датой и временем. Некоторые следы более раннего использования остаются видимыми в этой и других спецификациях. Имена и являются такими следами;

    Производство эквивалентно этому регулярному выражению после удаления пробела.

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    1Обратите внимание, что ни производство, ни это регулярное выражение сами по себе не налагают ограничение на указанное выше

    для. Это

    3. 3. 7. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = необязательно

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 7. 4 связанных типа данных

    Следующий тип данных получен из

    3. 3. 8 раз

    представляет моменты времени, которые повторяются в один и тот же момент каждого календарного дня или происходят в какой-то произвольный календарный день

    3. 3. 8. 1 место для значений

    использует , с , и должен отсутствовать. останки

    Запись. См. примечание о соответствии, в котором применяется значение этого типа данных.

    Равенство и порядок прописаны в. значения (моменты времени в «произвольный» день) упорядочены с учетом их

    Календарный день (или «местное время») с большим положительным смещением часового пояса начинается раньше, чем тот же календарный день с меньшим (или отрицательным) смещением часового пояса. Поскольку смещения часовых поясов разрешено распространять на 28 часов, период, обозначенный данным календарным днем ​​с одним смещением часового пояса, может быть полностью отделен от периода, обозначенного тем же календарным днем ​​с другим смещением - более ранний день заканчивается . Моменты времени, представленные одним календарным днем, распределены по 52-часовому интервалу, от начала дня в +14. 00 часовой пояс смещен на конец этого дня в -14. 00 смещение часового пояса

    Запись. Относительный порядок двух значений, одно из которых имеет значение «отсутствует», определяется путем вменения смещения часового пояса обоих +14. 00 и −14. 00 к значению без смещения. Будет много таких комбинаций, потому что два вмененных смещения часовых поясов дают разные порядки. Однако для данного значения, не привязанного к часовому поясу, всегда будут значения с часовым поясом на одном или обоих концах 52-часового интервала, которые (поскольку интервал составляет всего 28 часов)

    Некоторые пары литералов, которые в 1. Версия 0 этой спецификации теперь обозначала одно и то же значение (в этой версии) вместо этого обозначала разные значения, поскольку значения теперь включают информацию о смещении часового пояса. Некоторые такие пары, такие как «

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    06» и «
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    07», теперь обозначают равные, хотя и разные значения (поскольку они обозначают одни и те же точки на временной шкале); . 00. 00−03. 00 > 02. 00. 00Z потому что 23. 00. 00−03. 00 в любой день равно 02. 00. 00Z на следующий день)

    3. 3. 8. 2 лексических сопоставления

    Лексические представления для являются «проекциями» тех из , как показано ниже.

    Лексическое пространство

    [17]   timeLexicalRep . = (( '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    66'  '__
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    66' ). ) ?

    Производство эквивалентно этому регулярному выражению после удаления пробела.

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    12

    Обратите внимание, что ни производство, ни это регулярное выражение сами по себе не налагают ограничение на указанное выше

    Слово для ;

    Запись. Карты "

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    13" и "
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    14" в одно и то же значение, а именно в полночь ( = 0 ,  = 0 ,  = 0)

    3. 3. 8. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = необязательно

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 9 дата

    [Определение. ]   date представляет интервалы с максимальной открытостью продолжительностью ровно один день на временной шкале , начиная с момента начала каждого дня и заканчивая моментом начала следующего дня, но не включая его). Для значений без часового пояса верхние открытые интервалы не пересекаются с временной шкалой без часового пояса, по одному в день. Для значений с часовыми поясами интервалы начинаются каждую минуту и, следовательно, перекрываются.

    3. 3. 9. 1 место для значений

    использует , с , и должен отсутствовать. останки

    Ограничение. Значения дня месяца

    Значение должно быть не более 30, если является одним из 4, 6, 9 или 11, и не более 28, если .

    Запись. См. примечание о соответствии, в котором применяется значение этого типа данных.

    Равенство и порядок прописаны в

    Запись. В версии 1. 0 этой спецификации значения не сохраняли смещение часового пояса явно, но для смещений, не слишком далеких от нуля, их смещение часового пояса можно было восстановить на основе первого момента их значения на временной шкале. Сохраняет все смещения часовых поясов

    Некоторые значения с разными смещениями часовых поясов, которые были идентичны в 1. 0 версии этой спецификации, например 2000-01-01+13. 00 и 1999-12-31-11. 00, в этой версии этой спецификации равны (поскольку они начинаются в один и тот же момент на временной шкале), но не идентичны (поскольку они имеют и сохраняют разные смещения часовых поясов). Эта ситуация возникнет для дат только в том случае, если у них смещение часового пояса далеко от нуля и, следовательно, в 1. 0 его «восстанавливаемое смещение часового пояса» отличалось от смещения часового пояса, которое сохраняется в используемом в этой версии этой спецификации

    3. 3. 9. 2 Лексическое отображение

    Лексические представления для являются «проекциями» тех из , как показано ниже.

    Лексическое пространство

    [18]   dateLexicalRep . =  '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'  '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'  ? . Представления дня месяца

    Ограничение. Представления дня месяца

    Внутри a не должно начинаться с цифры '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    68' или быть '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    69', если только значение, которому оно будет сопоставлено, не . Значения дня месяца"), приведенные выше.

    Продукция эквивалентна этому регулярному выражению

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    19

    Обратите внимание, что ни производство, ни это регулярное выражение сами по себе не налагают ограничение на указанное выше

    для. Это

    3. 3. 9. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = необязательно

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 10 гГодМесяц

    gYearMonth представляет определенные полные месяцы по григорианскому календарю в определенные годы по григорианскому календарю.

    Запись. Поскольку комбинации месяц/год в одном календаре редко соответствуют комбинациям месяц/год в других календарях, значения этого типа, как правило, не могут быть преобразованы в простые значения, соответствующие комбинациям месяц/год в других календарях. Поэтому этот тип следует использовать с осторожностью в тех случаях, когда желательно преобразование в другие календари.

    3. 3. 10. 1 место для значений

    использует , с , , и должен отсутствовать. останки

    Запись. См. примечание о соответствии, в котором применяется значение этого типа данных.

    Равенство и порядок прописаны в

    3. 3. 10. 2 Лексическое отображение

    Лексические представления для являются «проекциями» тех из , как показано ниже.

    Лексическое пространство

    [19]   gYearMonthLexicalRep . = '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'  ?

    Эквивалентно этому регулярному выражению

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    21

    для. Это

    3. 3. 10. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = необязательно

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 11 гГод

    gYear представляет годы по григорианскому календарю.

    Запись. Поскольку годы в одном календаре редко соответствуют годам в других календарях, значения этого типа, как правило, не могут быть преобразованы в простые значения, соответствующие годам в других календарях. Поэтому этот тип следует использовать с осторожностью в тех случаях, когда желательно преобразование в другие календари.

    3. 3. 11. 1 место для значений

    использует , с , , , , и должен отсутствовать. останки

    Запись. См. примечание о соответствии, в котором применяется значение этого типа данных.

    Равенство и порядок прописаны в

    3. 3. 11. 2 Лексическое отображение

    Лексические представления для являются «проекциями» тех из , как показано ниже.

    Лексическое пространство

    [20]   gYearLexicalRep . =  ?

    Эквивалентно этому регулярному выражению

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    22

    для. Это

    3. 3. 11. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = необязательно

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 12 гМесяцДень

    представляет целые календарные дни, которые повторяются в один и тот же момент в каждом календарном году или происходят в каком-то произвольном календарном году. (Очевидно, что дни после 28 не могут встречаться во всех февраля; тем не менее, 29 разрешено. )

    Этот тип данных можно использовать, например, для записи дней рождения;

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

    3. 3. 12. 1 место для значений

    использует , с , , и должен отсутствовать. останки

    Ограничение. Значения дня месяца

    Значение должно быть не более 30, если оно является одним из 4, 6, 9 или 11, и не более 29, если .

    Равенство и порядок прописаны в

    Запись. В версии 1. 0 этой спецификации значения не сохраняли смещение часового пояса явно, но для смещений часовых поясов, не слишком далеких от их смещения часового пояса, можно было восстановить на основе первого момента их значения на временной шкале. Сохраняет все смещения часовых поясов

    Пример, показывающий отличие от версии 1. 0 (см. обозначения)

    • День - это календарный (или "местное время") день, смещенный от соответствующего интервала; . от 00 до -11. 59 включительно

      --12-12+13. 00 < --12–12+11. 00 (так же, как --12-12+12. 00 всегда было меньше --12-12+11. 00, но в версии 1. 0  --12-12+13. 00 > --12–12+11. 00, начиная с --12-12+13. «Восстанавливаемое смещение часового пояса» 00 было −11. 00)

    3. 3. 12. 2 Лексическое отображение

    Лексические представления для являются «проекциями» тех из , как показано ниже.

    Лексическое пространство

    [21]   gMonthDayLexicalRep . = '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    23'  '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    52'  ? . Представления дня месяца

    Ограничение. Представления дня месяца

    Внутри a не должно начинаться с цифры '

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    68' или быть '
    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    69', если только значение, которому оно будет сопоставлено, не . Значения дня месяца"), приведенные выше.

    Эквивалентно этому регулярному выражению

    <memo importance='high'
          date='1999-03-23'>
      <from>Paul V. Biron</from>
      <to>Ashok Malhotra</to>
      <subject>Latest draft</subject>
      <body>
        We need to discuss the latest
        draft <emph>immediately</emph>.
        Either email me at <email>
        mailto:[email protected]</email>
        or call <phone>555-9876</phone>
      </body>
    </memo>
    27

    Обратите внимание, что ни производство, ни это регулярное выражение сами по себе не налагают ограничение на указанное выше

    для. Это

    3. 3. 12. 3 аспекта

    Тип данных и все типы данных, производные от него через ограничение, имеют следующие характеристики. с фиксированными значениями; . must not be altered from the values displayed:

    • = коллапс (исправлено)

    Тип данных включает следующие функции. с отображаемыми значениями; . may be specified in the development of new types if the value provided is at least as restrictive as the one shown:

    • = необязательно

    Типы данных, производные от могут дополнительно указывать значения для следующих.

    Тип данных включает в себя следующие функции. ценности для своего

    • = частичный
    • = ложь
    • = счетно бесконечный
    • = ложь

    3. 3. 13 гДень

    [Определение. ]  gDay представляет целые дни в произвольном месяце — дни, которые повторяются в одну и ту же точку в каждом (григорианском) месяце. Этот тип данных используется для представления определенного дня месяца. Например, чтобы указать, что сотрудник получает зарплату 15 числа каждого месяца. (Очевидно, что дни после 28 не могут быть во все месяцы, тем не менее они разрешены, до 31. )

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

    3. 3. 13. 1 место для значений

    использует , с , , , , и должен отсутствовать. остается и должен быть от 1 до 31 включительно.

    Равенство и порядок прописаны в. Поскольку значения (дни) упорядочены по их первым моментам, кажущиеся аномалии могут появляться в том порядке, в котором значения отличаются не менее чем на 24 часа. (Значения могут отличаться на срок до 28 часов. )

    Примеры, которые могут показаться аномальными (см. обозначения)

    • ---15  ---16+13. 00

    • ---15−11. 00 = ---16+13. 00

    • ---15−13. 00 ---16 , потому что ---15−13. 00 > ---16+14. 00 и ---15−13. 00

    John Conner
    John Conner
    John Conner has written about blogger for more than 5 years and for congnghe123 since 2017

    Member discussion

           

    Related Posts