Pengenalan kepada Pengesahan Suapan RSS dan Atom
Pengesah suapan RSS ialah alat analisis teknikal yang memeriksa struktur dokumen XML bagi format RSS 2.0 dan Atom 1.0. Alat ini membolehkan pengendali laman web, penerbit kandungan, pembangun dan pasukan yang sedang melakukan migrasi suapan untuk mengesan ralat sintaksis, medan wajib yang hilang serta rujukan pautan yang tidak sah.
Proses pengesahan dilakukan sepenuhnya di dalam penyemak imbas web pengguna. Tiada sebarang data XML yang ditampal akan dimuat naik atau disimpan oleh BroBroGo. Alat ini menerima input sehingga 500,000 aksara bagi setiap pemeriksaan. Jika had ini dilampaui, mesej ralat "Alat ini menerima sehingga ‹max› aksara bagi setiap pemeriksaan." akan dipaparkan.
Struktur dan Keperluan Suapan RSS 2.0
Format RSS 2.0 (Really Simple Syndication) mempunyai peraturan struktur khusus yang mesti dipatuhi untuk memastikan dokumen XML dapat dibaca oleh aplikasi pembaca suapan.
- Elemen Saluran (Channel): Dokumen RSS mesti mengandungi tepat satu elemen
<channel>langsung di bawah elemen akar<rss>. Jika peraturan ini dilanggar, alat akan melaporkan ralat "RSS mesti mengandungi tepat satu <channel> langsung; ‹count› ditemui.". - Keperluan Item: Setiap item di bawah saluran diperiksa untuk memastikan kewujudan medan penting. Antara peraturan utama ialah keperluan
title-or-description, di mana setiap item mesti mempunyai sekurang-kurangnya elemen tajuk atau perihalan. - Medan yang Dihuraikan: Alat ini membaca dan mengesahkan elemen
GUID(Globally Unique Identifier),link(pautan), danpublication date(tarikh penerbitan) bagi setiap item. - Format Tarikh: Tarikh penerbitan mestilah menggunakan format tarikh sebenar yang sah mengikut spesifikasi RSS 2.0. Kegagalan mematuhi format ini akan mencetuskan ralat "Gunakan tarikh sebenar dalam format yang diperlukan oleh suapan ini.".
Struktur dan Keperluan Suapan Atom 1.0
Atom 1.0 ialah format sindikasi yang lebih baharu dan mempunyai peraturan pengesahan yang lebih ketat berbanding RSS 2.0. Pengesah ini memeriksa beberapa elemen kritikal dalam suapan Atom:
- Pengecam Unik (ID): Setiap entri Atom memerlukan elemen
<id>yang unik. Elemen ini mestilah menggunakan IRI (Internationalized Resource Identifier) mutlak. Pengecam relatif tidak dibenarkan dan akan menghasilkan ralat "Gunakan IRI mutlak untuk‹field›; pengecam relatif bukan ID Atom yang sah.". Jika terdapat ID yang berulang, ralat "ID ini mengulangi nilai yang pertama kali dilihat pada baris‹first›." akan dipaparkan. - Pengurusan Pengarang (Author): Atom mempunyai peraturan pewarisan pengarang yang ketat. Jika suapan tidak mempunyai elemen pengarang di peringkat akar, ralat "Tambah <author> pada suapan atau <author> langsung pada setiap entri." atau "Tambah <author> pada entri ini, <source>-nya atau suapan." akan dicetuskan.
- Pautan Alternatif dan Kandungan: Apabila entri Atom tidak mempunyai elemen kandungan sebaris (inline content), pautan alternatif mesti disediakan melalui ralat "Tambah <link> alternatif apabila entri Atom tiada <content> sebaris.". Jika elemen kandungan menggunakan atribut
srcuntuk merujuk kepada sumber luar, sebarang teks sebaris atau elemen anak di dalamnya mesti dibuang bagi mengelakkan ralat "Apabila <content> menggunakan src, alih keluar teks sebaris dan elemen anaknya.". - Ringkasan (Summary): Elemen
<summary>diperlukan sekiranya kandungan Atom adalah luaran atau tidak dapat dibaca sebagai teks biasa, yang akan mencetuskan ralat "Tambah <summary> apabila kandungan Atom adalah luaran atau tidak dapat dibaca sebagai teks.".
Peranan xml:base dalam Rujukan Relatif Atom
Dalam dokumen Atom 1.0, pautan dan pengecam biasanya ditulis sebagai alamat mutlak. Walau bagaimanapun, spesifikasi Atom membenarkan penggunaan rujukan relatif sekiranya dokumen tersebut menentukan alamat asas menggunakan atribut xml:base.
Pengesah ini akan menghuraikan medan yang mengandungi pautan dan cuba menyelesaikan rujukan relatif Atom dengan merujuk kepada nilai xml:base yang ditakrifkan. Jika rujukan relatif ditemui tanpa adanya atribut xml:base yang boleh digunakan untuk menyelesaikannya, sistem akan mengeluarkan ralat "Gunakan alamat mutlak untuk ‹field›; hanya rujukan Atom dengan xml:base yang boleh digunakan boleh bersifat relatif.". Bagi medan pautan umum yang tidak dapat dihuraikan sebagai URL atau URI yang sah, ralat "Baiki ‹field›; pautan ini tidak dapat dihuraikan sebagai rujukan URL atau URI." akan dipaparkan.
Perbezaan Validasi Struktur dan Validasi Kandungan
Adalah penting untuk membezakan antara pemeriksaan integriti struktur XML dengan pemeriksaan kualiti kandungan sebenar.
| Aspek Pemeriksaan | Skop Validasi Alat | Perkara yang Tidak Diperiksa |
|---|---|---|
| Integriti XML | Memeriksa sintaksis XML, mengesan dokumen rosak, dan memastikan tiada pengisytiharan DOCTYPE. | Tidak memeriksa ketepatan fakta atau kualiti penulisan kandungan. |
| Kehadiran Medan | Memastikan kewujudan elemen wajib seperti ID, tajuk, tarikh, dan pengarang. | Tidak menjamin kandungan selamat daripada perisian hasad atau sedia untuk diterbitkan. |
| Analisis Pautan | Memeriksa format sintaksis URL/URI dan menyelesaikan pautan relatif. | Tidak membuka URL, tidak menguji ketersediaan pelayan, ubah hala (redirects), atau sijil SSL. |
Laporan yang dihasilkan oleh alat ini hanya memeriksa struktur dan peraturan format umum sahaja. Ia tidak membuktikan bahawa kandungan adalah tepat, selamat, diterima oleh setiap aplikasi pembaca suapan, atau sedia untuk diterbitkan.
Ralat Sintaksis dan Had Pengesahan
Apabila menganalisis dokumen XML, alat ini akan menghentikan proses atau mengeluarkan amaran khusus berdasarkan beberapa senario ralat teknikal:
- Pengisytiharan DOCTYPE: Dokumen XML yang mengandungi pengisytiharan DOCTYPE tidak akan diproses untuk mengelakkan isu keselamatan entiti luaran XML (XXE). Pengguna akan menerima ralat "Alih keluar pengisytiharan DOCTYPE sebelum memeriksa suapan ini.".
- XML Rosak: Jika dokumen mempunyai tag yang tidak ditutup atau struktur XML yang cacat, ralat "Baiki XML yang rosak, kemudian sahkan sekali lagi." akan dipaparkan.
- Format Tidak Disokong: Alat ini menyokong RSS 2.0 dan Atom 1.0. Format lama seperti RSS 0.9x, RDF/RSS 1.0, dan Atom 0.3 akan dikenal pasti tetapi tidak akan diperiksa menggunakan peraturan format baharu. Jika format tidak dikenali langsung, ralat "Gunakan dokumen RSS 2.0 <rss> atau dokumen Atom 1.0 <feed>." atau "Pengesah ini menyokong
‹format›‹expected›;‹actual›dikesan." akan keluar. - Had Paparan: Untuk mengekalkan prestasi penyemak imbas, alat ini mengehadkan paparan laporan kepada maksimum 200 isu dan 100 entri sahaja. Jika jumlah sebenar melebihi had ini, mesej "Menunjukkan
‹shown›isu pertama daripada‹total›." atau "Menunjukkan‹shown›entri pertama daripada‹total›." akan dipaparkan. - Masa Tamat (Timeout): Sekiranya proses pengesahan mengambil masa terlalu lama, sistem akan memaparkan ralat "Pengesahan mengambil masa terlalu lama. Cuba suapan yang lebih kecil.". Jika proses gagal sepenuhnya, mesej "Pengesahan tidak dapat diselesaikan." akan ditunjukkan.
Soalan Lazim (FAQ)
Apakah format suapan yang disokong oleh pengesah ini?
Ia mengesahkan dokumen RSS 2.0 dan Atom 1.0 semasa. Suapan RSS lama, RDF/RSS 1.0 dan Atom 0.3 dikenal pasti tetapi tidak diperiksa menggunakan peraturan yang salah.
Adakah ia membuka atau menguji pautan dalam suapan?
Ia menghuraikan medan yang mengandungi pautan dan menyelesaikan rujukan relatif Atom dengan xml:base. URL tidak pernah dibuka, jadi ketersediaan, ubah hala, sijil dan kandungan destinasi tidak diuji.
Apakah medan entri yang diperiksa?
Untuk item RSS, ia memeriksa tajuk atau perihalan serta membaca GUID, pautan dan tarikh penerbitan. Untuk entri Atom, ia memeriksa ID, tajuk, kemas kini, pewarisan pengarang, pautan alternatif dan peraturan kandungan atau ringkasan.
Adakah data XML saya selamat dan sulit semasa menggunakan alat ini?
Ya. Suapan anda diperiksa dalam penyemak imbas. Tiada apa-apa dimuat naik atau disimpan oleh BroBroGo.