2016-02-16 7 views
6

私はこのようなタグを持っています。属性には開始時にスペースが含まれます。属性にスペースを与えるのは正しいですか?それをお勧めします。XML属性は有効ですか?

<p id=" 10">space found at the starting point of attribute.</p> 
<p id="10 ">space found at the end point of attribute.</p> 
+5

はい、それは有効なXML属性です。あなたは好みのプログラミング言語を使って、このXMLを解析するか、このXMLをファイルに保存してブラウザで開くことができます。 – Denis

+0

ここでも読むことができます。 http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-att-attribute-in-html –

答えて

1

これは、一般的には有効ですが、具体的にはないかもしれません。

値として許されているもののために多くのルールがありません。ドキュメントタイプに基づいた特別な制限がなければ、属性値はxml仕様のセクションCharacter Data and Markupにある有効な文字データの記述と一致する必要があります。基本的にこれは文字&<が許可されていません(ただし、&amp;&lt;でエスケープすることができます)と述べています。一部のプロセッサは>文字でも無効になることがありますが、これは許可されます(でエスケープする必要がある場合は]]>に表示される場合を除く)。その他のデータは許可されます(引用符が混在している場合もあります)。

さて、アプリケーションに応じて、属性の値にさらなる制限があるかもしれません。たとえば、ID typeは、Nameプロダクションの仕様と一致する必要があります。これらは、文字(または少数の句読文字の1つ)で始まり、数字、文字、または句読点文字で続ける必要があります。この場合、スペースはNOTとすることができます。

この仕様には追加の制限があります(アプリケーションによって異なる場合があります)。さらに、さまざまなスキーマによって制限が課される場合があります。

甲斐呉トーによってコメントがHTMLで提供される追加の制限をカバーしanother questionへのリンクを提供します。仕様へ


リンクが答えで提供されていますが、リンクが動作を停止した場合に見つけることが、当該箇所を容易にするために、彼らはここに要約されています。

  1. 文字データとマークアップは、IDの有効性制約が仕様のセクション3.3.1に覆われているXML 1.0仕様
  2. のセクション2.4に記載されています。
  3. 名前の生成については、仕様の2.3節で説明しています。

https://www.w3.org/TR/REC-xmlで指定できます。

仕様の注釈付きバージョンはhttp://www.xml.com/axml/testaxml.htmで見つけることができます。

0

XMLSpyは、あなたのXMLは整形式であると言います。だから、明らかに属性値の先頭のブランクに問題はありません!