Estructura i requisits de l'RSS 2.0 per a pòdcasts
Un feed de pòdcast és un document XML basat en l'especificació RSS 2.0. Perquè els agregadors i les aplicacions de lectura puguin processar el contingut correctament, l'estructura del fitxer ha de complir unes regles sintàctiques molt definides.
L'arrel del document ha de ser obligatòriament <rss>. A més, l'atribut version d'aquesta etiqueta <rss> s'ha d'establir exactament en "2.0". Dins d'aquest element arrel, l'RSS ha de contenir exactament un <channel> com a fill directe. Si es detecta una quantitat diferent d'elements de canal, el validador indicarà un error.
La integritat de l'XML és el primer pas per a la validació. Si el document conté una declaració DOCTYPE, es mostrarà l'error "Elimina la declaració DOCTYPE abans de revisar aquest canal.". En cas que l'XML estigui mal format i l'analitzador no el pugui processar, s'indicarà el missatge "Arregla l'XML malformat i després torna a validar." juntament amb la informació addicional del motor d'anàlisi sota l'etiqueta "Detall de l'analitzador: ‹detail›".
Requisits específics per a Apple Podcasts
La plataforma Apple Podcasts defineix un estàndard de facto per a la distribució de contingut d'àudio. Per complir amb aquestes directrius, cal declarar l'espai de noms d'Apple Podcasts a l'etiqueta <rss>. Si no es troba aquesta declaració, el validador llançarà un avís o error de tipus "Declara l'espai de noms d'Apple Podcasts a <rss>: ‹namespace›".
Dins del canal i dels episodis, s'han de definir camps específics que controlen el comportament de la plataforma:
- Categories: S'ha d'afegir un atribut de text vàlid a les etiquetes de categoria. Si no es fa així, es mostrarà l'error "Afegiu a itunes:category un atribut text que no estigui buit.".
- Contingut explícit: L'etiqueta
<itunes:explicit>és obligatòria i s'ha de configurar exclusivament amb els valors "true" o "false". Qualsevol altre valor generarà l'error "Establiu itunes:explicit en true o false.". - Pòdcasts serials: Si el programa està configurat com a sèrie (serial), cada episodi requereix un ordre seqüencial estricte. Si manca aquesta informació, s'emetrà l'error "Els pòdcasts de tipus «serial» necessiten un enter positiu a itunes:episode per a cada episodi.".
Validació d'atributs de l'enclosure d'àudio
L'element <enclosure> és el que enllaça directament el fitxer multimèdia de cada episodi. Cada episodi ha de tenir exactament un <enclosure>. Si se'n detecta més d'un, es mostrarà l'error "Deixeu un sol <enclosure> en aquest episodi; se n’han trobat ‹count›.".
El validador analitza detalladament els atributs d'aquest element sense arribar a descarregar ni descodificar el fitxer d'àudio real:
- URL: L'enllaç al fitxer multimèdia ha de ser absolut. Si no és correcte, es mostrarà l'error "Assigneu una URL HTTP o HTTPS completa a l’atribut url d’<enclosure>.".
- Mida en bytes: L'atribut
lengthha de reflectir la mida real del fitxer. Si el valor no és un enter, s'indicarà "Indiqueu el nombre enter de bytes a l’atribut length d’<enclosure>.". Si el valor és zero, es mostrarà l'avís "L’atribut length d’<enclosure> val 0. Confirmeu el nombre real de bytes abans de publicar.". - Tipus MIME: S'ha d'utilitzar un tipus de mitjà vàlid. Si el tipus no és correcte, es llançarà l'error "Utilitza un tipus MIME vàlid com audio/mpeg.". Si s'utilitza un tipus que no correspon a àudio, es mostrarà l'avís "Aquest <enclosure> no està marcat com a àudio. Confirmeu que publicar un episodi de vídeo o un document és intencionat.".
- Coherència de l'extensió: El validador comprova si l'extensió del fitxer de l'URL coincideix amb el tipus MIME declarat. Si no coincideixen, s'emetrà l'avís "El nom del fitxer multimèdia i el tipus MIME discrepen (
‹extension›vs‹mime›).".
Format de dates i gestió d'episodis
L'ordenació cronològica dels episodis depèn directament de la data de publicació. Cada episodi ha d'incloure l'etiqueta <pubDate>. Si no hi és, es mostrarà l'avís "Afegeix <pubDate> perquè les aplicacions de podcast puguin ordenar i publicar aquest episodi de manera fiable.".
Les dates han de seguir estrictament l'estàndard RFC 2822. Si el format és incorrecte o conté valors impossibles, es mostrarà l'error "Utilitza una data RFC 2822 amb una data de calendari real i la zona horària, per exemple: Sat, 01 Apr 2023 19:00:00 +0000.". A més, tot i que s'accepten algunes zones horàries amb nom, es recomana utilitzar desfasaments numèrics. Si s'utilitza un nom de zona horària, es mostrarà l'avís "Aquesta zona horària nomenada és acceptada pero menys portable; és preferible un desfasament numèric com +0000.".
Pel que fa al volum de contingut, un canal ha de contenir almenys un episodi per ser vàlid. Si està buit, es mostrarà l'error "Afegeix almenys un episodi <item> al canal.". També cal tenir en compte que Apple Podcasts té un límit de visualització de 2.000 episodis. Si el feed supera aquesta xifra, es mostrarà l'avís "Aquest feed té ‹count› episodis; Apple Podcasts només mostra els 2.000 més recents.".
Com interpretar els resultats i corregir errors
Quan s'introdueix un feed XML a l'eina, el sistema realitza una anàlisi estàtica i mostra els resultats sota l'encapçalament "Diagnòstic del feed". Els resultats es desglossen en tres indicadors quantitatius:
‹count›errors‹count›avisos‹count›episodis
Si el feed està completament net, es mostrarà el missatge "No s'han trobat problemes estructurals.". En cas contrari, es llistarà cada incidència amb la seva ubicació exacta mitjançant el format "Línia ‹line›, columna ‹column›". Per facilitar la correcció, l'eina proporciona la ruta XPath de l'element afectat amb l'etiqueta "Corregir: ‹path›" i un enllaç directe anomenat "Anar a ‹path› a la línia ‹line›" per saltar directament al punt del codi on s'ha produït el problema. Si la llista d'errors és molt llarga, es pot truncar mostrant el missatge "Mostrant els primers ‹shown› de ‹total› problemes.".
Privacitat i límits del validador
El procés de comprovació es realitza de manera local. El feed del vostre pòdcast es comprova al navegador. BroBroGo no envia ni desa res, garantint que les dades no es comparteixen amb servidors externs.
L'eina té un límit de processament de fins a 500.000 caràcters per anàlisi. Si s'intenta validar un fitxer que supera aquesta mida, es mostrarà l'error "Aquesta eina accepta fins a ‹max› caràcters per prova.". Si el procés d'anàlisi es bloqueja o triga massa, es mostrarà el missatge "La validació ha trigat massa. Proveu-ho amb un feed més curt.". Si el procés falla per altres motius tècnics, es mostrarà "No s’ha pogut completar la validació.". Finalment, si s'executa l'ordre de validació sense haver introduït cap text, el sistema demanarà "Enganxeu l'XML del Podcast RSS abans de validar.".
Cal recordar que aquesta és una comprovació estàtica de l'estructura. L'eina no sol·licita el feed ni els URL de la portada o dels fitxers multimèdia de manera externa. Per tant, s'ha de comprovar per separat la disponibilitat remota dels fitxers, la descodificació de l'àudio i els criteris d'acceptació de cada directori de pòdcasts.
Preguntes freqüents (FAQ)
Què comprova aquest validador RSS de pòdcasts?
Comprova que l’XML RSS 2.0 estigui ben format, que inclogui els camps RSS obligatoris i els camps habituals de canal i episodi d’Apple Podcasts, a més dels atributs d’<enclosure>, els valors duplicats i les dates RFC 2822.
Comprova el fitxer d'àudio?
Comprova l’URL i la longitud en bytes de l’<enclosure>, el tipus MIME, els duplicats i si el nom del fitxer concorda amb el tipus. No baixa ni descodifica l’àudio.
Un feed que passi serà acceptat a tot arreu?
No. Les aplicacions de podcast poden afegir regles i comprovacions remotes. Passar significa que l'XML enganxat compleix les comprovacions estàtiques mostrades aquí, no que un directori l'acceptarà o publicarà.
On es processen les dades del meu feed de pòdcast?
El feed del vostre pòdcast es comprova al navegador. BroBroGo no envia ni desa res.