Значение по умолчанию для XSD - PullRequest
1 голос
/ 22 февраля 2011

Этот вопрос здесь задает значения по умолчанию, указанные в XSD-файле.По сути, вы можете сказать, что поле "foo" по умолчанию имеет значение "bar"

Что я хочу знать ... Возможно ли использовать поле по умолчанию в качестве значения в другом поле?Если поле "foo" равно "bar", а "otherfoo" пусто, могу ли я сказать, что по умолчанию это значение в "foo" ... что-то вроде:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="button" type="button"/>
  <xs:complexType name="button">
    <xs:attribute name="id" type="xs:string"/>
    <xs:attribute name="label1" type="xs:string" default="Go"/>
    <xs:attribute name="label2" type="xs:string" default=label1/>
  </xs:complexType>
</xs:schema>

<button id="1"/>

Где Label1 по умолчанию имеет значение"Go" ... Label2 по умолчанию соответствует значению в Label1.

Цель состоит в том, чтобы удалить избыточность, такую ​​как:

<Field Name="State" DataSourceField="State" />

1 Ответ

3 голосов
/ 22 февраля 2011

К сожалению, это невозможно, фактически XML-схема практически не поддерживает межэлементные зависимости (включая проверку).

...