W3C Web of Things Community Group
TPAC 2023 - Quick Intro to WoT
Cristiano Aguzzi - Ege Korkan
September 11th and 14th, 2023
1
Web of Things Community Group | TPAC 2023 | 2023-09-14
With a browser, you can access all the content in the Web
2
Web of Things Community Group | TPAC 2023 | 2023-09-14
You don’t have that with IoT
WoT is here to fix it!
3
Web of Things Community Group | TPAC 2023 | 2023-09-14
What is different in IoT?
Overall, there is a fragmentation problem
4
Web of Things Community Group | TPAC 2023 | 2023-09-14
A small part of the landscape
5
Web of Things Community Group | TPAC 2023 | 2023-09-14
Each domain has its own set of protocols, standards, tools, vocabularies
6
Web of Things Community Group | TPAC 2023 | 2023-09-14
Web of Things Now
7
Was a proposal on how to build REST APIs for IoT devices
Is about describing any kind of API for IoT devices using any protocol
Web of Things Community Group | TPAC 2023 | 2023-09-14
Now 4 normative deliverables (from WG), participants from over 35 organizations, dozens of implementations
8
Web of Things Community Group | TPAC 2023 | 2023-09-14
Mashups at Standardization Events (since 2016!)
9
Web of Things Community Group | TPAC 2023 | 2023-09-14
10
Family of W3C Standards
Open Source
Market Adoption
Developer Friendly
(Re)Usable API Descriptions for every Thing
Royalty Free and Open
Web of Things Community Group | TPAC 2023 | 2023-09-14
Web of Things, not a Protocol
11
Narrow Waist Model
Network Protocols
Bindings
Interaction Affordances
Semantics
Applications
Thing
Description
Web of Things Community Group | TPAC 2023 | 2023-09-14
Core Specification: Thing Description (TD)
12
Protocols
Domain Knowledge via
Semantic Annotations
Semantic Context
Security
Properties
Data Schema
Forms
Links
Actions
Data Schema
Forms
Events
Data Schema
Forms
JSON-LD Serialization
Effect in the real world
Discovery and
Usage by Clients
Web of Things Community Group | TPAC 2023 | 2023-09-14
What to do with a TD
13
Web of Things Community Group | TPAC 2023 | 2023-09-14
Quick Deeper look into the Thing Description
14
Version 1.1 almost out!
Web of Things Community Group | TPAC 2023 | 2023-09-14
Deeper look: Thing Level
15
{
"@context": [
"https://www.w3.org/2022/wot/td/v11",
{"iot":"http://iotschema.org"}
],
"@type":"SprinklerStation",
"id": "urn:dev:ops:Agriculture-7331",
"title": "SoilStation",
"description": "A soil management station for use in agriculture",
"securityDefinitions": { "basic_sc": {"scheme": "basic"} },
"security": "basic_sc",
"properties": {
"temperature": {...}
},
"actions": {
"startSprinkler": {...}
},
"events": {
"tooDry": {...}
},
"links":["href":"docs", "rel":"about", "type":"text/html"]
}
Thing
Metadata
Definitions of
Interaction Affordances
Semantic Annotations
Security
Metadata
Links to other
Documents
Web of Things Community Group | TPAC 2023 | 2023-09-14
Deeper look: Interaction Level
16
"properties": {
"temperature": {
"title": "Temperature",
"type": "number",
"unit": "Celsius",
"forms": [...]
},
"actions": {
"startSprinkler":{
"description": "Run sprinkler for a set time",
"input": {
"type": "object",
"properties": {"timeout": {...}},
},
"forms": [...]
},
"events": {
"tooDry": {
"data": {"type": "string"},
"forms": [...]
}
Interaction
Metadata
JSON Schema
Concrete Protocol Information
Web of Things Community Group | TPAC 2023 | 2023-09-14
Deeper look: Protocol Level
17
"forms": [
{
"href": "http://example.com/light/currentdimmer",
"contentType": "application/json",
"op": "readproperty",
"htv:methodName": "GET"
},
{
"href": "mqtt://example.com/",
"op": "observeproperty",
"mqv:filter": "example/light/currentdimmer”,
"mqv:controlPacket": "subscribe"
}
]
Protocol and URI
of the Resource
Intended WoT
Operation
Protocol Specific Vocabulary
Web of Things Community Group | TPAC 2023 | 2023-09-14
Other WoT Specifications
18
Web of Things Community Group | TPAC 2023 | 2023-09-14
19
Binding
Templates
Scripting
API
Common Reference, Deployment Patterns,
Relationship between specifications
Extending TDs for different protocols, media types, ecosystems, etc.
How to find TDs in a network, TD management via a REST API
Programming API for building Consumer and Thing applications
Architecture
REC
Discovery
REC
A mechanism for creating subset of TD for less flexibility but easier implementability
Profile
REC*
Use Cases and Requirements
Where different WoT specifications get motivation for new features
Web of Things Community Group | TPAC 2023 | 2023-09-14
Where to Learn More?
20
Official Web Page of W3C WoT
Read documentation and
watch some videos on the official page
Join one of the CG office hours
Web of Things Community Group | TPAC 2023 | 2023-09-14
Stay in Touch with the CG
21
Web of Things Community Group | TPAC 2023 | 2023-09-14
WoT Related Events at TPAC
WoT CG Calendar: https://www.w3.org/groups/cg/wot/calendar/
WoT WG Calendar: https://www.w3.org/groups/wg/wot/calendar/
22
Web of Things Community Group | TPAC 2023 | 2023-09-14