Подтвердить что ты не робот

Visual Studio "Создать образец XML" Ограничение по размеру?

Я использую Visual Studio "Generate Sample XML" для достижения этой трансформации:

XSD → (Образец) XML

Я знаю, что это называется "образец". Я ценю, что "образцы" не будут иметь значимых значений; просто значение, которое удовлетворяет ограничениям XSD

  • то есть. 0 удовлетворяет xsd:integer ограничению типа данных,
  • то есть. 3 используются для удовлетворения ограничений 1..* и 0..* sequence/minOccurs/maxoccurs
  • и другие соглашения

Однако, когда я нажимаю "Создать образец XML", результирующий XML не содержит тега (хотя бы один) для всех элементов, определенных в XSD.

  • Я хочу "исчерпывающий" XML; то есть в результате XML содержит тег для всех элементов, определенных в XSD.

В частности, вот мои обстоятельства:

  • Мой XSD имеет <xsd:sequence>, который позволяет использовать ряд элементов 0..* и 1..*.
  • Каждый из этих элементов довольно сложный; каждый из этих элементов создает образец XML, который в среднем имеет длину ~ 270 строк.
  • Это <xsd: sequence> позволяет 120 из этих элементов; каждый из которых уникален.
  • Это означает, что образец XML для этого элемента <xsd: sequence> может быть 270 * 120 = 32 400 строк результирующего XML.

Что я нахожу, так это то, что Generate Sample XML будет не выдавать документ длиной более 6000 строк XML.

Это означает, что он не создает "исчерпывающий" XML; он ограничивает выходной XML-образец только первыми 30 тегами (в том порядке, в котором они были указаны как дочерние элементы <xsd: sequence> в XSD ** (см. ниже) - , даже если это означает, что результирующий XML недействителен [ поскольку он может опустить требуемые элементы]);

остальные 120-30 = 90 элементы, определенные в XSD, исключены из выходного образца XML.

Может кто-нибудь объяснить, почему? Это ошибка пользователя? Есть ли обходной путь? Не нужно рекомендовать другие инструменты, если они уже описаны здесь.

Я могу перенести этот вопрос на суперпользователя, если это более уместно.

** Я считаю, что порядок, в котором элементы ссылаются как дети <xsd:sequence>, важен; когда я переупорядочил этот порядок (например, перемещение детей 51-53, чтобы стать первыми детьми, 1-3, затем эти элементы включались в выход 6000 строк, но остальные элементы, которые они смещали, были исключены)

4b9b3361