14:00:21 RRSAgent has joined #wot-discovery 14:00:21 logging to https://www.w3.org/2021/05/31-wot-discovery-irc 14:00:26 meeting: WoT Discovery 14:00:37 present+ Kaz_Ashimura, Michael_McCool 14:02:09 ktoumura has joined #wot-discovery 14:02:42 present+ Andrea_Cimmino 14:02:45 -> https://w3c.github.io/wot-discovery/publication/2-wd/diff.html diff 14:02:56 -> https://w3c.github.io/wot-discovery/publication/2-wd/ updated wd 14:05:19 present+ Ben_Francis, Ege_Korkan, Farshid_Tavakolizadeh, Kunihiko_Toumura, Tomoaki_Mizushima 14:06:14 FarshidT has joined #wot-discovery 14:07:13 scribenick: benfrancis 14:08:05 Ege has joined #wot-discovery 14:08:38 Reviewing minutes from last meeting. 14:08:38 No objections to publishing minutes from last meeting. 14:08:38 Typo on independently. 14:09:48 i|Reviewing|topic: Minutes| 14:10:09 i|Reviewing|-> https://www.w3.org/2021/05/24-wot-discovery-minutes.html May-24| 14:10:36 Typo reachted -> reached 14:11:05 No objections to publishing minutes. 14:11:10 acimmino has joined #wot-discovery 14:11:38 (typos fixed) 14:11:40 FarshidT: Can we prioritise functional changes 14:12:42 McCool: Kaz has created a diff showing changes for publication, we will review this offline 14:12:57 -> https://w3c.github.io/wot-discovery/publication/2-wd/diff.html diff 14:13:27 McCool: Change log needs adding before we publish. Need a reviewer. 14:13:34 FarshidT: I can review. 14:13:46 McCool: Assuming review passes we can publish. 14:15:03 Topic: PR for TD signatures 14:16:09 McCool: Directories may need signatures. Need canonical form for signatures. May also need an expanded form. 14:16:44 cris has joined #wot-discovery 14:16:46 Will discuss further on TD call. Have some feedback with some things to fix from security call, hopefully will have a more complete version by next week and can discuss discovery implications. 14:17:24 i|Directories|-> https://github.com/w3c/wot-thing-description/pull/1151 wot-thing-description PR 1151 - WIP: TD Signatures 14:17:50 FarshidT: Created a PR with minor parts of refactor. 14:18:02 McCool: Ben has made updates to refactor PR 14:18:18 i|Created|topic: Discovery PRs| 14:18:21 Also an alternative proposal from Ben 14:18:35 (Reviewing a list of PRs) 14:18:48 Also one around pagination 14:18:56 Discussing 14:19:01 #180 14:19:24 i|Reviewing|-> https://github.com/w3c/wot-discovery/pulls wot-discovery PRs| 14:19:40 chachamimm has joined #wot-discovery 14:19:53 -> https://github.com/w3c/wot-discovery/pull/180 PR 180 - Create JSON Schema for validation of discovery extensions 14:21:08 McCool: I believe that in JSON schema have additional properties which describe things that are allowed. First want to validate against regular TD schema, and then against this. Is there a way to link to another schema? 14:21:23 FarshidT: First apply TD schema, then this one. 14:21:38 cris: You can import, but maybe not the cleanest way. Programmatic approach (step 1, step 2) cleaner 14:21:46 McCool: Describe process in prose. 14:22:05 FarshidT: additionalProperties: true is already true so doesn't matter. 14:22:53 McCool: Maybe use dependencies, validate extensions. 14:23:12 Suggest merge it and move on, will add comments to PR. 14:23:46 No objections to merging. 14:23:53 Resolution: Merge #180 14:24:01 Topic: #175 14:24:15 Relates to Thing and EnrichedThing, not directory API itself 14:24:16 i|#180|subtopic: PR 180| 14:24:32 acimmino: This is just model, not the API 14:25:08 s/Topic: #175/subtopic: PR 175/ 14:25:24 Now have Thing, ThinLink and ThingDirectory so they are consistent. 14:25:38 i|Relates to|-> https://github.com/w3c/wot-discovery/pull/175 PR 175 - Updated directory to new ontology model| 14:26:20 McCool: What order should we merge in? 14:26:28 FarshidT: Doesn't matter 14:26:48 acimmino: #175 is context, ontology and diagram 14:27:03 McCool: What generates this XML? 14:27:19 acimmino: A tool named chowlk 14:28:21 McCool: Good to check in diagrams as SVG files. Make sure SVG not just PNG so easier to edit. 14:28:32 acimmino: This is the source code of diagrams 14:29:01 McCool: If this tool is not available in the future, we want to be able to edit 14:29:30 acimmino: We can remove this file 14:29:38 McCool: If we want to edit in the future, can we start from TTL file? 14:29:41 acimmino: Yes 14:29:54 McCool: Will go ahead and merge this 14:30:09 FarshidT: We should squash it as there was back and forth 14:30:20 cris: I see no cardinality in diagrams, is that intended? 14:30:52 FarshidT: I think there was, but in other PR 14:31:22 McCool: If there is cardinality in the ontology but not in the diagrams, that is inconsistent with diagrams in TD spec. Should make consistent with TD spec, please file an issue. 14:31:33 Resolution: Merge #175 14:32:01 Topic: PR #181 14:32:25 FarshidT: It's a shame we can't see diagrams 14:32:53 s/Topic: PR/subtopic: PR/ 14:33:17 i|It's|-> https://github.com/w3c/wot-discovery/pull/181 PR 181 - Update exploration figures and types| 14:33:30 There are two diagrams 14:34:07 McCool: I notice cardinality is here. Was the question before about this diagram? 14:34:22 cris: There they are, it's fine. 14:34:55 McCool: I suggest merging, can always file issues and updates. Am a little concerned about the style because the style in the TD spec is different. Not a huge deal, but should use similar symbology. 14:35:15 FarshidT: There are also changes in the text describing diagrams. 14:36:03 McCool: Style differences can be aligned with TD spec. What tool were we using for diagrams in the main TD spec? 14:36:09 cris: GraphViz? 14:36:28 FarshidT: I think GraphViz was used to generate visualisation 14:37:51 McCool: Updated types, names of things, thing link 14:37:59 kaz: I checked, it was GraphViz 14:38:20 McCool: As long as both using UML standards should be OK, just don't want to use a different arrow type for subclass for example, need to check that. 14:38:40 FarshidT: New namespace URL we are using everywhere except here 14:39:12 McCool: When we go to CR we should update to official URIs 14:39:46 FarshidT: Internal references automatically extracts, extracts title 14:40:02 McCool: Some significant re-organisations to the text 14:40:22 McCool: Go ahead and merge this. Any objections? 14:40:29 McCool: Need more time to review? 14:40:44 Resolution: Will squash and merge #181 14:41:44 FarshidT: One more easy one. Moved the TD to the end in appendices. Still normative but moved it to appendices. 14:41:57 McCool: Technically you can't make appendices or examples normative. 14:42:14 McCool: What we should have is a Thing Model that is normative, assuming there is a TD for directories 14:42:30 McCool: If we move it, does it break other pending PRs? 14:42:44 FarshidT: For appendices there is a class to say whether they are normative 14:42:52 Have marked as a normative appendix 14:43:02 McCool: I was incorrect, didn't know you could do that. Fine with me. 14:43:24 Do need to convert it into a TM. 14:43:58 McCool: Could keep it as an example, then add a TM separately (without security stuff) 14:44:20 q+ 14:44:28 FarshidT: In the future we can add another section for OpenAPI 14:44:41 McCool: Security definitions are an example, not meant to be normative 14:44:56 Can remove non-normative parts and create a TM 14:45:09 FarshidT: These could be different subsections in appendices 14:45:17 McCool: Want to label interactions with scopes 14:45:29 McCool: No objections to merging, but future work to do 14:45:48 kaz: Can move to appendices. At the moment proposed appendix is not normative? 14:45:54 McCool: It is normative, using a calss 14:45:57 *class 14:46:14 kaz: It would be better to have section in main body if normative 14:46:32 FarshidT: The plan is to explain everything in normative text, then have the TD at the end 14:46:56 kaz: For the moment moving to appendix while still normative fine but should add editor's note regarding moving to main body 14:47:25 McCool: Right now it's a TD anyway, which should be a TM. It's the TM we want to be normative. Put in appendix and cite it from the body is the right thing to do. 14:47:27 kaz: Agree 14:47:45 McCool: Do we want to clutter body with assertions which are covered clearly in the TM? 14:48:00 McCool: It's a simple matter to move it up one level, still at the end but as a section. 14:48:16 kaz: Why don't we just add an editor's note. 14:48:25 FarshidT: I can create an editor's note 14:48:36 McCool: Add editor's note saying we may need to make it into a section 14:48:47 McCool: Could just make it a section at the end 14:48:57 FarshidT: OK I will do that now. 14:49:04 McCool: Some conflicts need fixing too. 14:49:32 FarshidT: I can postpone the move until next stage. 14:49:55 subtopic: PR #188 14:50:00 FarshidT: Ben had done a lot of work, but too many changes in one PR. Did not take part about separating events into different affordances. 14:50:11 -> https://github.com/w3c/wot-discovery/pull/188 PR 188 - Refactor Directory Service API TD (stage 1) 14:50:29 FarshidT: Also separated out anonymous TD 14:51:02 i|One more easy|subtopic: PR #186| 14:51:11 McCool: Have added scopes. Need a rich set of scopes. 14:51:21 subtopic: #188 14:51:23 i|One more easy|-> https://github.com/w3c/wot-discovery/pull/186 PR 186 - Move API spec to appendices| 14:51:28 ack k 14:51:32 Renamed URI template 14:52:04 Added a semantic annotation to say it's an ID 14:52:24 McCool: Need to explain that it's an ID that needs using later on 14:52:48 McCool: Is this a property or an action? 14:53:09 FarshidT: It is an action (partialUpdate) 14:53:17 McCool: Needs renaming? 14:53:26 FarshidT: partiallyUpdate? 14:54:41 benfrancis: Have removed all the substantial changes, and just renamed things? 14:56:03 cris: We need to define this ThingID somewhere 14:56:53 McCool: Maybe we shouldn't call this ThingID, because it may be confused with the one in the TD spec 14:57:12 FarshidT: The one in the TD spec refers to an actual thing's ID, whereas here we just care about identifying a TD 14:57:23 FarshidT: It's actually not the same as the TD spec 14:58:13 McCool: Could call it ThingDescriptionID instead of ThingID. It's the ID of the thing description in the directory. 14:58:55 FarshidT: Should we call it retrieveTD then? 14:58:58 McCool@ I 14:59:07 McCool: I'm worried about a name conflict with TD spec 14:59:11 FarshidT: The name is not identical 14:59:19 McCool: Even if different case, still confusing 14:59:51 McCool: Can merge and create an issue about this to discuss later 14:59:52 cris: Agree 14:59:59 cris: I can create issue 15:01:11 McCool: OK, so just name changes, bug fixes and "at type" for IDs 15:01:32 FarshidT: I have fixed the name to be a verb. Now partiallyUpdate 15:02:13 McCool: I would like to go ahead and merge this. Not ignoring other changes, just saying we can merge and move on. Ben can rebase his PR on this one. 15:02:24 McCool: Squash or separate 15:02:37 FarshidT: Better to keep separate so easier to rebase on top of 15:03:08 Resolution: Merge #188 15:04:58 McCool: Need to make a decision. Do we do remainder of refactor? Could just make the TD informative. Sounds like we could incrementally change, then make it informative. But hesitate to make it informative until we have all the text. 15:05:31 McCool: Could make it a normative appendix for now, make it an informative appendix later once normative text written. 15:05:46 Subtopic: #186 15:06:35 McCool: There is a conflict, I can try to fix now 15:07:50 FarshidT: Can just remove section above. 15:08:20 FarshidT: Have removed editor's notes 15:09:55 i|There is|-> https://github.com/w3c/wot-discovery/pull/186 PR 186 - Move API spec to appendices| 15:15:58 (McCool edits PR to resolve conflicts and make fixes) 15:17:11 McCool: Shall we merge this now? Any objections? 15:17:25 Resolution: Merge #186 15:17:50 McCool: Need to discuss refactor/re-structure 15:18:47 McCool: I'm worried about the schedule, we are behind schedule. Going to talk to kaz and see how much slack we have. At most we have an extra month. Also worried about vacations, will be hard to make progress over the summer. Want CR draft by end of July at the latest. 15:18:57 i|Need|topic: Refacter and Restructure| 15:20:37 McCool: Was recently thinking about TM being normative issue. If a TD has a link to a TM, is it really necessary to repeat everything in the TM, or indicate in the link that everything in the TM is re-used? If that was the case wouldn't need a big TD. 15:21:03 Someone needs to commit to writing a description of the API in prose. 15:21:10 https://w3c.github.io/wot-thing-description/#link 15:21:21 FarshidT: In link relation types there is a type relation keyword 15:21:34 Correction: Ege not FarshidT 15:23:27 McCool: In a moment will look at Ben's PR and decide whether to merge remaining. The PR will probably not merge due to conflicts. 15:23:32 s/FarshidT:/Ege:/ 15:23:52 Also need to consider whether we want other protocols to be supported in the future and whether we depend too much on HTTP today. 15:23:54 s/Correction: Ege not FarshidT// 15:24:38 Ege: Need to say which are core features which should be supported by all protocols 15:24:51 McCool: The idea of a TM is that in theory it is protocol independent 15:25:36 Ege: What are the core features? 15:25:57 McCool: Creating a TD, retrieving a TD, retrieving part of a TD etc. 15:27:26 McCool: The other thing Ege brought up is describing everything in prose. The prose section should use affordance names from the TM so we can relate it to the TM. Until we have the prose, can't do anything else. 15:27:41 FarshidT: Adding links to every part of the TM overkill, but can have a link 15:27:46 McCool: I think this is a cleanup step 15:28:38 McCool: We have a PR, it is probably now half a PR 15:29:09 McCool: I guess the original PR was only modifying the TD? 15:29:15 FarshidT: Yes that's correct 15:30:16 FarshidT: What is not merged is changing retrieval to actions 15:30:29 FarshidT: Also splitting events API into different affordances 15:30:46 McCool: Two different topics. Maybe we should discuss them one by one. 15:30:56 Which is easiest to resolve? 15:31:03 FarshidT: Actions 15:31:28 McCool: I agree that if it's a verb and it's a thing we're doing it should be an action 15:32:44 benfrancis: Turning into actions is not my idea, I thought it should be one property 15:34:12 McCool: (Looking at TD). A things property, actions to create, read, update and delete. 15:34:21 McCool: ID ends up being a URI variable. 15:35:01 partialUpdateThing would not work in non-HTTP protocols, correct? 15:35:24 Ege: Could do a partial update using other approaches, doesn't seem protocol dependent 15:36:28 Ege: In another protocol this would be done in a different way, because other protocols don't even have URIs 15:36:35 McCool: I see partial update as optional 15:37:06 ktoumura_ has joined #wot-discovery 15:37:09 No way to annotate that in TD, can do in TM 15:37:15 FarshidT: Actually an important feature 15:37:28 McCool: Not a blocking feature, I could replace the TD with a new one. Less efficient but still works. 15:37:30 FarshidT: Yes 15:37:48 McCool: Making it optional means we don't need to do it in other protocols. 15:38:24 McCool: Does anyone have any objections to this structure? 15:39:13 FarshidT: It's fine for me because the API is the same, but I don't understand why things is a property, and querying a single thing is an action. The actions are defined as safe and idempotent so far, but why is read all things not also an action? 15:40:27 FarshidT: My proposal is to make read all things an action as well 15:40:36 McCool: The things property represents the state of the directory 15:41:41 McCool: The affordances are listed separately to make it easier to use from Scripting API 15:42:11 FarshidT: I'm not suggesting to mix them, suggesting to move things property to be an action, to query everything and pagination 15:42:28 McCool: Things are the state of the directory, so it's logical that things is the collection of things 15:42:46 FarshidT: I disagree that things are the state of the directory, there are other things which are also state 15:43:03 McCool: The set of resources managed by the directory is its state 15:43:20 FarshidT: Would "subscribers" be another property of the directory 15:43:27 McCool: I can imagine doing that, if we wanted it 15:44:06 McCool: I'm not sure if that would make sense because we have events for that 15:44:11 FarshidT: It was just an example 15:44:18 McCool: We could have "models" later on 15:44:45 McCool: I'm personally OK with create, retrieve, update and delete as actions 15:46:55 Resolution: Agree to make create, update, delete, search operations actions. Farshid will create a PR with the subset of commits for this change. 15:47:06 things will be a property 15:47:17 Now discussing single vs. combined events 15:49:21 FarshidT: Two URI variables, type and full 15:49:53 Ben is proposing to change one thingRegistration event into thingCreated, thingUpdated, thingDeleted 15:50:45 McCool: In TDs we have events and have multiple classes of events 15:50:58 McCool: It seems to me we should have a way to subscribe to multiple events 15:51:13 FarshidT: There is no way to subscribe to all or multiple in the new proposal 15:51:24 FarshidT: Can't extend 15:51:42 McCool: Thing Directory could extend it. Could add additional event types. 15:52:08 McCool: Could add an extension in current version with changing enumerated types, not sure that's a good approach 15:52:16 FarshidT: Could extend 15:52:27 McCool: Put extension issue aside for now, different but possible 15:52:46 McCool: In current version, can subscribe to all events in a single step 15:53:05 FarshidT: In HTTP2 when there are multiple subscribers separately they will be combined, but requires TLS 15:53:14 q+ 15:53:34 McCool: We need a section about best practices and HTTPs 15:54:04 McCool: One of the best practices uses a proxy which provides TLS. Downside is that if internet goes down it doesn't work. 15:54:15 McCool: If do HTTP2 it would be taken care of 15:54:36 FarshidT: On the left there is no way to subscribe to multiple 15:54:47 McCool: We don't have to merge this, it's not going to be a blocker 15:55:03 McCool: Need to make a list of pros and cons and decide 15:55:21 McCool: Why don't we clean up the PRs and get the actions stuff cleaned up 15:55:34 McCool: If Ben can create a PR just for the event part and raise arguments for pros and cosn 15:58:01 benfrancis: (Explains rationale but didn't have time to write it down) 15:58:14 McCool: Agreeing with you, missing feature of TD spec 15:59:27 FarshidT: At this point I agree with splitting, only question is about names of events "create vs. created" 15:59:40 McCool: Any objections to making this change? 15:59:58 McCool: FarshidT will you create a PR to add this change? 16:00:00 FarshidT: Yes 16:00:14 Resolution: Separate events into three separate events 16:00:33 McCool: If we want a description of the API in prose, someone has to agree to write it 16:01:05 [adjourned] 16:01:13 rrsagent, make log public 16:01:18 rrsagent, draft minutes 16:01:18 I have made the request to generate https://www.w3.org/2021/05/31-wot-discovery-minutes.html kaz 16:04:09 rrsagent, stop