EPUBCheck OPF-004: fejlagtig præfiksattribut
Opdateret:
EPUBCheck OPF-004 er en advarselsbesked: “Invalid prefix declaration: leading or trailing whitespace is not allowed.” Præfikset attribut på pakkelelementet er ikke skrevet i den syntaks, EPUB kræver. Den attribut mapper korte præfikser (såsom ibooks) til ordforråd URIs, og EPUBCheck rapporterer hver slags syntaksfejl med sin egen variant af OPF-004.
Den officielle meddelelse
Invalid prefix declaration: leading or trailing whitespace is not allowed.
- Standard alvorlighed
- Advarsel. EPUB er stadig gyldig, men noget vil sandsynligvis forårsage problemer i nogle læse-apps. EPUBCheck afsluttes med 0, medmindre du angiver --failonwarnings.
- EPUBCheck version
- 5.4.0
Typiske årsager
- OPF-004: mellemrum eller linjeskift i starten eller slutningen af attributværdien; OPF-004a: et tomt præfiks, et kolon uden navn før det.
- OPF-004b: intet mellemrum mellem kolonen og URI'en, som i "ibooks : http://…"; OPF-004c: et tabs, linjeskift eller andet ulovligt mellemrum mellem præfikset og URI'en.
- OPF-004d: ingen mellemrum mellem kolonet og URI'en, som i "ibooks:http://…"; OPF-004e: et tab, linjeskift eller anden ulovlig hvid plads mellem præfikset og URI'en.
- OPF-004f: opstillinger adskilt af noget andet end almindeligt hvid plads, eller sammensat.
Sådan retter du det
- Find prefix-attributten på package-elementet i .opf-filen.
- Skriv hver mapping som præfiksnavn, et kolon, et mellemrum og vocabular URI'en, og adskil mappinger med mellemrum, for eksempel
prefix="ibooks: http://vocabulary.itunes.apple.com/rdf/ibooks/vocabulary-extensions-1.0/ foaf: http://xmlns.com/foaf/spec/". - Fjern mellemrum i starten og slutningen af værdien, giv hver mapping et navn, der starter med et bogstav (kun bogstaver, cifre, bindestreger og understregninger), og sæt kolon lige efter navnet.
- Reserverede præfikser såsom dcterms, rendition og schema kræver ingen erklæring, så du kan ofte slette attributten helt, hvis den kun kortlægger disse.
Hvornår det ikke er dette
Hvis syntaksen er korrekt, men et præfiks har ingen URI eller en ugyldig en, er det OPF-005 eller OPF-006.
Også rapporteret som
OPF-004a(fejl): Invalid prefix declaration: found empty prefix.OPF-004b(fejl): Invalid prefix "%1$s": must be a valid non-colonized name (aka "NCName").OPF-004c(fejl): Invalid prefix declaration: prefix "%1$s" must be immediately followed by a colon character (":").OPF-004d(fejl): 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.
Termer der bruges her
Andre OPF beskeder
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
Beskedtekst og sværhedsgrad fra EPUBCheck 5.4.0 (W3C, BSD-3-Clause). Forklaring af EpubCC.