EPUB 3 Working Group F2F, 2nd Day — Minutes

Date: 2022-09-13

See also the Agenda and the IRC Log


Present: Ivan Herman, Wendy Reid, Gregorio Pellegrino, John Roque, Murata Makoto, Shinya Takami (高見真也), Symon Flaming, Dave Cramer, David Hall, Toshiaki Koike, Masakazu Kitahara, Bill Kasdorf, Brady Duga, Dan Lazin, George Kercher


Guests: Maurice York

Chair: Dave Cramer, Wendy Reid, Shinya Takami (高見真也)

Scribe(s): Dave Cramer, David Hall, Brady Duga, Wendy Reid


1. Digital Publishing Salon.

Wendy Reid: Digital Publishing Salon was this morning.
… productive conversation.
… surprised by how many attended.
… renewed interest in what we’re up to.
… a couple of themes came out.
… format was talking about problems, then further explorations or potential solutions.
… six main areas of interest.

  1. complex content and a11y.
    music, mathml, interactivity.
    and building accessible content.
  2. community engagement.
  3. Tools.
  4. Addressability, annotations…
  5. Rights and distribution, libraries, etc.
  6. Digital-first practices.

… lots of interest in archiving.
… lots of challenges with tools, producing accessible files.
… how can people produce better content.
… Mateus and I have not yet gone over the notes to document themes.
… will probably need another session.
… not yet enough for a new charter for a digipub group.
… need to do more homework.
… any questions?

Bill Kasdorf: the figma (virtual whiteboard system) worked pretty darn well.
… and that’s hard to do.

Wendy Reid: I’m exporting that content to CSV and make it more accessible.

Murata Makoto: FYI: SC34/JWG7 is interested in long-time preservation of EPUB.
FYI: This is extracted from the JWG7 recommendations:

Call for leadership for PWI on EPUB long-term preservation (EPUB/A) Mindful of ISO/IEC TS 22424-1:2020 Digital publishing - EPUB3 preservation - Part 1: Principles produced by JTC 1/SC 34, JWG7 requests the SC34 Secretariat invite nominations of a candidate project editor to lead the preparation of a draft Preliminary Work Item (PWI) for this standard. Ideally, this person will have expertise in digital preservation and/or EPUB production. After th[CUT].

Wendy Reid: MURATA, can you elaborate on what you posted?

Murata Makoto: interest in digital preservation from JWG7.
… this is relevant for archiving, which you mentioned.

Ivan Herman: is there already anything technical done, or is it only the intention?

Murata Makoto: There is a technical specification.

Wendy Reid: any questions?

David Hall: how would we find out about a follow-up session.

Wendy Reid: I have all the emails.
… we’ll send out notes.
… don’t want to take too much advantage of the list.
… you could join the CG or the WG.

Bill Kasdorf: I’m thrilled to hear of people who want to be involved.

2. issues from the hackaton.

Wendy Reid: let’s talk about issues from the hackathon.
… I looked at the issues list, matt filed a bunch of issues.

Gregorio Pellegrino: yesterday I tested the Kobo ereader.
… not all tests were simple to understand, I had to ask the test developer.
… in the reading solution, I see EPUB listed with title.
… in JSON I see the ID, so hard to match.
… I can see, e.g., cmt-svg-css, but in interface I don’t see ID/file name.
… in JSON we have three values for each test, true|false|null.
… I use true if test passes, false if test files, null if I can’t run the test or if it is not applicable.
… do we need another value?
… for example, media overlays are not relevant because e-reader does not have a speaker.

Ivan Herman: if descriptions are not understandable, submit a PR with changes, or file an issue.
… in some cases, we may have tests where the test might be slightly different for reasons of a11y.
… for null, we introduced that for “not applicable”.
… in some cases you found problems.
… it’s ok to leave as null.
… unless we can locate what the problem is.
… not applicable is fine.
… we need to translate this to a report to the (director).
… for the ID, that’s a tougher one.
… can there be two tests with same title? Maybe.
… sometimes it’s difficult.

Gregorio Pellegrino: add ID to the title so it’s searchable?

Wendy Reid: why can’t id be titles?

Dan Lazin: readability.

Wendy Reid: why do the titles have to be readable?

Dan Lazin: reports.

Ivan Herman: with both, it gets complicated in the report.
… we can think about it.

Wendy Reid: for test runners, it’s a problem–it’s extra work.
… what does this title mean for the test I’m doing? You have to look at the file.

Gregorio Pellegrino: for each line, search for the epub.

