Skip to content
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

CFI Validation #150

Open
rdeltour opened this issue Oct 15, 2013 · 9 comments
Open

CFI Validation #150

rdeltour opened this issue Oct 15, 2013 · 9 comments
Labels
priority: low To be processed when time allows spec: EPUB 3.x Impacting the support of EPUB 3.x specifications status: needs review Needs to be reviewed by a team member before further processing

Comments

@rdeltour
Copy link
Member

From markus.g...@gmail.com on December 22, 2011 11:31:34

Add validation of CFI links:
a) syntactical validity
b) resolve

Original issue: http://code.google.com/p/epubcheck/issues/detail?id=150

@mattgarrish
Copy link
Member

I'm not sure this issue matters anymore. We've removed required support for authored epubcfi in 3.2, as it's unlikely they'll ever be used except by reading systems. I'd propose closing it.

@rdeltour
Copy link
Member Author

We've removed required support for authored epubcfi in 3.2

Yes, I agree. Let's close as wontfix

@rdeltour rdeltour added status: wontfix The issue is rejected due to limitations (of scope or dev resources) and removed status: needs review Needs to be reviewed by a team member before further processing labels Nov 13, 2018
@rdeltour rdeltour reopened this Nov 13, 2018
@rdeltour
Copy link
Member Author

well, maybe I was too quick in closing this: what should we do if we encounter CFIs in a publication however? If they're accepted, then it would make sense to validate them? I don't remember what 3.2 says about that.

@rdeltour rdeltour added the status: needs review Needs to be reviewed by a team member before further processing label Nov 13, 2018
@mattgarrish
Copy link
Member

what should we do if we encounter CFIs in a publication however?

But what's the reality of that ever happening in a content document at this point? That's why support for authored CFIs was dropped, as reading systems aren't supporting them and there's no apparent likelihood of that changing.

There are only two places left I can think of where a CFI might be encountered during validation:

  • in open annotation data files
  • in a rendition mapping document

If you want to tie this to realizing support for either of those, then it might make sense, but they're both also far from being realities. It'd be a really, really, really low priority, I suspect. (I'm personally not holding out hope that the satellite specs have much of a future anymore.)

@rdeltour
Copy link
Member Author

rdeltour commented Nov 13, 2018

Yes, I definitely agree with you on the state of things.

Unfortunately EpubCheck is used by almost everyone as a strict validator and not as a linter. In other words, its goal is not to report nonsensical content but just non-conforming content.

I would argue it would be more useful to actually warn about the presence of CFI links, but if it's not a SHOULD NOT in the spec then unfortunately we can't do that.

I'm leaning towards introducing a "soft" warning (a USAGE or INFO message) saying that CFI were detected and will not be checked further. That way, it serves both as a warning for no-longer-supported CFIs, and as an information on our non-validation of CFIs. WDYT?

@mattgarrish
Copy link
Member

saying that CFI were detected and will not be checked further

Right, we shouldn't add any language that isn't in the specification (like use being discouraged, when the spec is just completely silent on them), so noting and bailing out on verifying seems like a good direction for handling them.

@larscwallin
Copy link

Hi guys,
We (Colibrio) are planning to propose support for EPUBCFI's in Media Overlays. This would be a very helpful addition to the "talking book" aspect of EPUB production / post-production as it would make it possible to add narration etc to existing publications without modifying their content markup.
I know we should have been vocal during the 3.2 process but better late than never right.

We have made a TypeScript EPUBCFI parser with validation built in which we are offering as open source to help reading systems and web annotation servers offer support for EPUBCFI's. We have not had time to put it on GitHub yet but it is on its way. If you want to use it in EpubCheck i will speed this up.

@rdeltour rdeltour added priority: low To be processed when time allows spec: EPUB 3.x Impacting the support of EPUB 3.x specifications and removed status: wontfix The issue is rejected due to limitations (of scope or dev resources) labels Feb 26, 2019
@danielweck
Copy link
Member

danielweck commented Sep 25, 2023

Hi @larscwallin

We have made a TypeScript EPUBCFI parser with validation built in which we are offering as open source to help reading systems and web annotation servers offer support for EPUBCFI's. We have not had time to put it on GitHub yet but it is on its way.

Is your CFI code now open-source? (parser + generator?)

I'm gathering information about existing JS/TS implementations (various degrees of correctness / test coverage):

Thank you! Daniel

@larscwallin
Copy link

larscwallin commented Sep 26, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority: low To be processed when time allows spec: EPUB 3.x Impacting the support of EPUB 3.x specifications status: needs review Needs to be reviewed by a team member before further processing
Projects
None yet
Development

No branches or pull requests

4 participants