readium / readium-sdk

A C++ ePub renderer SDK
BSD 3-Clause "New" or "Revised" License
385 stars 164 forks source link

SMIL Media Overlays skippables and escapables (epub:type values) #270

Open danielweck opened 7 years ago

danielweck commented 7 years ago

https://github.com/readium/readium-sdk/blob/develop/ePub3/ePub/media-overlays_smil_model.cpp#L1173

        // http://www.idpf.org/epub/vocab/structure
        // http://www.idpf.org/epub/30/spec/epub30-mediaoverlays.html#sec-skippability
        const std::vector<string> MediaOverlaysSmilModel::_Skippables = {
                "sidebar",
                "practice",
                "marginalia",
                "annotation",
                "help",
                "note",
                "footnote",
                "rearnote",
                "table",
                "table-row",
                "table-cell",
                "list",
                "list-item",
                "pagebreak"
        };

        // http://www.idpf.org/epub/vocab/structure
        // http://www.idpf.org/epub/30/spec/epub30-mediaoverlays.html#sec-escabaility
        const std::vector<string> MediaOverlaysSmilModel::_Escapables = {
                "sidebar",
                "bibliography",
                "toc",
                "loi",
                "appendix",
                "landmarks",
                "lot",
                "index",
                "colophon",
                "epigraph",
                "conclusion",
                "afterword",
                "warning",
                "epilogue",
                "foreword",
                "introduction",
                "prologue",
                "preface",
                "preamble",
                "notice",
                "errata",
                "copyright-page",
                "acknowledgments",
                "other-credits",
                "titlepage",
                "imprimatur",
                "contributors",
                "halftitlepage",
                "dedication",
                "help",
                "annotation",
                "marginalia",
                "practice",
                "note",
                "footnote",
                "rearnote",
                "footnotes",
                "rearnotes",
                "bridgehead",
                "page-list",
                "table",
                "table-row",
                "table-cell",
                "list",
                "list-item",
                "glossary"
        };

This seems wrong. Why are table or list items de-facto skippables?!

danielweck commented 7 years ago

References: http://www.idpf.org/epub/31/spec/epub-mediaoverlays.html#sec-skippability http://www.idpf.org/epub/31/spec/epub-mediaoverlays.html#sec-escabaility https://idpf.github.io/epub-vocabs/structure https://www.w3.org/TR/dpub-aria-1.0/#roles