Pertanyaan OK untuk menaruh komentar sebelum deklarasi XML?


Apakah boleh menempatkan komentar sebelum deklarasi XML dalam file XML?

<!--
Is this bad to do?
-->
<?xml version="1.0" encoding="utf-8"?>
<someElement />

26
2017-07-28 20:13


asal


Jawaban:


Tidak, itu tidak baik.

Lampiran F dari spesifikasi XML mengatakan:

Karena setiap entitas XML tidak   disertai dengan pengkodean eksternal   informasi dan tidak dalam UTF-8 atau UTF-16   encoding harus dimulai dengan XML   deklarasi pengkodean, di mana   karakter pertama harus '<? xml', apa saja   prosesor yang sesuai dapat mendeteksi, setelah   dua hingga empat oktet input, yang mana dari   kasus-kasus berikut berlaku.

Ah, tapi, bagian F tidak normatif, katamu.

Baik, bagian 2.1 memberikan produksi untuk dokumen XML yang terbentuk dengan baik, sehingga:

[1]     document       ::=       prolog element Misc*

...dan masuk bagian 2.8 kami mendapatkan produksi untuk "prolog":

[22]    prolog     ::=       XMLDecl? Misc* (doctypedecl Misc*)?
[23]    XMLDecl    ::=      '<?xml' VersionInfo EncodingDecl? SDDecl? S? '?>'

Jadi kamu bisa menghilangkan deklarasi <? xml, tetapi Anda tidak dapat membukanya dengan apa pun.

(Kebetulan, "Misc" adalah kategori yang komentar jatuh ke dalam).


42
2017-07-28 20:16



Menurut halaman iniini ilegal.


8
2017-07-28 20:16



Deklarasi XML menentukan pengkodean dokumen, yang sama pentingnya untuk komentar seperti untuk XML struktural. Karena itu, deklarasinya harus didahulukan. Saya tidak akan terkejut jika banyak pembaca XML mampu menangani hal ini, tetapi itu ide yang buruk.


5
2017-07-28 20:18



Tidak, ini tidak sesuai dengan standar XML, tetapi komentarnya bagus.


1
2017-07-28 20:34