Я пытаюсь переопределить определение элемента, содержащегося в external xsd (который я не могу изменить), которое выглядит следующим образом:
<xsd:element name="view-controller">
<xsd:complexType>
<xsd:attribute name="path" type="xsd:string" use="required" />
<xsd:attribute name="view-name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
Это определяет такие элементы, как:
<mvc:view-controller path="/path" view-name="server/view/etc" />
Как мне расширить его, чтобы я мог создавать элементы с 2 дополнительными атрибутами (foo и bar)?
Смотрите конечный результат, который мне нужен:*
<mvc:view-controller path="/path" view-name="server/view/etc" foo="stuff" bar="more stuff" />
То, что я пробовал:
<xsd:redefine schemaLocation="http://www.domain.org/schema/correct-path.xsd">
<xsd:simpleType name="view-controller">
<xsd:complexContent>
<xsd:extension base="view-controller">
<xsd:attribute name="foo" type="xsd:string" />
<xsd:attribute name="bar" type="xsd:string" />
</xsd:extension>
</xsd:complexContent>
</xsd:simpleType>
</xsd:redefine>
Однако это не работает.
Не могу найти какой-либо ресурс, подробно описывающий, как переопределить xsd:element
содержащие атрибуты, которые яПоверьте, здесь проблема.
Пожалуйста, прокомментируйте, если требуется дополнительная информация.