W3C

– DRAFT –
WoT-WG - TD-TF

14 July 2021

Attendees

Present
Ben_Francis, Cristiano_Aguzzi, Daniel_Peintner, Ege_Korkan, Kaz_Ashimura, Michael_Koster, Michael_McCool, Ryuichi_Matsukura, Sebastian_Kaebisch, Tomoaki_Mizushima
Regrets
-
Chair
Sebastian
Scribe
dape

Meeting minutes

Agenda bashing

https://www.w3.org/WoT/IG/wiki/WG_WoT_Thing_Description_WebConf#Agenda

Minutes approval

https://www.w3.org/2021/06/16-wot-td-minutes.html

Sebastian: talked about publication plans
… VF2F TD topics
… looked into PRs
… merged some PRs

McCool: some security PRs should be ready by next week (expect review from Oliver)

Sebastian: RDF PR might be closed... need to check with Victor

Sebastian: looked at issues

Sebastian: AOB about Ege / Henry and JSON schema definitions

Ege: had meeting with Henry..

Sebastian: Objections to approve minutes?

-> none -> minutes approved

F2F minutes

<kaz> Day 6

Sebastian: talked about round tripping
… Victor could fix all issues (RDF <-> JSON-TD)
… gave overview about 1.1 features / updates
… talked about thing models
… use-case from Eclipse Ditto
… McCool gave presentation about validations
… talked about action model
… sync vs async

Sebastian: objections to merge?

-> none -> minutes approved

WoT Bindings

Ege: main point is Modbus binding

<Ege> https://github.com/w3c/wot-binding-templates/pull/109

Ege: Cristiano created PR
… binding is reviewed also by Sebastian
… looks good
… talked with Cristiano about schema validation
… concern for other protocols as well
… make sure to use the right terms
… TD is flexible w.t.r.
… Cristiano provided schema file

<Ege> https://github.com/w3c/wot-binding-templates/pull/109/files?file-filters%5B%5D=.html&file-filters%5B%5D=.json&file-filters%5B%5D=.md#diff-4f12601df63ec09f14c2309b51f3a27ea60aa7a01d87718d46b9e09172464709

Cristiano: >shows rendered version<
… improvements from last time is introduction of schema
… we have SHACL
… we have JSON schema file
… made some assumptions
… TD needs to use same prefix
… otherwise we need pre processing step
… JSON schema checks context url and prefix

Sebastian: We could check with Victor about other solutions
… prefix usually can be used randomly

<McCool> (I'm back)

Cristiano: For SHACL file there is a specific place
… for JSON schema this is not the case

Sebastian: wonder about canonicalization and how it is done there

McCool: 1. keep prefix or 2. substitute prefixes
… 3. create new names for all Urls
… other concern I had was with having multiple schemas
… how to do proper validation

Cristiano: JSON schema needs to be replicated
… in form level "own" schema is added

McCool: What about more extensions
… we look for a wrapper schema

Cristiano: Having one schema makes validation simple
… saw other use-cases on the Web doing the same

McCool: using canonical form for validation?
… fills in default values
… validation should be done before canonicalization
… validation process could be some specific pre-processing

Sebastian: Maybe we can talk with JSON schema people
… suggest we keep the current proposal
… keeping prefix "modbus"
… should be made clear in text

McCool: template would make this behavior clear

Cristiano: having {{modbus}} template cannot be used as it is

Ege: did some tests with JSON schema
… having Modbus and non-Modbus seems to fail
… "modv" is also used in some examples

Cristiano: will take a look, thanks
… suggest to merge the PR soon.. and move on from there

Cristiano: added small readme also

Sebastian: support merging

Daniel: noted that github "preview" link does not work any longer

<cris> https://github.com/w3c/wot-binding-templates/pull/109

Cristiano: Yes, would be good if it can handle files other than index.html

Kaz: Let's merge and see whether it can be resolved
… comment: the header should not link directly

Cristiano: temporary situation

Ege: OK with merging also
… no more concerns mentioned
… will do the merge

Sebastian: use same pattern for other bindings also?

Ege: Yes

PRs Overview

Add subscribeallevents and unsubscribeallevents operations - closes #1082

https://github.com/w3c/wot-thing-description/pull/1191

Ben: helps getting WebThings platform to be compliant
… observing in one operation
… a bit unclear what has to be modified manually.. and what is auto-generated
… I think I got it right in the end

Sebastian: looks good to me

Ben: updates for architecture are to be followed

<cris> +1 for merging :)

Sebastian: Any comments?
… looks we can merge
… thank you Ben

correct <span> element for ComboSecurity assertion and add unique id #1184

https://github.com/w3c/wot-thing-description/pull/1184

Sebastian: seems to be a typo fix

Ege: yes, span vs scan

Sebastian: Fady is not yet an official W3C member
… we work on fixing the situation

Kaz: Do we want to wait or continue.. marking as non-substantial
… given this is just a typo fix merging seems ok

Sebastian: merging ...

fix: replace "name" with "title" in TM example #1175

https://github.com/w3c/wot-thing-description/pull/1175

Sebastian: fix is okay
… issue that it is changed in index.html only

Kaz: editorial fix again, but we need to fix the index.template.html as well. so would suggest you create another PR to fix the index.template.html (and index.html as the result of the tooling)

Sebastian: will let Jan know that both files have to be updated

TD Signatures #1151

https://github.com/w3c/wot-thing-description/pull/1151

