W3C

Digital Publishing Interest Group Teleconference

07 Nov 2016

Agenda

See also: IRC log

Attendees

Present
Dave Cramer (dauwhe), Ivan Herman, Tzviya Siegman, Peter Krautzberger, Karen Myers, George Kerscher, Avneesh Singh, Bert Bos, Chris Maden, Leonard Rosenthol, Heather Flanagan, Vladimir Levantovsky, Charles LaPierre (clapierre), Deborah Kaplan, Garth Conboy, Alan Stearns, Romain Deltour, Ben De Meester, Bill Kasdorf, Liam Quin, Benjamin Young (bigbluehat), Shane McCarron
Regrets
Ayla Stein, Michael Miller
Chair
Tzviya
Scribe
nickruffilo

Contents



<tzviya> https://www.w3.org/2016/10/31-dpub-minutes.html

Tzviya: "Last week's minutes - approval? OK - I guess they are good."

<HeatherF> We now have mutants and old people on the call. Who knew.

<leonardr> I knew :)

<ShaneM> Yakko, Wacko, and Dot ftw!

UCR

Tzviya: "Leonard, the next item is about the changes to the PWP and the use case document. Last week before you traveled."

Leonard: "I am planning on getting it done, but I've got it wrapping up today.

<leonardr> I accept that, @clapierre

Tzviya: "Ivan and I can get the rest of it out this week."
... "Much of this can be done over email, next stpes are approving doucment as-is, then we'll put it out for a more critical review. "

Ivan: "One more request Leonard - please close all the issues that you think you have closed this round or before."

Leonard: "OK I'll go back through the issues. "

SW in action

Tzviya: "Books and Browsers last week, Dave Cramer did a demo of his reading system. TPAC and Supporo. Dave?"

<dauwhe> https://dauwhe.github.io/epub-zero/acme/index.html

Ivan: "There are many people who dialed in, and cannot get to screenshare."

Dave: "Parts of this depends on having a browser that depends on Service Workers - so only latest chromes and firefoxes."

Tzivya: "Some can't see the screenshare - so dave will have to explain."

Dave: "This is another experiment with 'books in browsers' even though it applies to all different publications. You can see 'to the lighthouse by virginia wolf..."
...: "I've had a service worker demo - where there was a bunch of javascript in the book itself. I wanted to know if there was something more closer to the epub model - where you didn't have to embed the information in the document itself. What we have here is an ordinary folder of HTML/CSS/etc. There is a JSON manifest file that makes everything work. it uses the syntax of the manifest, but two additional members - one called the spine and the other is resources - which is everything else. One of the goals is to avoid the duplication of epub where you have to list every file mutliple times. The manifest does several things. it tells the service worker what to cache, and second it allows navigation between all the content documents. You have the 'next'button here, and what it's doing is reading from teh spine array and going to the next item. It's also. If the document has a manifest, I note that and link back."
...: "I built a little landing page and have details for an expandable TOC. "
... "Now, the document should work offline - which is one of our key goals. Another thing the service worker does is that the service worker intercepts the network address, which takes all the cached stuff and puts it in a zip file and downloads it. If this wasn't buggy, you'd get exactly what you started with and be able to use it wherever. Purely for fun, I built some reading system type stuff - night mode, increase/decrease font size... The Nigth mode is a CSS filter, so it can invert colors and even works on video... Really that's it. It's really simple web technology. We sort of - can make a scotch tape and cardboard reading system with only a bit of javascript and an iFrame. I mostly see this as the utility of a manifest that lists the sequence and components of a publication. It might be possible to do this without that, but it would be a lot harder."
...: "In safari you will have dropcaps... CSS - 3 lines - will give us pagination. Uses scroll-capping set to the page-width. But Safari will not have service workers. "

Garth: "In previous, I move between spine items, but how do I move between pages?"

Dave: "Scroll gesture/scroll bar. Chrome has overflow-x but not scroll snapping..."
... " Much of this is not prime-time. but it's good."

Leonard: "Dave, great work - glad to see it. One question I had - have you done any experimenting or work - given fully self contained piece of content. Have you thought about a book with external references? To a streaming video for example?"

Dave: "A couple things. The display of the content itself - I essentially read the spine item HREF from the manifest and that is the source of the iFrame. I can point it at literally ANYTHING. Even things that are not purely web content. I could - if I spent 5 minutes fixing the code, i could have a manifest item pointed anywhere as long as it can be displayed in an iFrame. There are issues around that, but no conceptual problem around that. "

Ivan: "I want to come back to the version on Chrome - that has a service worker. Where is the service worker? I understand that it is not in the content, so how is the whole system set up."

