gluck59
@gluck59
Виртуальный глюк

Как в XSD схеме указать обязательность отдельного элемента?

Сломал мозг...
Дано: xml документы.
Задача: написать для них XSD-схемы.

<?xml version="1.0" encoding="UTF-8" ?>
	<form>
		<id>обязателен</id>
		<deliveryMethod>обязателен</deliveryMethod>
		<date></date>
		<sum></sum>
	</form>


Возможно задать обязательность через аттрибут и свойство use:
<xs:attribute name="r" use="required" />

Но тогда этот аттрибут вылезет в результирующем XML, что не допускается:
<id use="required">обязателен</id>

Толком никакой информации по этой фиче не нашлось. Получается, что эти схемы бесполезны, если в них нельзя указать самое главное.
Как быть?
  • Вопрос задан
  • 9523 просмотра
Решения вопроса 1
gluck59
@gluck59 Автор вопроса
Виртуальный глюк
Ответ на вопрос найден здесь.
2.2.1 Ограничение вхождений

Задача решается через жопу: нужно задать НЕобязательность НЕобязательности :) элементов, установив параметры minOccurs=0 и maxOccurs=1.
Остальные элементы по умолчанию считаются обязательными.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы