Какое максимальное количество символов допускается в атрибуте XML? - PullRequest
20 голосов
/ 26 августа 2009

Существует ли стандарт для максимального количества символов, разрешенных в атрибуте XML?

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

Ответы [ 4 ]

28 голосов
/ 26 августа 2009

Я не верю, что для спецификации XML существует ограничение на количество символов, но лучше всего сохранять короткие значения атрибутов.

Если значение атрибута растет долго ... скорее всего, это должен быть отдельный элемент, а не атрибут другого элемента.

6 голосов
/ 28 августа 2009

Не существует максимальной длины символа для атрибута.

Место, где вы можете столкнуться с проблемами, - это место, где вы читаете XML-файл на другом языке.

Язык, который вы используете для работы с XML-файлом, определит ваши ограничения.

Например, если вы планируете читать информацию в строку, вы должны ограничить себя максимальным количеством символов, которое может содержаться в строке на языке, который вы используете.

Кроме того, как уже говорили другие, вы, вероятно, не соблюдаете стандартные соглашения об именах, если это является проблемой. Я хотел бы предложить, что если у вас есть большой объем текста для хранения, это должно быть значение элемента, а не атрибута.

1 голос
/ 10 сентября 2009

Атрибут составлен или имя и значение. Значение может иметь любую длину, включая ноль, и может содержать любые допустимые символы XML, в зависимости от кодировки. Имя может или не может быть квалифицировано с пространством имен; если да, то будет иметь префикс по крайней мере одного символа. Поэтому самые короткие атрибуты:

a=''
b:a=''

Значение атрибута будет нормализовано с помощью соответствующих анализаторов XML, чтобы пробелы, такие как переводы строк, будут нормализованы для единичных пробелов.

1 голос
/ 26 августа 2009

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

...