McCool: Oliver will take a look
… still some things to do
… using "Signature" term caused conflicts
… terminology vs vocabulary
… issue in Section 5.2
… will create issue about that
… once we get feedback from Oliver the rest should be rather minor

Sebastian: will also ping Oliver

Other PRs

Sebastian: other PRs are about auto-updating and such
… changing package versions

McCool: should test these changes before merging

Sebastian: Daniel will have a look

WIP: swap securtiy and securityDefinition in context file

https://github.com/w3c/wot-thing-description/pull/937

Sebastian: should check with Victor

McCool: Yes, I think this should be fixed by other PRs
… but let's ask Victor

Issues

Describing initial connection #878

https://github.com/w3c/wot-thing-description/issues/878

Sebastian: Old issue
… metadata about initial connection
… subprotocol et cetera
… WebSocket, MQTT, ... mention the endpoint ... no more special information on interaction level
… idea: using top-level information
… example from Ben by means of WebThing
… no need to repeat the same information over and over again
… we have "base" but we might need more complex structure
… introduce new term "bases" ..
… define endpoints and refer to it on interaction level
… another proposal from Ben .. using global form
… more opinions / solutions

McCool: 2 issues come to my mind
… what about security
… initial security bootstrapping

Sebastian: forms can contain security

McCool: Yes, but we might need to override it
… first getting thing link
… afterwards the full TD
… anyhow, security should be considered for these examples

Ben: i don't think we have security bootstrapping issue
… multiple bases is orthogonal
… this is more about having a persisting connection
… in case of WebSocket and subprotocol it should know when to use it and to setup just one connection

Cristiano: I reviewed the proposal
… none is solving all problems
… moreover, backward compatibility is also an issue
… shift some features to 2.0
… otherwise go on with Bens proposal that does not breaking changes

Sebastian: backward compatibility is a real issue. right
… ignoring is ok... but interoperability is not working

Ege: we have 2 things
… base
… and initial connection

McCool: what about using action for onboarding
… can be used by "older" implementations

Ege: How to know that one actions depends on another action

McCool: needs to be labelled

Ege: node-wot for example would not keep connection
… no good solution for old consumers

McCool: Do we properly support MQTT in 1.0 ?
… if not, no need to further tackle this

Ben: Initial problem: never really defined properly... everyone doing it in its own way
… hence no backwards compatibility

McCool: Agree

Ege: minimal change ... old consumer should not fail
… eg. uses bases and not base

Cristiano: I was thinking more about syntax
… forms at root level seems less intrusive

Ege: does not solve multiple base

Cristiano: Yes, should be post-poned to 2.0

<Ege> https://github.com/w3c/wot-thing-description/issues/1192

Ege: Bug in current editors draft (see link above)?

Ben: what does "with default" mean

Ege: if nothing is defined, default kicks in

Sebastian: I was thinking about "initconnection" op value

Ege: consequence would be to check first about "initconnection"
… mixes concepts

Cristiano: href required by TD .. but not by WebSocket

Ege: Yes, having empty string

Ben: Yes, forms is mandatory.. not needed by WebSocket only

Sebastian: Another path could be saying we need to post-pone till 2.0
… or form needs to be present for now

Ben: my goal is to make WebThings compliant
… option 1: using link
… option 2: use bug with empty forms

Cristiano: should first talk how to handle the bug

McCool: like the suggestion to have a new op (like proposed by Sebastian)

Ben: in the case of WebThing... the op is "all"
… single websocket connection

Ege: kind of a mis-use of semantics
… why not listing them all

<benfrancis> https://github.com/w3c/wot-thing-description/issues/1070

Ben: created issue, see link above

Sebastian: wonder why it closed?

Ben: I did close it.. assuming op can be blank

McCool: "all" is bit weird
… maybe you just want to do some
… still like op "open" or so

Ege: How to know when to do this form

Cristiano: once it is there.. every affordance should use it

McCool: same protocol
… using same connection

Cristiano: WebThing has just top-level form...

McCool: how to distinguish href?

Ben: are the same
… pubsub in WebThings is not yet fully supported
… looking for simplest solution

McCool: having top level form looks like simplest solution

Ben: if we had op "open" and forms in each interaction. Does this work for MQTT?

Ege: makes sense

McCool: does prefix part indicate broker?

Ege: Yes

Ege: annoying problem. mqtt://localhost:1883/myThings/temp
… in form in property myThings/temp it is not set whether to use with or without slash

McCool: using fragment identifier may help

Ege: might work
… in MQTT "#" is special... like wildcard
… should use "$" instead

McCool: MQTT never sees the pound sign (#)

Sebastian: Suggest getting back to global connection information
… does new op type work

McCool: Looks like

Daniel: wonder whether we need the counterpart "close" too

McCool: Suggest to wait for use-case
… or call it "initialize" to avoid questions

<McCool> (another option would be "connect" for the global op)

Ben/Ege: >discussions about WebThings and base<

Ben: not sure about the problem we are solving

MK: WebThing still needs selector

McCool: Form is required .. but for example form can be inferred.. also in ECHONET

Cristiano: problem we solve: put form there for WebSocket

Ben: for http and WS we do not have a problem

Sebastian: suggest to continue the discussion in issue
… root form looks promising

<McCool> (sorry, another meeting, need to drop)

<kaz> [adjourned]

Minutes manually created (not a transcript), formatted by scribe.perl version 136 (Thu May 27 13:50:24 2021 UTC).