Come abbiamo visto in più occasioni, Sigil presenta al suo interno un test di convalida per EPUB, il FlightCrew. Questo test è complementare (e non alternativo) al test di convalida ufficiale, lo EpubCheck, e proprio la volta scorsa abbiamo visto come e quando utilizzarli, in modo da ottenere da entrambi il miglior risultato: FlightCrew in fase di lavorazione, EpubCheck al termine dei lavori, appena prima di cominciare a distribuire il nostro e-book.
FlightCrew, tra le altre cose, nasce col proposito di correggere ciò che i suoi autori consideravano (e considerano tuttora) un difetto di EpubCheck, ossia la scarsa comprensibilità, agli occhi di un non iniziato, degli errori segnalati da EpubCheck. Il che, oggettivamente, è vero: EpubCheck utilizza spesso una terminologia che è solo leggermente più chiara rispetto a quella della Microsoft, quando si tratta di segnalare un errore. Inoltre, tende a farlo con un lessico e una sintassi ridotti all'osso non molto lontani da “io Tarzan, tu Jane”. L’errore si capisce, se si ha esperienza nel settore, ma per chi si avventura per la prima volta nel magico mondo degli EPUB la comprensione può non essere così immediata.
FlightCrew propone dunque una forma più chiara e colloquiale nella segnalazione di errori, almeno per quanto sia possibile farlo; diviene così più semplice capire il messaggio di errore, ma ciò non significa automaticamente che si riuscirà anche a capire quale sia l’errore, dove sia e come poterlo correggerlo, soprattutto se la nostra conoscenza dell’inglese e della struttura interna di un EPUB è approssimativa (o assente). Vediamo dunque una breve lista degli errori più comuni, che ci saranno segnalati dal test di convalida FlightCrew all'interno di Sigil. Assieme all'errore, troverete anche due parole su come correggerlo.
Premessa generale, la forma in cui ci sono presentati gli errori da Sigil. Ogni errore ci apparirà nella finestra “Risultati della validazione” con una struttura tripartita, cioè divisa in tre riquadri.
- File contiene il nome del file in cui l’errore è stato trovato.
- Riga contiene il numero della riga in cui l’errore è stato trovato, all'interno del file segnalato prima. Il numero corrisponde a quello che ci appare utilizzando la visuale “codice”, nel riquadro centrale di Sigil; in questa visuale, ogni riga di codice sarà numerata.
- Messaggio, infine, è una descrizione dell’errore, espressa in termini abbastanza comprensibili.
Detto questo, passiamo ai messaggi di errore più comuni.
This resource is present in the OPF <manifest>, but it's not reachable (it's unused).
Errore estremamente comune, in fase di lavorazione. Significa che il nostro EPUB contiene un file che noi non abbiamo usato, per esempio una immagine che all'inizio avevamo inserito in una pagina, ma poi abbiamo deciso di togliere: se abbiamo solo cancellato il riferimento all'interno della pagina, ma non abbiamo cancellato l’immagine dalla cartella “Images”, Sigil ci segnalerà che quel file non è usato nel nostro documento. In questi casi, possiamo cancellare il file non utilizzato, se davvero non ci serve, oppure dovremo provvedere a inserire da qualche parte nel nostro e-book un riferimento a esso, se intendiamo conservarlo.
This resource is reachable but not present in the OPF <manifest>. "Reachable" means that a reference of some kind that points to this resource exists in the epub.
È il gemello dell’errore precedente e si riferisce al problema opposto: nel nostro e-book è presente il riferimento a un qualche file, che però non esiste. Probabilmente, in questo caso, abbiamo cancellato il file, ma ci siamo dimenticati di cancellare anche i riferimenti a quel file, all'interno di una qualche pagina del nostro EPUB. Si può correggere reinserendo il file latitante, oppure cancellando anche il riferimento a quel file.
ID value 'heading_id_17' is not unique.
Il termine colorato in rosso cambierà a seconda dei casi. L’errore commesso stavolta è l’utilizzo di uno stesso nome, per due o più ID. Lo ID è una specie di targa, che possiamo applicare a un tag, per poterci poi riferire a esso in modo più semplice e diretto in un altro punto del codice; come ogni targa, è necessario che lo ID sia unico. Se assegniamo a due elementi una stessa targa, abbiamo un errore. In questo caso, basterà assegnare uno ID diverso a ogni elemento.
The "profile" attribute is not an allowed attribute of the <package> element.
Anche in questo caso, i nomi colorati in rosso saranno diversi a seconda dei casi. Questa classe di errori ci appare quando abbiamo assegnato a un particolare elemento (il secondo termine in rosso) un attributo (il primo termine in rosso) che non era permesso utilizzare in quel particolare punto. Molti tag possono infatti essere modificati, assegnando loro uno o più attributi, ma non tutti questi attributi sono accettati in uno EPUB: il colore, ad esempio, è bene attribuirlo usando il foglio di stile CSS, invece di appiccicarlo come elemento di un tag. In questo caso, dovremo eliminare l’attributo “illegale”.
attribute 'size' is not declared for element 'font'.
Errore gemello del precedente, i termini colorati in rosso sono quelli che possono cambiare a seconda dei casi. Stavolta abbiamo dimenticato di specificare un attributo (il primo termine in rosso) per un particolare elemento (il secondo termine in rosso), che richiedeva invece una precisazione sul modo in cui utilizzarlo. Per correggere, dovremo aggiungere l’attributo richiesto.
The <language> element is missing.
Come al solito il termine in rosso può cambiare a seconda dei casi. Stavolta l’errore si trova nel file content.opf e si riferisce a un metadato che avremo dovuto inserire, ma non abbiamo inserito: per esempio la lingua in cui è scritto il nostro EPUB (italiano, inglese, eccetera), oppure il titolo del nostro e-book, l’autore, eccetera. Possiamo correggerlo con l’editor dei metadati, aggiungendo gli attributi richiesti.
The <item> element's "media-type" attribute has value "font/truetype", but the file's media type is "application/x-font-ttf".
Questo non è strettamente un errore, ma una richiesta di stile, o una proposta che non potrete rifiutare, per quanto riguarda il tipo di font che avete utilizzato. In materia di font, al momento non esiste uno standard ufficiale, per gli EPUB, ma di fatto il formato “application/x-font-ttf” agisce come se fosse uno standard; se e quando avremo una standardizzazione di questo elemento, è dunque altamente probabile che sarà scelto questo, dato che in ambito industriale ne fa già le veci. Di conseguenza, Sigil e FlightCrew vi invitano fin da adesso ad adattarvi al sistema.
element 'svg' is not allowed for content model.
A seguire, ci sarà poi una lista di tag abbastanza lunga, che ho tagliato per ragioni di spazio. In questo caso, avete inserito nel vostro EPUB un elemento SVG, che di solito consiste in una immagine vettoriale: una immagine, cioè, che si può allargare o restringere per adattarsi alla dimensione dello schermo, in teoria senza perdita di qualità. Ottima scelta per un e-book, soprattutto nel caso di un fumetto, ma con un problema: non potete utilizzare un elemento <svg> direttamente all'interno del tag <body> di un documento. O meglio, potete, ma vi sarà segnalato come errore, perché non è ammesso in questa posizione. Per risolvere, basterà racchiudere il tag <svg> in un altro elemento, come ad esempio <div>: in questo modo non sarà più attaccato direttamente a <body>, ma sarà diventato un discendente di <div>, e n questa forma non vi darà più problemi.
Mi scuso se posto un quesito in modo incongruo, volendo entrare nel mondo dell'ebook rispetto al quale vedo in questo sito così tanti interessanti consigli, ho tentato di scaricare iBooks sul mio iPhone 3 ma non me lo sincronizza perché dice che il software del cellulare non è abbastanza aggiornato. Secondo problema la mia versione di iTune, la 10.6, non contempla la voce "libri" nelle librerie. Un povero utilizzatore non esperto di queste tecnologie cosa può fare a questo punto?
RispondiEliminaGrazie, Luca.
Per il primo problema, puoi solo procedere con l'aggiornamento del sistema operativo del cellulare, se ne hai la possibilità (e se ne sei sicuro: la versione più recente potrebbe richiedere più risorse di quante il cellulare ne possieda). In alternativa a iBooks, puoi provare con Stanza: stando alla sua descrizione, richiede un sistema operativo dallo iOs 3 in su, per cui potrebbe andare meglio nel tuo caso. Lo trovi qui:
Eliminahttps://itunes.apple.com/gb/app/stanza/id284956128?mt=8&affId=1543216&ign-mpt=uo%3D4
Anche nel caso di iTunes, la prima strada che puoi tentare è quella di aggiornare il programma, se ne hai la possibilità. Se la voce "libri" non compare nella barra laterale, puoi anche provare ad attivarla dalle "Preferenze" -> "Generali" e selezionare la voce "libri" nella sezione "Mostra... ammesso che ci sia, ovvio. Teoricamente dovrebbe esserci dalla versione 10, ma non è mai garantito che la teoria corrisponda alla pratica...
Grazie Adriano, ho provato a verificare con iTune gli aggiornamenti ma mi risponde che ho già il sistema più aggiornato sul iphone, temo che essendo un 3G e non un 3GS io cominci ad essere tagliato fuori dalle novità in fatto di app. Più di una volta ultimamente non ho potuto sincronizzare applicazioni scaricate dallo store di Apple perché mi dice che richiedono sistemi più aggiornati, anche Stanza non funziona, mi sa che debba rassegnarmi a procurarmi un ipHone più recente...
EliminaRichard Stallman ti direbbe che questo, come tanti altri, è un esempio del fatto che la Apple pratica allegramente la " planned obsolescence" per i suoi prodotti, ossia produce programmi ad alta deperibilità, che nel giro di un paio di generazioni non sono più supportati dai suoi prodotti; questo per spingere all'acquisto di modelli sempre nuovi.
EliminaPiù semplicemente, io la definisco una normale operazione di mercato, applicata in svariati campi da svariate aziende (il fine ultimo della "moda" è quello di spingerti ad acquistare nuovi vestiti, anche se quelli vecchi andrebbero ancora benissimo, per esempio): lascio ai clienti il giudizio se sia una pratica buona o cattiva.
Ci sono altre due applicazioni che potresti provare e che, almeno in teoria, dovrebbero funzionare su sistemi operativi dal 3.0 in poi: Wattpad eBook Reader e Amazon Kindle iPhone App. Non so dirti se funzionino davvero o come funzionino (inteso come qualità), ma puoi sempre fare un tentativo...
empty content is not valid for content model ...aiuto, sto validando l'epub con sigil
RispondiEliminae salta sempre fuori questa scritta...cosa devo fare?
cristina
Dovrebbe essere indicato anche il numero della linea in cui l'errore è stato localizzato. A ogni modo, significa che hai lasciato vuoto qualcosa ("empty content"): a seconda dei casi, potrebbe essere l'attributo di un tag.
EliminaBuonasera Adriano, sono in fase di validazione del mio ebook, realizzato con sigil, ma mi da un Errore che non riesco a risolvere, OEBPS/content opf Riga 126 - Messaggio = The attribute value expected oppure whitespace .Come posso fare?Grazie in anticipo.
RispondiElimina