web-dev-qa-db-ja.com

XML属性で許可される最大文字数はいくつですか?

XML属性で許可される最大文字数の標準はありますか?

W3Cコンソーシアムを調べてみましたが、特殊文字のエスケープに関するメモを除いて、文字数制限については何も見つかりませんでした。

20
G33kKahuna

XML仕様ごとに文字数の制限があるとは思いませんが、ベストプラクティスは属性値を短くすることです。

属性値が長くなる場合...別の要素の属性ではなく、それ自体の要素である可能性があります。

28
Justin Niessner

属性の最大文字長はありません。

問題が発生する可能性があるのは、別の言語を使用してxmlファイルを読み取っている場所です。

Xmlファイルの操作に使用する言語によって、制限が決まります。

たとえば、情報を文字列に読み込む予定の場合は、使用している言語の文字列に保持できる最大文字数に制限する必要があります。

さらに、他の人が言っているように、これが問題である場合は、おそらく標準の命名規則に従っていません。保存するテキストが大量にある場合は、属性ではなく要素の値にすることをお勧めします。

6
JK.

標準的な制限はないと思いますが、特定の実装では機能が制限される可能性があるため、サイズを適切に保つようにしています。

属性または名前と値で構成されます。値は、ゼロを含む任意の長さにすることができ、エンコーディングに応じて、任意の有効なXML文字を含めることができます。名前は名前空間で修飾されている場合とされていない場合があります。もしそうなら、少なくとも1文字のプレフィックスがあります。したがって、最短の属性は次のとおりです。

a=''
b:a=''

属性値は、XMLパーサーに準拠することによって正規化されるため、改行などの空白は単一のスペースに正規化されます。

1