EPUBCheck OPF-004: feilaktig prefiksettributt
Oppdatert:
EPUBCheck OPF-004 er en advarselmeldinger: “Invalid prefix declaration: leading or trailing whitespace is not allowed.” Prefiksettributtet på pakkeelementet er ikke skrevet i syntaksen EPUB krever. Det attributtet kartlegger korte prefikser (slik som ibooks) til vokabulær URIs, og EPUBCheck rapporterer hver type syntaksfeil med sin egen variant av OPF-004.
Den offisielle meldingen
Invalid prefix declaration: leading or trailing whitespace is not allowed.
- Standard alvorlighetsgrad
- Advarsel. EPUB er fortsatt gyldig, men noe vil sannsynligvis forårsake problemer i noen leseapper. EPUBCheck avslutter med 0 med mindre du bruker --failonwarnings.
- EPUBCheck versjon
- 5.4.0
Typiske årsaker
- OPF-004: mellomrom eller linjeskift i begynnelsen eller slutten av attributtverdien; OPF-004a: et tomt prefiks, et kolon uten navn foran.
- OPF-004b: et prefiksnavn som ikke er et gyldig XML-navn (NCName), for eksempel ett som starter med et tall eller inneholder en skråstrek; OPF-004c: et mellomrom mellom navnet og kolonet, som i "ibooks : http://…".
- OPF-004d: ingen plass mellom kolonet og URI-en, som i "ibooks:http://…"; OPF-004e: en tabulator, linjeskift eller annen ulovlig hvitrom mellom prefikset og URI-en.
- OPF-004f: tilordninger separert av noe annet enn vanlig hvitrom, eller sammenklistret.
Hvordan fikse det
- Finn prefix-attributten på package-elementet i .opf-filen.
- Skriv hver mapping som prefikset navn, et kolon, ett mellomrom og vokabulær-URI, og separer mappingene med mellomrom, for eksempel
prefix="ibooks: http://vocabulary.itunes.apple.com/rdf/ibooks/vocabulary-extensions-1.0/ foaf: http://xmlns.com/foaf/spec/". - Fjern mellomrom i starten og slutten av verdien, gi hver mapping et navn som starter med en bokstav (bokstaver, sifre, bindestreker og understreker bare), og sett kolon rett etter navnet.
- Reserverte prefikser som dcterms, rendition og schema trenger ingen erklæring, så du kan ofte slette attributtet helt hvis det bare kartlegger dem.
Når det ikke er dette
Hvis syntaksen er riktig, men et prefiks ikke har URI eller en ugyldig en, er det OPF-005 eller OPF-006.
Også rapportert som
OPF-004a(feil): Invalid prefix declaration: found empty prefix.OPF-004b(feil): Invalid prefix "%1$s": must be a valid non-colonized name (aka "NCName").OPF-004c(feil): Invalid prefix declaration: prefix "%1$s" must be immediately followed by a colon character (":").OPF-004d(feil): Invalid prefix declaration: prefix "%1$s" must be separated by its URI with a space.OPF-004e(advarsel): Invalid prefix declaration: found illegal whitespace between prefix and URI.OPF-004f(advarsel): Invalid prefix declaration: found illegal whitespace between prefix mappings.
Begreper brukt her
Andre OPF meldinger
OPF-003Item "…" exists in the EPUB, but is not declared in the OPF manifest.OPF-005Invalid prefix declaration: URI for prefix "…" doesn’t exist.OPF-002The OPF file "…" was not found in the EPUB.OPF-006Invalid prefix declaration: URI "…" is not a valid URI.OPF-001There was an error when parsing the EPUB version: ….OPF-007Re-declaration of reserved prefix "…".
Kilder
Meldingstekst og alvorlighetsgrad fra EPUBCheck 5.4.0 (W3C, BSD-3-Clause). Forklaring av EpubCC.