Ivan Herman: the report JSON is ordered by notification time.
… that’s because one of the testers at EDRLab is doing that.
… if a new test is added, or if there’s a change.
… so they would have to find the new reports.
… so there’s a modification date in the metadata which we keep valid.
… and the JSON is ordered according to the modification.
… ordering the JSON alphabetically is easier, maybe.

Gregorio Pellegrino: it took me 4 hours to do 75% of tests. all tests would take 5 hours. That is not that bad.

Wendy Reid: could we add test IDs to the titles?
… then we could strip from report?

Ivan Herman: then I’d have to write a script to…
… there’s a test with a Hebrew title.
… that title is necessary as is.

Dave Cramer: One possible concern with the test id in the title, I wonder if important information would be truncated in the RS display.

Gregorio Pellegrino: in the JSON report, for each report having id for title and result…

Shinya Takami (高見真也): adding ID to title for each test, just tried to use existing epubs in my reading system.
… it’s a little bit complicated by English names.
… it’s easier to recognize just a number.

Wendy Reid: most of tests start with three-letter “area code” basically.
… what if we did a 3-letter ID then an number.

David Hall: Suggestion: ‘cnt-xhtml-support’ in the content itself?

Wendy Reid: CSS-001, CSS-002.

Ivan Herman: those ids refer back to the spec, and are derived from the sectioning.

Wendy Reid: don’t need the number in the test ID, only in the title.

Dan Lazin: short id and long id.
… let’s take this up in another context.

Ivan Herman: we could modify the report so it’s keyed by the ID, but instead of 3-value, it would have result and title.
… we would have to rewrite the test files.
… let me think about the implications.

Gregorio Pellegrino: other things i’ve seen.
… since I was testing B&W/greyscale device.
… all tests based on colors didn’t work.
… for example CSS applied to SVG.
… and SVG viewport.
… “if you see green test passes”.
… because green cannot be distinguished from red in a greyscale device.
… could we use border styles or something?

Ivan Herman: the kobo player, is it BW or greyscale?

Wendy Reid: greyscale.

Ivan Herman: so doing the test as greyscale should help.

Brady Duga: (pretty good joke that I can’t transcribe).

Gregorio Pellegrino: last thing, the L->R and R->L change.
… it doesn’t change the page in one direction or another.
… hard to tell if it’s changing to R or L.
… it is defined by device.
… I tap on R and it goes to the next page.

Wendy Reid: it’s responding to the directionality.
… if you tap on the ?? then ??, but if you tap on the ?? then ??
… any other comments about tests?

George Kerscher: I cloned repo and went to the tests and saw instructions.
… is there a reason the epub-s aren’t built for everyone?

Ivan Herman: they are built.

Wendy Reid: all of the epubs are in the “tests” folder.
… not in the folders for the un-packaged tests.

GeorgeK: did we say we were going to put something in the instructions on how people using screenreaders can report?

Ivan Herman: gpellegrino will go through the reports to help define what screenreader users should hear.

GeorgeK: I can help with thorium with nvda.
… this will be useful for our testing report.

Wendy Reid: will we have to do this separately from the main report?

Ivan Herman: I don’t think so… we can have a screenreader as a reading system.

David Hall: if we run through submitting prs as we make progress is that appropriate?

Ivan Herman: yes.

David Hall: if we come up with a test, if a test calls for a certain styling, the user might be able to override that with a theme.
… should that be discussed in wg meetings?

Ivan Herman: yes.
… but even if I change background in ibooks, background colors in an SVG should not change.

David Hall: not aware of a test with this issue, but it might happen.

Wendy Reid: it’s not just themes, it’s all the reading system settings.
… if I think a setting might affect the rendering, I add an instruction in the test–reset to publisher reset.

Dan Lazin: we are not testing the RS, just the implementability of the specification.
… I did lots of Apple books test yesterday. Desktop fails the tests about vertical scroll direction–it’s always paginated.
… mobile version can do it.
… so the test passes because you understand the feature.

Ivan Herman: that means we have three pull tests from yesterday.
… what are the overall results?
… from the CR perspective are we in a good place?

Dan Lazin: we don’t have that much data yet.
… I got through most of apple macos.
… brady is thru 3 platforms of google.
… and some progress on thorium and kobo.
… we don’t have enough to see horizontally.
… all the obvious stuff is safe.
… non-obvious stuff is failing a lot.
… for example.
… . apple books is quite… well-polished.

Dave Cramer: .. 69 true, 39 false, 45 I haven’t gotten to.

