View Single Post
Old 02-26-2018, 03:37 PM   #365
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 8,959
Karma: 6361444
Join Date: Nov 2009
Device: many
FWIW, I took a look at the Daisy ACE github project and searched for epubcfi and what they report is an specific filename/href followed by a nodepath in that file with no assertions at all. These are not legal epubcfis according to the spec.

Instead they remove the entire content.opf and its spine redirection nonsense and just tell you which file to use. Effectively, they remove everything up to and including the first ! point of the epubcfi and just provide the node path after the proper file has been identified.

That way they are not limited to files directly listed in the spine (things like the nav may not be there, etc).

Their approach actually makes more sense and it would make the conversion code easier as we could ignore the whole spine redirection piece of the code.

I tried to put lots of comments in cfi_convert.py so hopefully you can follow along and understand what is going on and what a nodepath by comparing it to the example part of the idpf spec document here:

http://www.idpf.org/epub/linking/cfi...-path-examples
KevinH is online now   Reply With Quote