私のマネージャーはXMLStreamWriter
に文字列を渡す前にjdomのcheckCharacterData
と呼んだ理由を説明してくれたので、XML仕様を参照して混乱しました。XMLとUnicodeの仕様:正当な文字は何ですか?
XML 1.0とXML 1.1有効なXML文字が愚かに聞こえること「タブ、キャリッジリターン、ラインフィード、およびUnicodeとISO/IEC 10646の法的な文字」であると言う:タブ、改行、および改行がありますUnicodeの有効な文字はです。次に、U + 0000、U + D800-U + DFFFを除いたU + 0000 - U + 10FFFFを参照するようにXML 1.1で変更された、「サロゲートブロック、FFFE、およびFFFFを除くすべてのUnicode文字」があります。 U + FFFE - U + FFFF; NULは除外されています。次に、BNFによってすでに除外されている文字を含む互換文字の使用が著者に「推奨されない」という注意があります。
質問:正規のUnicode文字は何ですか? NULは有効なUnicode文字ですか? (私はU + 0000を除外していないようなISO 10646(第2版、2010)のpdfを発見しました)ISO 10646またはUnicodeは2000年版と2010年版の間で、以前は除外された制御文字を含むように変更されましたか?そしてXMLに関しては、BNFが厳格である一方、テキストが非常に寛大で/ゆるやかな理由がありますか?