У меня есть приложение, которое считывает данные из базы данных, создает объект из данных, размещает его в xml и ставит в очередь xml в очередь, являющуюся производителем. Xml исключается из очереди потребителем.
Мне нужно использовать xsds в двух разных местах.
Для доступа к базе данных при чтении данных из базы данных и
Для взаимодействия между производителем и потребителем
Может ли один и тот же xsd использоваться в обоих случаях? Или мне нужно использовать разные xsds?
Переданы некоторые факты из комментариев:
Некоторые таблицы в моей модели данных имеют m-m relns. Например, рассмотрим следующие 3 таблицы. Запросы:
RequestId Desc Экспортеры: ExporterId Desc Request_exporters: RequestId (FK) ExporterId (FK)
xsd для xml (взаимодействие между производителем и потребителем) выглядит следующим образом:
<xs:complexType name="Requests">
<xs:element name="RequestId" type="xs:long" />
<xs:element name="Exporter" type="Exporter" minOccurs="1"
maxOccurs="unbounded"/>
</xs:complexType>
Но xsd для базы данных также должен содержать подробную информацию о ttrequestexporters. Так что мне не ясно, как мне использовать один и тот же xsd для обоих.