<leonardr> ISSUE: do we believe that limiting external references from a PWP to only https (as required by SW's) to be limiting or future looking?

Dave: "There is a single service worker on the ROOT of the whole website. The one worker controls all the publications. I essentially - when I pick a particular book, I'm awkwardly telling my reading system what manifest to use. At which point the manifest.json is read by the javascript, and used for all these different purposes. "

Ivan: "So it registers a different cache per publication?"

Dave: "Yes, each cache has different a  name. They are all sitting peacefully near their neighbors."

Ivan: "How long does the content stay offline in the cache?"

Dave: "I believe you can set an expiration time for a cache as part of the service worker..."

<astearns> I believe there are no guarantees on cache persistence, though

Tzviya: "There are other people (Hadrien) who are implementing things in other ways as well."

Leonard: "Just thinking that we as a group could take leadership."

Ivan: "I think it would be better - administratively - we do not really use the issue handler via trackbot - maybe a good issue for a github repo."

Dave: "I think of this as a prototype - as a visual aide for thinking about a problem space. I am fine if people look at it and play with it, but I don't see it as a foundation for something useful in the real world."

Ivan: "To pick up on that - where would it remember the night-mode?"

Dave: "I seem the manifest as the minimal set of information for making the publication functional."
...: "I wouldn't think of it as a repository for user-preference."

<Bert> ("night mode" is probably not per-book either, but for the whole device.)

Nick: "Do we want user preferences to be stored somewhere within the publication?"

Dave: "Not sure we tackle that yet - and definitively not in the manifest."

Leonard: "In the working group - we talked about things like annotations and preferences that you want to connect to the publication but not put them into the manifest. While people see them as complex, it most certainly has a use-case."

Tzviya: "We also don't have conclusions on all of these things."

Chris: "The presentational preferences have to be device specific - I may want different settings on different devices. I wouldn't expect that to continue on my laptop next day. But, a sticky note to myself, annotations - i do expect to continue. "

Garth: "I was going in a similar discussion - night mode across reading system or multiple devices. An implementation like this might want to be local storage, or a server, etc. I think we get into a something we don't want to get into about standardizing viewing preferences - about doing night mode, drop caps, etc. There are lots of opportunity for discussion."

George: "There are initiatives to standardize user-preferences across devices & systems, so that people can walk up to devices they have never had before - and evoke their preferences. GPII.org is one initiative in this domain - because it takes me 2 weeks to set up a new computer with my preferences right now. It would be nice to store all these changes."

<astearns> thanks, george

<clapierre> agrees with George, having to increase the font size thousands of time is getting OLD!

Nick: "Accessibility could be a use case for saving preferences."

<clapierre> well said Nick!

Ivan: "My question comes back to the system on the basics. You did provide a packaged file - a packaged version of the document. Is it easy to incorporate the other way around? You take a package and you display it offline?"
...: "I give you a book in a zip file."

DavE: "If it had a manifest in this format, all I'd need to do is unzip it in my server and add a link to it in my index file, and that would be it."
...: "Provided you have access to a server where you can put it..."

Dave: "One thing here is that you are building an environment for reading. The other is the nature of the publication itself and it's distribution."
...: "One goal was to make the publication useful without any of the features being understood. That I have this nav file - which I call index.html which contains the link to the manifest - but if you don't understand that, you can still navigate through the entire content. I think it's important to at least construct things so that even if none of the world knows about service workers or manifest, it's still functional. "

Ivan: "One thing that worried me, but - that the book itself is not carrying anything but the manifest. And I think that is essential. I was originally worried that might suggest that the service worker and necessary JS may have to travel with the book."

Dave: "I did this so that I could prove the document doesn't need to contain the machinery."

Ivan: "What - in an ideal world - of whta was built - becomes part of the browser."

Dave: "I seem to have convinced myself that it's useful to have a list, but we'll see if I can convince marcos."

Leonard: "Two things - while I agree that we should not require the presentation or nav experiences to be incorporated into the publication, we also do not want to restrict that either. There may be authors/publishers that may want a specific experience, so we shouldn't restrict that. The other - it is essential based off experience, having that list of resources that are used within the document. There are certain things that are not possible otherwise. "

Dave: "Inside the iframe - the only thing I'm doing is injecting a little bit of CSS - otherwise what happens in here is entirely up to the publication, so there is no restriction. There are even more options that exist in epub right now. The manifest is just pointing at a JPEG, and that works as the size of the iframe. I realize that it is totally inaccessible - so I'm injecting HTML, but now it needs alt-text. I am using the manifest and can add in the alt-text so it is accessible. "

Tzviya: "Questions or comments?"
... "Next steps - dave will talk to Marcos. I'll talk about doing that within the group. We'll ask hadrien to display his demo in the next few weeks."

DavE: "I wanted to mention that Readium is trying to figure out what Readium 2 is going to look like - and how it will be architected. They've been having a wide-range of discussions around this. Their JSON rep of an epub document... Hadrien is trying to steer them in the direction of the manifest. I'm wondering how we could sort of be more aware of this conversation as it could have implications for everyone's future."

Tzivya: "That was it for the agenda - any other business?"

Ivan: "Practical thing for minutes and short summary: When do you think BiB will put up a pointer to your presentation, Dave?"

Dave: "Not sure. Since it's almost entirely text, I could send the text to the list - or throw up a web page."

Ivan: "It would be useful. Would be best to point to it, rather then repeating. I can put it somewhere if you prefer."

Summary of Action Items

Summary of Resolutions

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.148 (CVS log)
$Date: 2016/11/08 09:46:23 $