Ovaj alat omogućuje lijepljenje XML sadržaja RSS 2.0 ili Atom 1.0 feeda u tekstualno područje kako bi se analizirao njegov format, raščlanili zapisi i prijavili problemi sa strukturom, obaveznim poljima i referencama poveznica. Rezultat analize je detaljno izvješće o pogreškama i upozorenjima koje točno navodi broj retka, stupca i XML putanju na kojoj se problem nalazi.
Provjera se izvodi izravno u pregledniku korisnika. BroBroGo ništa ne prenosi niti sprema, što osigurava privatnost unesenih podataka tijekom rada s alatom.
Struktura i zahtjevi za RSS 2.0 feedove
RSS 2.0 feedovi moraju pratiti stroga pravila XML strukture kako bi ih čitači ispravno obradili. Unutar korijenskog elementa, RSS dokument mora sadržavati točno jedan izravni kanal. Ako se otkrije odstupanje, validator javlja pogrešku: "RSS mora sadržavati točno jedan izravni <channel>; pronađeno je ‹count›.".
Za svaki pojedinačni RSS item unutar kanala primjenjuju se sljedeća pravila provjere:
- Naslov ili opis: Provjerava se pravilo
title-or-descriptionkoje zahtijeva prisutnost barem jednog od ova dva elementa. - Identifikatori i poveznice: Alat čita i provjerava
GUIDte elementlink. - Datum objave: Provjerava se prisutnost i format datuma objave.
Ako u feedu nedostaje obavezno polje, validator ispisuje poruku: "Dodajte obavezno polje ‹field›.". U slučaju višestrukog definiranja polja koja smiju postojati samo jednom, prikazuje se poruka: "Zadržite točno jedno polje ‹field›; pronađeno je ‹count›.".
Struktura i zahtjevi za Atom 1.0 feedove
Atom 1.0 standard postavlja drugačije zahtjeve u odnosu na RSS 2.0. Prilikom validacije Atom feeda, alat provjerava elemente unutar svakog zapisa (Atom entry) prema sljedećim pravilima:
- ID i naslov: Svaki zapis mora imati jedinstveni
IDititle. - Ažuriranje: Obavezan je element
updatedkoji označava vrijeme zadnje promjene. - Autorstvo: Provjerava se nasljeđivanje autora. Ako autor nije definiran na razini zapisa, provjerava se njegova prisutnost na razini feeda.
- Alternativne poveznice: Provjerava se prisutnost alternativnih poveznica i pravila za
contentilisummary.
U slučaju neusklađenosti s Atom specifikacijom, validator javlja specifične pogreške:
- Ako nedostaje autor: "Dodajte <author> ovom zapisu, njegovu elementu <source> ili feedu." ili "Dodajte <author> feedu ili izravni <author> svakom zapisu.".
- Ako nedostaje alternativna poveznica: "Dodajte alternativni <link> kada Atom zapis nema umetnuti <content>.".
- Ako postoji konflikt u sadržaju: "Kada <content> upotrebljava src, uklonite umetnuti tekst i podređene elemente.".
- Ako nedostaje sažetak: "Dodajte <summary> kada je Atom sadržaj vanjski ili se ne može čitati kao tekst.".
Važnost apsolutnih poveznica i uloga xml:base
Poveznice i identifikatori unutar feedova moraju biti ispravno formatirani kako bi klijenti mogli pristupiti sadržaju. Ako se poveznica ne može raščlaniti, validator prikazuje poruku: "Popravite ‹field›; ova se poveznica ne može raščlaniti kao URL ili URI referenca.".
Za Atom feedove vrijede stroža pravila o identifikatorima i relativnim adresama:
- Atom ID: Relativni identifikatori nisu dopušteni. Ako se otkriju, javlja se pogreška: "Upotrijebite apsolutni IRI za
‹field›; relativni identifikatori nisu valjani Atom ID-ovi.". - Relativne poveznice i xml:base: Alat razrješava relativne reference u Atom feedu isključivo pomoću atributa
xml:base. Ako atributxml:basenije prisutan ili nije upotrebljiv, relativne adrese se ne mogu razriješiti, što rezultira pogreškom: "Upotrijebite apsolutnu adresu za‹field›; samo Atom reference s upotrebljivim xml:base mogu biti relativne.".
Tijekom ovog procesa, validator nikada ne otvara URL-ove. To znači da se dostupnost poslužitelja, preusmjeravanja, SSL certifikati i sam sadržaj na odredištu ne testiraju.
Datumi i jedinstveni identifikatori u feedovima
Ispravnost vremenskih oznaka i jedinstvenost identifikatora ključni su za sprječavanje dupliciranja sadržaja u čitačima feedova.
Validator provjerava jesu li svi datumi u feedu stvarni i usklađeni s formatom koji zahtijeva pojedini standard (RFC 822 / RFC 2822 za RSS 2.0, odnosno RFC 3339 za Atom 1.0). Ako datum nije ispravan, prikazuje se poruka: "Upotrijebite stvarni datum u formatu koji ovaj feed zahtijeva.".
Jedinstveni identifikatori (poput RSS GUID ili Atom ID) ne smiju se ponavljati unutar istog feeda. Ako validator otkrije duplikat, označit će točno mjesto prvog pojavljivanja porukom: "Ovaj ID ponavlja vrijednost koja se prvi put pojavila u retku ‹first›.".
Ograničenja i razlika između strukturne i sadržajne provjere
Ovaj validator je namijenjen isključivo za provjeru strukture i uobičajenih pravila formata dokumenata RSS 2.0 i Atom 1.0.
Postoje jasna tehnička i funkcionalna ograničenja alata:
- Ograničenje unosa: Maksimalna duljina unesenog XML sadržaja je 500.000 znakova. Ako se limit prekorači, prikazuje se poruka: "Ovaj alat prihvaća do
‹max›znakova po provjeri.". - Vrijeme izvršavanja: Ako je feed prevelik ili obrada traje predugo, validator prekida rad uz poruku: "Validacija je trajala predugo. Pokušajte s manjim feedom.". U slučaju općeg neuspjeha obrade, prikazuje se: "Validacija se nije mogla dovršiti.".
- Prikaz rezultata: Izvješće prikazuje maksimalno 200 problema i 100 zapisa. Ako feed sadrži više od toga, prikazat će se napomene o skraćivanju: "Prikazuje se prvih
‹shown›od ukupno‹total›problema." odnosno "Prikazuje se prvih‹shown›od ukupno‹total›zapisa.". - Stariji formati: Stariji RSS, RDF/RSS 1.0 i Atom 0.3 feedovi se prepoznaju, ali se na njima ne primjenjuju pravila za RSS 2.0 i Atom 1.0 kako bi se izbjegli lažni rezultati.
Važno je razlikovati strukturnu ispravnost od kvalitete samog sadržaja. Uspješna validacija bez pronađenih strukturnih problema ne jamči da je sadržaj unutar feeda točan, siguran za krajnje korisnike, prihvaćen u svakom pojedinačnom čitaču na tržištu ili spreman za objavu.
Često postavljana pitanja (FAQ)
Koje formate feeda podržava ovaj validator?
Validira aktualne RSS 2.0 i Atom 1.0 dokumente. Stariji RSS, RDF/RSS 1.0 i Atom 0.3 feedovi prepoznaju se, ali se ne provjeravaju pogrešnim pravilima.
Otvara li ili ispituje poveznice u feedu?
Raščlanjuje polja s poveznicama i razrješava relativne Atom reference pomoću xml:base. URL-ovi se nikad ne otvaraju pa se ne provjeravaju dostupnost, preusmjeravanja, certifikati ni sadržaj odredišta.
Koja se polja zapisa provjeravaju?
Za RSS item provjerava postoji li naslov ili opis te čita GUID, poveznicu i datum objave. Za Atom entry provjerava ID, naslov, updated, nasljeđivanje autora, alternativne poveznice i pravila za content ili summary.
Što trebam učiniti ako dobijem pogrešku za DOCTYPE deklaraciju?
Ako feed sadrži DOCTYPE deklaraciju, validator će javiti pogrešku: "Uklonite deklaraciju DOCTYPE prije provjere ovog feeda.". Potrebno je ukloniti taj dio iz XML koda i ponoviti provjeru.