Dan Lazin: lots of fails on recent things, like URL parsing which is new to the spec.

Ivan Herman: what we have done is useful.

Gregorio Pellegrino: question to Apple.
… since we know that some platforms do tricks on epubs will ingesting.
… for example google,.
… is it the same to test file via sideloading?
… the best thing would to be test via the ingestion pipeline if it changes something.

Dan Lazin: from publisher point of view, that’s important, but that’s not the goal of the working group.
… the WG cares about the implementability of the feature.
… some onix tests don’t pass in apple sideloading, but no one would use onix on a sideloaded epub.

Wendy Reid: any other testers have comments?
… thanks to yesterday’s testers… we fixed a bunch of tests.
… and I updated some language.
… if you run a test, and if you’re not sure of the expected results, open issues in the test repo.

Dan Lazin: there is also an epub-testing channel in w3c slack.

Ivan Herman: anyone can ask to be added to the Slack.

Wendy Reid: this link should help you get on the Slack: https://www.w3.org/slack-w3ccommunity-invite.

Dan Lazin: And then just message, say, me, and I/we can add you to #epub-testing in Slack (or if you understand Slack you can probably just add the channel yourself).

Wendy Reid: any other comments about testing.

Dan Lazin: we have 90% coverage.
… but it will be harder to add new tests to existing implementation reports.

Wendy Reid: we can help keep track of that.

Ivan Herman: what about missing tests?

Ivan Herman: need 2 tests for MO.
… marisa knows that stuff.
… zheng will do the package ones.

Wendy Reid: we’re in good shape.

Ivan Herman: how do we get someone at Amazon to run tests?

Wendy Reid: ask Terra who is on a11y team at Amazon.

Gregorio Pellegrino: she’s put some DAISY tests in the pipeline.

Ivan Herman: if we have tests run by Apple/Google/Thorium etc we are already covering a good bit of market.

3. Testing with CJK implementers.

Wendy Reid: More discussion around testing. We want to make the tests as usable by as many people as possible.
… all tests written in English currently.
… Should we do translation, in particular CJK.

Shinya Takami (高見真也): For Japanese, it is a bit hard to do the tests, we want to encourage the testing activities. Translation is a good idea - esp for reading systems built in Japan.
… an explanation for each test would be helpful. Each place has a discussion of criteria for passing.
… Would be ok to have translation of a description of the test result captured outside the epub itself.

Ivan Herman: There are some tests that have a fairly long description. Many tests are only two or three sentences, but there are others that the description of what the tester should look at is a description.

Wendy Reid: We could have the ‘test passes’ statement - need to know how it looks.
… If we just need to do a spreadsheet where we have the test ID, statement, then we should be good.
… generating the spreadsheets should be easy, what we need support with is finding translators to translate the statements.

Ivan Herman: Just to be clear, the first job is to generate the spreadsheet.

Brady Duga: If it is a reasonable number will look into getting translations done.

Wendy Reid: make a note for the images for the css tests.

