Typically, in classical IoT projects, developers have to face a challenging situation. They have to understand a heterogeneous technology landscape consisting of diverse IoT systems and services from different vendors and manufacturers. This diversity includes variations in communication protocols, data models for payload data exchange, and security requirements. IoT applications are usually developed using high effort applied to a narrow and specific use case. During their lifetime, such applications are difficult to extend, maintain or reuse.
The Web of Things (WoT) provides a set of standardized technology building blocks that help to simplify IoT application development by following the well-known and successful Web paradigm. This approach increases flexibility and interoperability, especially for cross-domain applications, as well as enabling reuse of established standards and tools. WoT unlocks commercial potential being held back by IoT fragmentation
Please read the WoT Architecture document to get more background on WoT use cases and basic paradigms.
WoT introduces a simple interaction abstraction based on properties, events, and actions. Any IoT network interface can be described in terms of this abstraction. By using this abstraction, applications have a common anchor to retrieve an IoT service’s metadata as well as way to understand what and how the data and an IoT services' functions can be accessed.
Please read here to get more background about the properties-action-event paradigm.
An IoT device's metadata, including all information needed to enable this common abstraction, is documented in what is called WoT Thing Description (TD). The TD is a central building block in the W3C Web of Things and can be considered as the entry point of an IoT instance (much like the index.html of a Web site). It provides information on which data and functions are provided, which protocol is used, how data is encoded and structured, and security mechanism is used to control access, and further machine-readable and human-readable metadata. A TD is expressed in JSON-LD and can be provided by an IoT device itself or hosted externally in a repository such as a TD Directory.
Please read here to get more background on the WoT Thing Description.
In general, WoT is a protocol agnostic approach and provides a common mechanism to define how specific protocols such as MQTT, HTTP, CoAP or Modbus can be mapped to the WoT’s interaction properties-action-event abstraction.
This mapping and protocol specific metadata are provided by the WoT Binding Templates. A binding template for a specific protocol provides a guideline how a client can activate each WoT interaction abstraction through a corresponding network-facing interface for that protocol.
Please read here to get more background on WoT Binding Templates.
Please read here to get more background on the WoT Scripting API.
The Web of Things also provides guidance on WoT Security and Privacy. WoT provides guidelines for the secure implementation and configuration of Things. Security and privacy should be considered in any system implementing W3C WoT.
Please read here to get more background on WoT Security and Privacy.
For further reading, please find below a set of links to a variety of additional material including presentations and documents.