Конвертер XSD в XML - PullRequest
       8

Конвертер XSD в XML

0 голосов
/ 10 апреля 2020

Я пытаюсь преобразовать XSD-файл в соответствующий документ XML. Использование встроенного инструмента IntelliJ делает это легко, но что-то не так. Кажется, все создается правильно, и это большой XSD, но при ближайшем рассмотрении некоторые элементы отсутствуют. Спецификация c XSD, которую я использую, отсюда: https://www.iata.org/contentassets/76a4543036794d59ad747f3d80bb9792/19.2-schemas-edist.zip. Файл называется IATAAirShoppingRS.xsd.
Вот фрагмент файла. После CarrierOffersSummary должно быть больше элементов, которые создаются и расширяются, но есть только комментарии.

<iata:TotalAmount CurCode="token">1000.00</iata:TotalAmount>
          </iata:TotalPrice>
          <!--Optional:-->
          <iata:ValidatingCarrierCode>token</iata:ValidatingCarrierCode>
          <!--Optional:-->
          <iata:WebAddressURL>http://www.corp.com/pater/regina</iata:WebAddressURL>
        </iata:ALaCarteOffer>
        <!--Optional:-->
        <iata:CarrierOffersSummary>
          <!--Optional:-->
          <iata:HighestOfferPrice>
            <!--Optional:-->
            <iata:LoyaltyUnitAmount CurCode="token">1000.00</iata:LoyaltyUnitAmount>
            <!--Optional:-->
            <iata:LoyaltyUnitName>token</iata:LoyaltyUnitName>
            <!--Optional:-->
            <iata:TotalAmount CurCode="token">1000.00</iata:TotalAmount>
          </iata:HighestOfferPrice>
          <!--Optional:-->
          <!--Optional:-->
        </iata:CarrierOffersSummary>
        <!--Zero or more repetitions:-->
        <!--Zero or more repetitions:-->
      </iata:CarrierOffers>
    </iata:OffersGroup>
    <!--Optional:-->
    <!--Zero or more repetitions:-->
    <!--Zero or more repetitions:-->
    <!--Optional:-->
    <!--Zero or more repetitions:-->

Я ценю любую предоставленную помощь.

1 Ответ

0 голосов
/ 10 апреля 2020

Я полагаю, что вы имеете в виду комментарии 'Zero or mor повторений'?

Я не использовал инструмент IntelliJ, но пример генератора документов Eclipse XML имеет настройки для управления выводом, в том числе что-либо генерируется для необязательных (minOccurs = "0") элементов. Я предлагаю вам взглянуть на документацию по инструменту IntelliJ, чтобы увидеть, имеет ли он аналогичные настройки. Однако ...

Я пытаюсь преобразовать XSD-файл в соответствующий документ XML.

Для большинства XSD, особенно больших и сложных, существует нет такой вещи. Любой нетривиальный XSD описывает целое семейство XML документов. Если вы используете этот инструмент для генерации данных модульного теста, тогда очень внимательно относитесь к функциональному покрытию . Вы не должны доверять никакому автоматизированному инструменту для создания полезных данных для тестирования - это требует понимания бизнес-требований вашего проекта.

...