4. Inappropriate “rendition:flow” usage for vertical scrolling manga (Webtoon) (issue epub-specs#2412)

See github issue epub-specs#2412.

Wendy Reid: .

Wendy Reid: Webtoons.

Shinya Takami (高見真也): From last year or so, in Japan, webtoons gaining popularity.
… publishers creating webtoons for their content.
… current specifications lacking identifiers for their content. Apple has guidelines for producing EPUBs, and extended guidelines.
… includes a property to identify a webtoon. Reading systems must ignore the flow property if fixed layout. Webtoons consist of fixed layout.
… amazon will follow the stated behavior for producing guidelines.
… webtoon services have not used EPUBS. In Japan we have various formats, and want to use EPUB 3 format also.
… Want to discuss a reasonable solution for Webtoos for identification.
… One option is to use a custom property identification in OPF file. Meta-name property.
… legacy format for epub3, so not good style.
… another option current mistaken behavior by apple / amazon - could change epub3 spec to turn behavior optional.
… fixed-layout could be identified. want to discuss for reasonable solution.

Wendy Reid: two options:.
… add a new metadata property for webtoons specifically.
… or we remove the fixed-layout caveat on rendition:flow from the specification, and let that exist for any type of content.

Brady Duga: we could wait for after 3.3, because of where we at in the specification, but that leaves the meaning unknown.

Ivan Herman: First, put on my w3c hat - small change, does not affect existing tests, September we still have the time to make the change, provided we have additional tests and client support. (This is from an administrative point of view).
… however, concern over rushing into something. There is a question that would come up later towards the end of the working group: how do we imagine and plan for changes after the WG is finalized?
… the current approach is that after this working group we create a maintenance WG. Has the right to add new features (need testing, etc), but does not mean we have to go through 2yrs work to add the feature.

David Hall: other working groups have followed this possibility. It’s up to us to say how self disciplined we are. rendition can envisage doing it this way. we would have more experience and more thorough.
… have to be careful not to rush into stuff.

Wendy Reid: Also understand Brady’s concern. It feels wrong, wish we had known about this earlier as a use case.
… the way we have looked at rendition:flow is under specified. we do know there are reading systems out there that have a reading mode of vertical scroll.
… The spec is fairly vague and may be in our favor in this instance. the reading system should present the content from one continuous flow from spine item to spine item.

Brady Duga: I don’t know what this actually means.

Wendy Reid: I think that making this change - we’re also removing an inconstancy - don’t see why we don’t need to have that.
… feels removing the don’t do this is an ok change to make. Because we are still in the CR period, we will remove anything that is not implemented.
… it also addresses a need in the community that if we don’t address it, community may do it a different way, and then we don’t have a way.

Brady Duga: would rather have a non-standard spec in an epub for now. If we don’t define a rendering model, define how it actually behaves, then it’s not really a standard. Next year we sit down, and open up a client and we then try and copy the behavior.
… This was a mistake early on as following client reader implementation. What does it mean? Do I display it as they are? what if we have variable size pages? fit to width? etc.
… need a rendering model to be proposed, and we want to understand - what does this mean when applied to fixed layout, what are all the use cases. We would end up with a Wild West.

Shinya Takami (高見真也): The first I proposed is to add a custom meta-data. We should do one common metadata. Discuss with various companies to use the metadata commonly. it’s not option. Another proposal is to add to the specification.
… Is description ok? This is an other option.

Wendy Reid: See Definition of rendition:flow.

Wendy Reid: we do have different rendition flow examples. maybe we should bring over to RS. We should provide some guidance as to what this looks like for fixed layout.
… This isn’t a perfect description of how this renders. We have made decisions before to not be super descriptive. we can put a bit of effort into how this would render and look.
… don’t think this is a huge change to make. If we add a custom metadata field, this won’t make it into the specification either.

Dave Cramer: Want to offer some cautionary advice: Share’s Brady’s concern around rendering. We have faced challenges around fixed layout properties and what they mean. Don’t want future groups to have the same issue. We want interoperability - be clear of our expectations around reading systems.

Gregorio Pellegrino: Try to understand - what if we say in the Japan market they can use the metadata to express as a webtoon. why in the standard do we not define at the moment. this is a way that is currently used in Japan.

Ivan Herman: This comes back to what I said - this is between reading systems and publishers, that for me is what incubation is all about. people may enumerate a few times to settle down, and in a year in combination with the WG, we can say there is an agreed upon behavior.
… we could add into the standard, and then from that point on, can expect reading systems to follow. need to let the incubation phase run it’s course.
… we have a bunch of things in the EPUB standard which were put into the specification at some point with the hope it will be implemented by everyone, and may pay the price at the end because we don’t have implementations.
… would be worried about the same kind of effect that would have.

Shinya Takami (高見真也): Apparently the first market that would generate to generate EPUB format webtoons, we need some kind of solution.

Wendy Reid: Hit a bit of an impasse. A third proposal:.
… document the incubation period - don’t change the spec as it is currently written. however, can we add an editorial note to the rendition flow section regarding the use-case. we think it can be used for this purpose. If you want to fit this use case we recommend you do it this way.
… want to see how this gets implemented - provides a location for feedback, and can look at reasons for.
… Want to document because it seems to fit, but also agree we don’t want to rush it.
… want to encourage people in a direction, and give guidance.

Ivan Herman: Incubation matters in the field with implementations.
… believe proposal is doable.

Brady Duga: feel we need more in the field implementations - is this an at-risk feature?

Ivan Herman: This is a good point and a risk point.

Brady Duga: It might move, right?

Wendy Reid: proposal statement:.
… “Proposed: Add a note to the specification identifying rendition:flow scrolled continuous as a possible option for webtoons in EPUB, it is being incubated and requesting feedback”.

Ivan Herman: +1.

Shinya Takami (高見真也): +1.

Brady Duga: +1.

Brady Duga: Fine, not sure if there is another way.

Toshiaki Koike: +1.

Murata Makoto: +1.

Gregorio Pellegrino: +1.

Symon Flaming: +1.

David Hall: +1.

Masakazu Kitahara: +1.

John Roque: +1.

Wendy Reid: +1.

Resolution #1: Add a note to the specification identifying rendition:flow scrolled continuous as a possible option for webtoons in EPUB, it is being incubated and requesting feedback.

David Hall: Being new to the group and working on the reading experience, we’d have a vested interest in implementing the right thing. …what does that look like? Joining discussions? Providing feedback.

Ivan Herman: Goal is to find consensus amongst the participants. … the proposal can be rejected still, but otherwise it must be acted on. … longer term, a standard becomes a standard when it has more than 2 implementations. … there will be ongoing discussions about the spec even after publication.

Brady Duga: That’s a good question because we haven’t done this for EPUB within the W3C. … you’ll go and incubate, you might discover you need more information, you would report back on your findings. … do you need to bring it to the CG or WG?

Ivan Herman: WG.

Brady Duga: There’s more of a discussion.

Ivan Herman: We’ve added the directional features for title for instance.

5. Handling under-implemented features in EPUB.

Wendy Reid: Final topic - what do we do about underimplemented features?
… Means less than 2 implementations.
… If this was a new spec we would remove the features.
… BUT this is epub which is over 10 years old, and there may be features that have only a single implementation.
… which could be important to someone.
… so we can’t delete it, but we need to identify that the feature is under implemented and you should be careful about using it.

Ivan Herman: The question is really editorial.
… Per charter we can’t remove it.
… In some cases it is easy. For example rendition:flow - we can just find it in the spec and mark it. That’s no problem.
… The real worry is features that are spread all over the spec.
… The main example is fallbacks.
… That is referenced all over, and parts of the spec depend on the existence of fallbacks.
… Matt Garrish isn’t here, would be nice to have his feedback as chief editor.

Wendy Reid: There are two real options.
… Determine which features are underimplemented, and mark it in the spec everywhere that they are mentioned.
… for fallbacks it is really messy.
… since they appear in a lot of places.
… the second option is to move features to their own section.
… we can add references to them so people can find them.
… which nicely hides things away.

Gregorio Pellegrino: If it isn’t implemented yet, it means it will never be implemented.
… correct?

David Hall: In general we prioritize based on what needs to be done.
… We want to be as spec compliant as possible.
… But that is balanced by what we have staff for.
… We want to work on what has the most impact, do we have a priority for these?

Brady Duga: Priority is in some sense implicit.
… the community has decided fallbacks are not important because only 1 implementation exists.
… we’ve not done it for 20 years and the world has not fallen apart.
… it’s a horrible feature to remove, but also core media types becomes confusing.
… we have to rethink everything.
… it might be easier to just implement.

Murata Makoto: Exactly my impression when I joined the IDPF EPUB WG.

Brady Duga: if we haven’t done it it’s not a priority.

Wendy Reid: We have a terrible chicken and egg problem.
… If RSes don’t implement it then publishers don’t do it.
… We have centered this on fallbacks because it is the hardest thing to remove.
… Really want to find out if this is under implemented.
… If it really is unimplemented and unused we should send it to a deep dark pit.

Ivan Herman: The industry has voted with its feet.
… This is general, we can worry about it when we get there.

David Hall: Implementation is driven by use cases.
… If you have something that can fall back to a least common denominator it makes sense to implement.
… But if no one has done it, then it doesn’t make sense to implement.

Ivan Herman: if we can remove without major surgery, then I am happy with moving to an appendix as wendyreid suiggested.
… If this happens with fallbacks then we will deal with it when that happens.
… Matt Garrish is a magic worker, so he will make it all work.

Gregorio Pellegrino: There are some tests I ran the other day that worked for fallbacks.

Dave Cramer: I wrote those tests and they are very complex.

Ivan Herman: Fallbacks is also very difficult for authors to understand.

Murata Makoto: +1.

Ivan Herman: No specific proposal now, just wanted the discussion.

6. process.

Wendy Reid: What is left before PR?

Ivan Herman: We have to finalize the tests.
… And gather as many implementation reports as we can.
… At some point we will decide we have enough, then we close the CR.
… Will depend on the state of the report.
… Then we will have the hard discussion about under implemented features.
… charter runs out February 28th.
… Not clear if we can do it by then, it will depend on the under implemented features.
… If that ends up being a major edit of the spec over winter break time, it will be hard.
… We will need to submit to the director by the end of January.
… If we don’t do that, then it means we have more serious problems.
… In Decemberish we have to discuss maintenance group charter.
… Because that will take some time.

7. Resolutions