Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом разделе описываются некоторые сведения о реализации, о которых вы хотите знать.
Сопоставления списков
Типы IList, ICollection, IEnumerable, Type[] и String используются для представления типов списков языка определения схем XML (XSD).
Сопоставления профсоюзов
Типы объединения представлены через XmlAtomicValue или String. Поэтому исходный тип или тип назначения должен быть либо String либо XmlAtomicValue.
XmlSchemaDatatype Если объект представляет тип списка, объект преобразует входное строковое значение в список одного или нескольких объектов. Если XmlSchemaDatatype представляет собой объединение типов, то делается попытка проанализировать входное значение как один из типов объединения. Если попытка синтаксического анализа завершается ошибкой, преобразование выполняется со следующим членом объединения и т. д. до тех пор, пока преобразование не будет выполнено успешно, или нет других типов элементов, которые нужно попробовать, в этом случае создается исключение.
Различия между типами данных CLR и XML
Ниже описаны некоторые несоответствия, которые могут возникать между типами CLR и типами XML-данных, а также их обработка.
Замечание
Префикс xs отображается на https://www.w3.org/2001/XMLSchema и URI пространства имен.
System.TimeSpan и xs:duration
Тип xs:duration частично упорядочен в том, что существуют определенные значения длительности, которые отличаются, но эквивалентны. Это означает, что для xs:duration значения типа, например 1 месяц (P1M), меньше 32 дней (P32D), больше 27 дней (P27D) и эквивалентно 28, 29 или 30 дней.
Класс TimeSpan не поддерживает это частичное упорядочение. Вместо этого он выбирает определенное количество дней в течение 1 года и 1 месяца; 365 дней и 30 дней соответственно.
Дополнительные сведения о типе xs:duration см. в разделе "Схема XML W3C" часть 2. Рекомендации по типам данных.
xs:time, григорианские типы дат и System.DateTime
При сопоставлении значения xs:time с объектом DateTime, поле MinValue используется для инициализации свойств даты объекта DateTime (таких как Year, Month и Day) до наименьшего возможного значения DateTime.
Аналогичным образом, экземпляры xs:gMonth, xs:gDay, xs:gYear, xs:gYearMonth и xs:gMonthDay также сопоставляются с объектом DateTime. Неиспользуемые свойства объекта DateTime инициализируются значениями из MinValue.
Замечание
Нельзя полагаться на DateTime.Year значение, если содержимое вводится как xs:gMonthDay. Значение DateTime.Year всегда имеет значение 1904 в данном случае.
xs:anyURI и System.Uri
Если экземпляр xs:anyURI , представляющий относительный URI, сопоставляется с объектом Uri, Uri объект не имеет базового URI.