-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for EPUB Accessibility 1.1 conformance values #194
Comments
@HadrienGardeur As I'm adding this, I see that when @mickael-menu added support for parsing of the currently supported values, he added some variants which I are assume to correct for mistakes made during authoring of EPUBs - you can see them here: func a11yProfile(value string) manifest.A11yProfile {
switch value {
case "EPUB Accessibility 1.1 - WCAG 2.0 Level A",
"http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a":
return manifest.EPUBA11y10WCAG20A
case "EPUB Accessibility 1.1 - WCAG 2.0 Level AA",
"http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa":
return manifest.EPUBA11y10WCAG20AA
case "EPUB Accessibility 1.1 - WCAG 2.0 Level AAA",
"http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa":
return manifest.EPUBA11y10WCAG20AAA
default:
return ""
}
} Should I be adding the same corrections with http/https and www/no www to the new values as well? |
@chocolatkey that's not needed because we'll only parse the human readable string for these new values. What might be needed is additional escaping to ignore trailing white spaces. I'm not sure why "EPUB Accessibility 1.1 - WCAG 2.0 Level AA" is considered the same than
|
@HadrienGardeur So is this the correct login then for parsing the EPUB metadata? const (
// EPUB Accessibility 1.0 - WCAG 2.0 Level A
EPUBA11y10WCAG20A A11yProfile = "http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a"
// EPUB Accessibility 1.0 - WCAG 2.0 Level AA
EPUBA11y10WCAG20AA A11yProfile = "http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa"
// EPUB Accessibility 1.0 - WCAG 2.0 Level AAA
EPUBA11y10WCAG20AAA A11yProfile = "http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa"
// EPUB Accessibility 1.1 - WCAG 2.0 Level A
EPUBA11y11WCAG20A A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.0-a"
// EPUB Accessibility 1.1 - WCAG 2.0 Level AA
EPUBA11y11WCAG20AA A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.0-aa"
// EPUB Accessibility 1.1 - WCAG 2.0 Level AAA
EPUBA11y11WCAG20AAA A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.0-aaa"
// EPUB Accessibility 1.1 - WCAG 2.1 Level A
EPUBA11y11WCAG21A A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.1-a"
// EPUB Accessibility 1.1 - WCAG 2.1 Level AA
EPUBA11y11WCAG21AA A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.1-aa"
// EPUB Accessibility 1.1 - WCAG 2.1 Level AAA
EPUBA11y11WCAG21AAA A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.1-aaa"
// EPUB Accessibility 1.1 - WCAG 2.2 Level A
EPUBA11y11WCAG22A A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.2-a"
// EPUB Accessibility 1.1 - WCAG 2.2 Level AA
EPUBA11y11WCAG22AA A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.2-aa"
// EPUB Accessibility 1.1 - WCAG 2.2 Level AAA
EPUBA11y11WCAG22AAA A11yProfile = "https://www.w3.org/TR/epub-a11y-11#wcag-2.2-aaa"
)
func a11yProfile(value string) manifest.A11yProfile {
switch value {
case "EPUB Accessibility 1.0 - WCAG 2.0 Level A",
"http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a":
return manifest.EPUBA11y10WCAG20A
case "EPUB Accessibility 1.0 - WCAG 2.0 Level AA",
"http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa":
return manifest.EPUBA11y10WCAG20AA
case "EPUB Accessibility 1.0 - WCAG 2.0 Level AAA",
"http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa":
return manifest.EPUBA11y10WCAG20AAA
case "EPUB Accessibility 1.1 - WCAG 2.0 Level A":
return manifest.EPUBA11y11WCAG20A
case "EPUB Accessibility 1.1 - WCAG 2.0 Level AA":
return manifest.EPUBA11y11WCAG20AA
case "EPUB Accessibility 1.1 - WCAG 2.0 Level AAA":
return manifest.EPUBA11y11WCAG20AAA
case "EPUB Accessibility 1.1 - WCAG 2.1 Level A":
return manifest.EPUBA11y11WCAG21A
case "EPUB Accessibility 1.1 - WCAG 2.1 Level AA":
return manifest.EPUBA11y11WCAG21AA
case "EPUB Accessibility 1.1 - WCAG 2.1 Level AAA":
return manifest.EPUBA11y11WCAG21AAA
default:
return ""
}
} |
The
I don't see any code dealing with trailing white spaces either, I really think we need to take it into account, it's the equivalent of screwing up the URI by switching |
@HadrienGardeur So to confirm, here's the new switch statement for the metadata in OPFs: func a11yProfile(value string) manifest.A11yProfile {
switch value {
case "http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-a",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-a":
return manifest.EPUBA11y10WCAG20A
case "http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aa":
return manifest.EPUBA11y10WCAG20AA
case "http://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"http://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"https://idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa",
"https://www.idpf.org/epub/a11y/accessibility-20170105.html#wcag-aaa":
return manifest.EPUBA11y10WCAG20AAA
case "EPUB Accessibility 1.1 - WCAG 2.0 Level A":
return manifest.EPUBA11y11WCAG20A
case "EPUB Accessibility 1.1 - WCAG 2.0 Level AA":
return manifest.EPUBA11y11WCAG20AA
case "EPUB Accessibility 1.1 - WCAG 2.0 Level AAA":
return manifest.EPUBA11y11WCAG20AAA
case "EPUB Accessibility 1.1 - WCAG 2.1 Level A":
return manifest.EPUBA11y11WCAG21A
case "EPUB Accessibility 1.1 - WCAG 2.1 Level AA":
return manifest.EPUBA11y11WCAG21AA
case "EPUB Accessibility 1.1 - WCAG 2.1 Level AAA":
return manifest.EPUBA11y11WCAG21AAA
default:
return ""
}
} Regarding the trimming of white space, that is already deal with for all metadata here |
Looking good to me. |
In a recent PR on the RWPM repo (readium/webpub-manifest#109), we introduced additional values for accessibility conformance that cover all the values currently supported in EPUB Accessibility 1.1.
To stay up to date with that work, we need to update the current parser to support all of these new values.
As a complementary feature, I'll also open an issue in the
ts-toolkit
to provide a helper that converts these URLs into a human-readable string.The text was updated successfully, but these errors were encountered: