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

Определение массива в xml

В XML, как объявить массив целых чисел?

Я могу объявить его следующим образом:

<numbers type="array">
    <value>3</value>
    <value>2</value>
    <value>1</value>
</numbers>

но может ли быть более простой способ?

<numbers [3,2,1]></numbers>
4b9b3361

Ответ 1

Второй способ недействителен XML; вы имели в виду <numbers>[3,2,1]</numbers>?

Если это так, то первый из них предпочтителен, потому что все, что вам нужно для получения элементов массива, - это некоторые манипуляции с XML. На втором нужно сначала получить значение <numbers> элемент с помощью XML-манипуляции, затем каким-то образом проанализируйте текст [3,2,1], используя что-то еще.

Или, если вам действительно нужен компактный формат, вы можете использовать JSON (который "изначально" поддерживает массивы). Но это зависит от ваших требований приложения.

Ответ 2

Нет, нет более простого способа. Вы можете потерять type=array.

<numbers>
    <value>3</value>
    <value>2</value>
    <value>1</value>
</numbers>

Ответ 3

В качестве имени "числа" ясно, что это список чисел... Итак, массив числа... нет необходимости в типе атрибута... Хотя мне нравится принцип указания типа поля в атрибуте type...

Ответ 4

Как только я увидел такую ​​интересную конструкцию:

<Ids xmlns:id="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <id:int>1787</id:int>
</Ids>