Хотя это и является «технически» правильным использованием атрибута maxOccurs
, это использование не (IMO), как maxOccurs
предназначено для использования.
Похоже, что создатель схемы имел в виду, что этот элемент может встречаться любое количество раз, и в этом случае правильное значение определения будет unbounded
.
То, что подразумевает текущее определение, состоит в том, что системы, использующие эту схему, будут вести себя совершенно корректно при количестве элементов до 4294967295
, но не будут работать для чего-либо большего.
Я полагаю, что это техническое требование, которое может иметь смысл - многие системы будут иметь int32
, закодированную как максимальное количество элементов, поэтому в идеальном мире вы можете захотеть применить этот предел, но я не думаю, что это это действительно разумная или полезная вещь, которую можно попробовать запечатлеть в схеме в реальном мире.
Кроме того, если вы отправляете столько элементов, возможно, XML является неправильным форматом данных.
Я бы предложил, чтобы авторы схемы использовали значение атрибута unbounded
или использовали значения, которые фактически соответствуют ограничениям и требованиям систем, использующих этот XML.