Я хочу иметь абстрактный класс (в качестве примера «транспортные средства») и хочу извлечь из него другие классы (например, «автомобиль» и «мотоцикл»).Вывод из абстрактного класса и ссылки только на производные классы
Теперь я хочу ссылаться на абстрактный класс в моем основном элементе, так что в xml-файле разрешено использовать только каждый производный класс из «транспортных средств». Я просто не знаю, как это сделать, любая помощь будет оценена по достоинству.
Пример XML:
<main xmlns="http://www.exampleURI.com/example">
<car>
</car>
<motorbike>
</motorbike>
</main>
Пример XSD:
<?xml version="1.0"?>
<xs:schema targetNamespace="http://www.exampleURI.com/example" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ex="http://www.exampleURI.com/example">
<xs:element name="main" type="ex:main"/>
<xs:complexType name="main">
<xs:sequence>
<xs:element name="vehicles" type="ex:vehicles"/>
</xs:sequence>
</xs:complexType>
<xs:element name="vehicles" type="ex:vehicles"/>
<xs:complexType name="vehicles" abstract="true">
<xs:sequence/>
</xs:complexType>
<xs:element name="car" type="ex:car"/>
<xs:complexType name="car">
<xs:complexContent>
<xs:extension base="ex:vehicles">
<xs:sequence/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="motorbike" type="ex:motorbike"/>
<xs:complexType name="motorbike">
<xs:complexContent>
<xs:extension base="ex:vehicles">
<xs:sequence/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
Пожалуйста показать схемы XML документ, который вы написали до сих пор. Благодарю. –
Вещь iam делает это визуально в Enterprise Architect в данный момент, но я могу показать сгенерированный код из него. Одна секунда. – Cyriac