IRC log of annotation on 2016-07-15

Timestamps are in UTC.

14:41:09 [RRSAgent]
RRSAgent has joined #annotation
14:41:09 [RRSAgent]
logging to http://www.w3.org/2016/07/15-annotation-irc
14:41:16 [azaroth]
zakim, start meeting
14:41:16 [Zakim]
I don't understand 'start meeting', azaroth
14:41:21 [azaroth]
rrsagent, start meeting
14:41:21 [RRSAgent]
I'm logging. I don't understand 'start meeting', azaroth. Try /msg RRSAgent help
14:41:24 [azaroth]
...
14:41:27 [azaroth]
trackbot, start meeting
14:41:29 [trackbot]
RRSAgent, make logs public
14:41:31 [trackbot]
Zakim, this will be 2666
14:41:31 [Zakim]
ok, trackbot
14:41:32 [trackbot]
Meeting: Web Annotation Working Group Teleconference
14:41:32 [trackbot]
Date: 15 July 2016
14:42:20 [azaroth]
azaroth has changed the topic to: Agenda: https://lists.w3.org/Archives/Public/public-annotation/2016Jul/0058.html
14:42:24 [azaroth]
Agenda: https://lists.w3.org/Archives/Public/public-annotation/2016Jul/0058.html
14:42:28 [azaroth]
Chair: Rob_Sanderson
14:42:39 [azaroth]
Regrets: Tim_Cole, Ivan_Herman
14:42:47 [azaroth]
Present+ Rob_Sanderson
14:58:47 [Jacob]
Jacob has joined #annotation
15:01:31 [ShaneM]
present+ shepazu
15:01:35 [ShaneM]
present- shepazu
15:01:40 [ShaneM]
present+ ShaneM
15:01:58 [Jacob]
Present+ Jacob_Jett
15:03:00 [azaroth]
Present+ Randall_Leeds
15:03:01 [bigbluehat]
present+ Benjamin_Young
15:03:59 [tilgovi]
tilgovi has joined #annotation
15:04:05 [tilgovi]
Present+ Randall_Leeds
15:04:26 [TimCole]
TimCole has joined #annotation
15:05:06 [azaroth]
Scribenick: tilgovi
15:05:45 [takeshi]
takeshi has joined #annotation
15:05:57 [Janina_]
Janina_ has joined #annotation
15:06:56 [azaroth]
PROPOSED RESOLUTION: Minutes of the previous call are approved:
15:06:57 [azaroth]
https://www.w3.org/2016/07/08-annotation-minutes.html
15:07:10 [azaroth]
PROPOSED RESOLUTION: Minutes of the previous call are approved: https://www.w3.org/2016/07/08-annotation-minutes.html
15:07:41 [tilgovi]
RESOLUTION: Minutes of the previous call are approved: https://www.w3.org/2016/07/08-annotation-minutes.html
15:07:55 [azaroth]
TOPIC: Announcements
15:08:24 [PaoloCiccarese]
PaoloCiccarese has joined #annotation
15:08:34 [tilgovi]
azaroth: what we had changed from the previous version of protocol, they (who?) are happy
15:08:47 [azaroth]
s/they/TAG/
15:09:32 [tilgovi]
we were anticipating it might run into August. for it only to be one week delayed is very good.
15:09:53 [azaroth]
TOPIC: Issue Review
15:10:05 [azaroth]
github: https://github.com/w3c/web-annotation/issues/326
15:10:53 [tilgovi]
Questions that one?
15:11:08 [azaroth]
github: https://github.com/w3c/web-annotation/issues/327
15:11:20 [tilgovi]
Benjamin, do you want to describe the issue?
15:11:32 [tilgovi]
bigbluehat: Yeah, I also commented on it. I'm all good with your response.
15:11:46 [tilgovi]
it makes sense the etag value obviously reaches far beyond MVCC style updating, to cache control and other things
15:12:00 [tilgovi]
I was looking for clarity on why it didn't match, but I should have just taking in to the mailing list. Happy to close it.
15:12:23 [tilgovi]
It may be good to call out the use for cache control.
15:12:53 [tilgovi]
If you just expose a directory of annotations you won't get an etag with most servers.
15:14:39 [tilgovi]
tilgovi: I think it's fine. I'm also surprised it's a MUST from LDP, but I think it's fine as is.
15:14:40 [bigbluehat]
basically, it's out of our scope (as we depend on LDP), but the clarity would be a Good Thing
15:14:54 [azaroth]
github: https://github.com/w3c/web-annotation/issues/329
15:15:04 [tilgovi]
azaroth: next one is from sarven
15:15:32 [tilgovi]
notes that the protocol spec says if the annotation contains a canonical link then it might be maintained without change
15:15:43 [tilgovi]
The "it" is intended to refer to the canonical link and not the annotation
15:15:50 [tilgovi]
The issue would be to clarify what the "it" refers to
15:15:59 [tilgovi]
tilgovi: +1
15:16:03 [Jacob]
+1
15:16:23 [TimCole]
+1
15:16:34 [bigbluehat]
+1
15:17:10 [azaroth]
github: https://github.com/w3c/web-annotation/issues/328
15:17:37 [tilgovi]
azaroth: Benjamin you also had a new issue yesterday, 328, Container Representations section should be more demanding
15:17:43 [tilgovi]
Would you want to explain that one?
15:17:49 [ShaneM]
you've gone very quiet
15:17:55 [ShaneM]
bigbluehat: ^^
15:19:15 [bigbluehat]
https://rawgit.com/w3c/web-annotation/protocol-qs/protocol/wd/index.html#h-container-representations
15:20:07 [tilgovi]
bigbluehat: basically, container representations make no actual requirements on the server in response to the prefer headers
15:20:53 [tilgovi]
azaroth: we could be clearer, but I wouldn't want to repeat all of the information from the model document that describes selections and annotations
15:21:04 [azaroth]
s/selections/collections/
15:21:04 [tilgovi]
bigbluehat: If you want I can send you a pull request for what I have in mind
15:21:13 [tilgovi]
Mostly I'm looking for clarification for this section 4.4.2
15:21:40 [tilgovi]
For a long time I was just handling PreferContainedIRI, which is actually goin gto get you all the IRIs not as a URL
15:22:04 [tilgovi]
If you're writing a server you really have to pay attention to the Client Preferences more than you might think you have to
15:24:30 [tilgovi]
azaroth: the other two new issues ... registering the profile with IETF so we have an official media type which I have not done ... the other one to make a table of all the predicates so we can track usage which I have also not done
15:24:39 [tilgovi]
but both of them need to be done by the end of CR, so we have a little bit of time
15:24:47 [bigbluehat]
what's our CR "deadline" date?
15:24:52 [bigbluehat]
aka "end of CR"?
15:24:53 [tilgovi]
other open issues, most of which can be closed
15:25:15 [ShaneM]
My goal is by TPAC
15:25:38 [tilgovi]
azaroth: we hope for mid-september so then we have a brief extension for issues and feedback to get from end of CR to full technical recommendation
15:25:52 [tilgovi]
that depends on lot on implementations and being able to demonstrate that we have implemented all of the features
15:26:10 [tilgovi]
We have aspirational end of CR dates.
15:26:17 [tilgovi]
It is somewhat in our control but there are other factors as wel.
15:26:24 [tilgovi]
s/wel./well./
15:26:38 [azaroth]
TOPIC: Testing
15:27:29 [tilgovi]
azaroth: two things, update on the status of the test suite and a discussion of feature testing vs validation and what our test suite will do
15:28:07 [tilgovi]
ShaneM: Progress recently... we've gotten the annotation model framework, that allows us to generate and execute tests, integrated into the environment now. That's good news.
15:28:12 [tilgovi]
That only has to do with model testing, not protocol.
15:28:39 [tilgovi]
That's progress on the framework for the model.
15:29:00 [azaroth]
Regrets+ Ben_De_Meester
15:29:03 [tilgovi]
bigbluehat: Other than the issues we've been discussing, I've made it to the bottom of the spec for the MUST issues.
15:29:24 [tilgovi]
I'm dealing with a bug related to the tests I am writing. I was stuck on the prefer headers.
15:29:37 [tilgovi]
The next thing is abstracting it so that each test runs with its own temporary directory and a client can get its own space.
15:29:49 [tilgovi]
That gets messy. Works for one off tests and local testing, but not for hosting it.
15:30:08 [fjh]
fjh has joined #annotation
15:30:21 [tilgovi]
Two parts... one is making it contained per test run and the other is reporting how it all happened
15:30:25 [ShaneM]
q+ to talk about reporting
15:30:36 [azaroth]
Ack ShaneM
15:30:36 [Zakim]
ShaneM, you wanted to talk about reporting
15:30:40 [tilgovi]
And I would love help with doing any of that sort of reporting.
15:30:53 [tilgovi]
ShaneM: Once we get the basic plumbing in place attaching it to the built in reporting structure should not be a problem.
15:31:02 [tilgovi]
I didn't actually realize you were writing the tests.
15:31:06 [tilgovi]
That's fantastic.
15:31:18 [tilgovi]
If you need help with the temporary files, etc, I can advise on that as well.
15:31:33 [bigbluehat]
awesomeness ^_^
15:31:40 [fjh]
fjh has joined #annotation
15:32:21 [tilgovi]
azaroth: My understanding is we have been waiting a little bit until this ended up in WPT, but now any thoughts on when we will be getting back to writing more tests?
15:32:44 [azaroth]
TimCole, Jacob, Janina_ ?
15:32:58 [ShaneM]
zakim, who is here?
15:32:58 [Zakim]
Present: Rob_Sanderson, ShaneM, Jacob_Jett, Randall_Leeds, Benjamin_Young
15:33:00 [Zakim]
On IRC I see fjh, PaoloCiccarese, Janina_, takeshi, TimCole, tilgovi, Jacob, RRSAgent, Zakim, azaroth, shepazu, dwhly, nickstenn, bigbluehat, ShaneM, rhiaro, csarven, stain,
15:33:00 [Zakim]
... timeless, aaronpk, trackbot
15:33:37 [TimCole]
Once resolve validation versus showing feature implementation, will resume putting in schemas
15:33:57 [TimCole]
still having some difficulty with making runner work locally
15:34:15 [TimCole]
stalls at creation of MANIFEST.json
15:34:21 [tilgovi]
azaroth: Last weekend I started playing around with the servers and test suite.
15:34:41 [tilgovi]
with the intention of integrating them into my server implementation
15:34:47 [TimCole]
this done by a py script that does a shell
15:34:52 [tilgovi]
so that I could validate input to see if it's an annotation or random junk
15:35:16 [tilgovi]
It's not really, at the moment, intended for automated validation.
15:35:55 [tilgovi]
ShaneM: The w3c test suites are designed to test implementations and demonstrate that all the features in the spec are implemented in two implementations.
15:36:04 [tilgovi]
If they have other add-on benefits that's great, but not usually a design goal.
15:36:17 [tilgovi]
Examples of add-on benefits: tests can be run doing continuous integration.
15:36:48 [tilgovi]
I sent an email yseterday about "Feature Testing Philosophy". We want these tests to be as discrete as possible without being overly onerous on the tester.
15:37:20 [tilgovi]
If a feature is "body" we need a test for body. If a feature is "bodyValue" we need a test for bodyValue.
15:37:44 [fjh]
fjh has joined #annotation
15:37:56 [tilgovi]
In some cases it makes sense to combine tests, say for specific properties that are all required, to make this easier on the tester.
15:39:10 [tilgovi]
azaroth: Is continuous integration sufficiently valuable that we should spend extra time ensuring that the schemas and so on are useful for that?
15:39:23 [tilgovi]
I don't even have an opinion on that. Mostly I'm not sure how difficult that is to do at the same time.
15:40:12 [tilgovi]
ShaneM: The add-on benefit is substantial, but we need to get out of CR.
15:40:39 [tilgovi]
My plan all along is that the tests would be structured identically, every test looks exactly the same, so that someone who wanted to automate the tests in WPT could do so.
15:40:46 [tilgovi]
Once we have tests in place, we could do that.
15:40:58 [tilgovi]
We could show how that would be done, and then put it in the wild so anyone can do it with their implementation.
15:41:12 [tilgovi]
I don't anything prevents us from doing that, but the manual tests are the thing we need first.
15:42:00 [tilgovi]
ShaneM: Coming back to the complexity discussion. Rob, thank you for raising the issue. I think having an incredibly complex JSON schema that's built out of little schemas that allows you to do validation of any annotation is a great exercise.
15:42:12 [tilgovi]
There should be a tool out in the world that you can use to check that your annotation is valid.
15:42:27 [shepazu]
present+ shepazu
15:42:43 [tilgovi]
But for testing, I hope that these things are relatively simple. We have finely grained components and then we bundle those together in ways that make sense to exercise a given requirement.
15:43:16 [tilgovi]
ShaneM: I put together a hasBody.json file, a schema that checks to see if there's a body property and, if so, that it matches the expectations for a body property.
15:43:33 [ShaneM]
{
15:43:35 [ShaneM]
"$schema": "http://json-schema.org/draft-04/schema#",
15:43:37 [ShaneM]
"title": "Has a body property",
15:43:39 [ShaneM]
"description": "'http://www.w3.org/ns/anno.jsonld must be' an @context value (Section 3.1)",
15:43:41 [ShaneM]
"assertionType": "must",
15:43:43 [ShaneM]
"expectedResult": "valid",
15:43:45 [ShaneM]
"errorMessage": "There is no body property",
15:43:47 [ShaneM]
"type": "object",
15:43:49 [ShaneM]
"required": [ "body" ],
15:43:51 [ShaneM]
"properties": {
15:43:53 [ShaneM]
"body": {
15:43:55 [ShaneM]
"oneOf": [
15:43:57 [ShaneM]
{ "$ref": "stringUri.json" },
15:43:59 [ShaneM]
{ "type": "object",
15:44:01 [ShaneM]
"oneOf": [
15:44:03 [ShaneM]
{ "$ref": "textualBody.json" },
15:44:05 [ShaneM]
{ "$ref": "specificResource.json" }
15:44:07 [ShaneM]
]
15:44:09 [ShaneM]
}
15:44:11 [ShaneM]
]
15:44:13 [ShaneM]
}
15:44:15 [ShaneM]
}
15:44:17 [ShaneM]
}
15:44:40 [tilgovi]
ShaneM: The important part is that there's a thing that says '"type": "object"', and within that object "body" is required and that that property is "one of" (using "$ref") a "textualBody" or a "specificResource" (using the definitions that are already provided).
15:44:57 [TimCole]
keep in mind that value of body can be an array
15:45:05 [tilgovi]
ShaneM: If two implementations pass that test, then great, we're laughing, that feature is implemented across two annotations.
15:45:19 [tilgovi]
Maybe that needs to be more complicated because the value of body can be an array.
15:45:57 [tilgovi]
AJV does a great job of parsing these and evaluating them very quickly (AJV is the library being used for this)
15:46:23 [tilgovi]
It does a good job of telling you what's wrong if there's a problem with a schema.
15:46:26 [TimCole]
See also: https://github.com/w3c/web-annotation-tests/blob/master/annotations/bodyResource.json
15:46:32 [tilgovi]
ShaneM: Does anyone remember how many features we think there are?
15:46:40 [tilgovi]
azaroth: It's hard to count. Probably on the order of forty or fifty.
15:46:49 [TimCole]
But this then requires that you separately check that each type of body is correct.
15:47:28 [TimCole]
There are close to 100 features, grouped into about a dozen sections (outline of the spec)
15:47:40 [tilgovi]
ShaneM: There are two ways to approach this problem. I'm going to talk about just _a_ way.
15:47:50 [ShaneM]
stub-n.n.n-name.test
15:47:58 [tilgovi]
What people have done, is put things like "stub-n.n.n-name.test" in the tree.
15:48:07 [tilgovi]
Stub means it's not really a test yet, it's a reminder that we need a test.
15:48:11 [tilgovi]
As we write them, we rename them.
15:48:29 [azaroth]
+1
15:49:28 [ShaneM]
what do you think of the stub concept TimCole
15:49:49 [TimCole]
okay with me, we started with a spreadsheet, but stub naming would help organize
15:50:01 [ShaneM]
ACTION: ShaneM to create stub files...
15:50:01 [trackbot]
Created ACTION-34 - Create stub files... [on Shane McCarron - due 2016-07-22].
15:50:18 [azaroth]
TimCole: Can you send Shane the spreadsheet to use, just to make certain that we're singing from the same hymnsheet
15:50:36 [TimCole]
yes, it's a google doc. I'll send pointer after today's call.
15:50:40 [tilgovi]
ShaneM: I'll also modify the test generator so that if a thing is a stub so that the test that's generated is basically an automated test that says "not run" or "not ready" or whatever.
15:50:41 [azaroth]
Thanks Tim!
15:50:45 [TimCole]
it's still incomplete
15:50:55 [tilgovi]
We'll have a whole list that can say in a table that each test ran, passed, failed, etc or didn't run.
15:51:18 [tilgovi]
ShaneM: I know you want to talk about implementation progress, but we need test development and test development progress.
15:51:36 [tilgovi]
I would really like a time we can tell people that there are enough tests here that they can validate their implementation.
15:51:48 [TimCole]
question: if an annotation has correctly implemented one type of body, but in same annotation incorrectly implemented another type of body, how do we report it?
15:52:08 [ShaneM]
It would probably fail TimCole
15:52:17 [TimCole]
thanksa
15:52:32 [tilgovi]
ShaneM: I'm not going to impose a deadline, but I want someone to tell me when they can get the work done.
15:52:46 [tilgovi]
In my head, we were populated out by first of August. I don't know now.
15:52:54 [azaroth]
TimCole: Do you have an estimate of when the schemas can be finished up?
15:52:57 [tilgovi]
That was my feeling a month ago.
15:53:19 [azaroth]
At least to the point where it's useful to run existing annotations against them, even if the entire set isn't complete?
15:53:20 [TimCole]
schemas can be done over the course of the next week, if we're clear about how test scripts are to be structured
15:53:45 [TimCole]
at very least the granular schema definitions can be finished next week.
15:53:45 [tilgovi]
azaroth: This isn't an overly optimistic deadline.
15:53:48 [tilgovi]
ShaneM: Let's shoot for it.
15:53:51 [tilgovi]
How wrong can we be?
15:54:34 [azaroth]
So we can try to get something set up to have implementations run beginning of august :)
15:55:12 [ShaneM]
I will get stubs thrown in to the annotation-model tree this weekend.
15:55:57 [azaroth]
TimCole: Do you have everything, or are confident you'll get everything, you need to work on the schemas?
15:56:22 [ShaneM]
bigbluehat: are you there ben? it's me, margaret
15:56:31 [bigbluehat]
blast...lost my mic...somehow...
15:56:38 [TimCole]
I've been slowed down a bit by not being able to get runner going, but doesn't interfere with making schemas
15:56:42 [ShaneM]
low tech linux crap
15:56:44 [bigbluehat]
k. we're close. we just need to generate a temp space per-run
15:56:45 [azaroth]
:D
15:56:50 [bigbluehat]
ShaneM: close...Window 10 ;)
15:57:05 [ShaneM]
TimCole: if you need help getting your environment running - ping me. I can walk you through it.
15:57:26 [bigbluehat]
yes. all testing of the test tester thing would be super :)
15:58:39 [tilgovi]
azaroth: Hopefully by next week we can walk through how some annotations can be tested.
15:58:42 [fjh]
fjh has joined #annotation
15:59:05 [tilgovi]
ShaneM: I know there are example annotations in the spec for each data shape. I've been using those to test the tests. My question is "are those adequate"? Is there a way we can pull them out into independent files?
15:59:07 [tilgovi]
Could someone do that?
15:59:11 [tilgovi]
azaroth: That is already done, actually.
15:59:19 [tilgovi]
In the main spec repository.
15:59:45 [TimCole]
but we need annotations that are not correct as well - there's space for this, but not yet populated
15:59:57 [azaroth]
https://github.com/w3c/web-annotation/tree/gh-pages/model/wd2/examples/correct
16:00:44 [tilgovi]
ShaneM: that's beautiful. I want to use those to run against the tests.
16:00:54 [tilgovi]
That's why I like having the .json files separate from the .test files. We can cycle over them more easily.
16:00:56 [tilgovi]
Thank you.
16:00:59 [tilgovi]
azaroth: Thank you!
16:01:10 [tilgovi]
azaroth: Any more topics?
16:01:11 [TimCole]
https://docs.google.com/spreadsheets/d/13LRf2-OCJlKplQE5MTV3breguuRhUyhQW8IZ_jQMBjw/edit#gid=595504397
16:01:27 [tilgovi]
shepazu: I just want to say thank you again to Shane for paving the way for us to be able to test JSON-LD at the W3C. This is very useful.
16:01:29 [azaroth]
Topic: Adjourn
16:01:37 [tilgovi]
azaroth: Thank you everyone for coming. We'll discuss progress next week.
16:01:45 [tilgovi]
rrsagent generate minutes
16:01:58 [azaroth]
RRSAgent, generate minutes
16:01:58 [RRSAgent]
I have made the request to generate http://www.w3.org/2016/07/15-annotation-minutes.html azaroth
16:02:11 [tilgovi]
thank you.
16:02:15 [fjh]
fjh has joined #annotation
16:02:21 [azaroth]
I don't have access to the generated file though :(
16:02:47 [tilgovi]
Ah, I see. So the "..." prefix on the lines isn't required but it would look much better. I forgot about that.
16:02:56 [tilgovi]
There for me, too.
16:02:57 [tilgovi]
Looks fine.
16:03:14 [azaroth]
Huh. I get "Sorry, Insufficient Access Privileges"
16:03:26 [tilgovi]
weird
16:03:43 [azaroth]
RRSAgent, help
16:04:15 [tilgovi]
By the way, I'm planning to release newest versions of some libraries this weekend if anyone wants to help with some JS implementation.
16:04:21 [azaroth]
RRSAgent, please make logs world-visible
16:04:34 [tilgovi]
This one is just a little helper for environments where there's no platform support fo xpath: https://github.com/tilgovi/simple-xpath-position
16:04:40 [azaroth]
Yup, that did it :)
16:04:50 [tilgovi]
This can go back and forth from Range objects to TextPositionSelector data: https://github.com/tilgovi/dom-anchor-text-position
16:05:14 [azaroth]
tilgovi: Nice! :)
16:05:17 [tilgovi]
I have the same for TextQuoteSelector, but I am updating it to more match the API of the text position library (too much OOP for my taste right now).
16:05:34 [azaroth]
And thanks for scribing, Randall!
16:05:35 [tilgovi]
There's no support for unicode right now
16:05:49 [tilgovi]
Insofar as surrogate pairs and such won't be counted as a single character.
16:06:01 [tilgovi]
I still have to test how that impacts performance and decide whether to make it optional.
16:06:10 [tilgovi]
And see how much bloat it adds to pull in the polyfills for that.
16:06:58 [azaroth]
Yep, that sort of processing seems really expensive :(
16:07:33 [tilgovi]
Yeah. That's why I'm thinking opt-in.
16:08:21 [tilgovi]
All the JS engines in the major browsers still do UCS-2 internally, I think, so there's not even much hope to push them to expose something that wouldn't be slow.
16:08:58 [fjh]
fjh has joined #annotation
16:09:07 [tilgovi]
I'm off. Cheers.
16:09:19 [azaroth]
See ya! :)
16:19:54 [fjh]
fjh has joined #annotation
17:19:13 [fjh]
fjh has joined #annotation
17:59:21 [tilgovi]
tilgovi has joined #annotation
21:08:13 [Zakim]
Zakim has left #annotation
22:06:45 [shepazu]
shepazu has joined #annotation