ArticleslgStudy

science

Thing Description

Thing Description is a science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Thing Description rather than just read about it. In short: The Thing Description (TD) (or W3C WoT Thing Description (TD)) is a royalty-free, open information model with a JSON based representation format for the Internet of Things (IoT). A TD provides a unified way to describe the capabilities of an IoT device or service with its offered data model and functions, protocol usage, and further metadata.

Thing Description — main illustration
Thing Description — illustration

Key takeaways

  • Thing Description belongs to science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Thing Description to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Thing Description from memory before moving on to harder problems.

Reference excerpt

The Thing Description (TD) (or W3C WoT Thing Description (TD)) is a royalty-free, open information model with a JSON based representation format for the Internet of Things (IoT). A TD provides a unified way to describe the capabilities of an IoT device or service with its offered data model and functions, protocol usage, and further metadata. Using Thing Descriptions help reduce the complexity of integrating IoT devices and their capabilities into IoT applications. The TD originated from the Web of Things (WoT) initiative of the international standards organization of the W3C which has the intention to increase the interoperability in the IoT. Since April 2020, the Thing Description is a W3C recommendation (W3C WoT Thing Description 1.0). The W3C published the Thing Description 1.1 as a W3C recommendation in December 2023.

Principles The major principle of the Thing Description is to provide a human-readable and machine-interpretable interface description of an IoT device/Thing. In that context, the WoT Thing Description is to the IoT what index.html is to a website: it can be considered as the entry point of a physical or virtual Thing/device. Thing Description are not limited to a specific communication protocol, rather it provides a framework called a WoT Binding Template. Such a Protocol Binding defines the mapping from an Interaction Affordance to concrete messages of a specific IoT protocol such as MQTT, HTTP, CoAP, Modbus or OPC UA. The WoT Thing Description defines 3 kinds of Interaction Affordances, named Property, Action and Event:

Property An Interaction Affordance that exposes state of an IoT device. This state can then be retrieved (read) and optionally updated (write). Devices can also choose to make Properties observable by pushing the new state after a change.

Action An Interaction Affordance that allows to invoke a function of an IoT device, which manipulates state (e.g., toggling a lamp on or off) or triggers a process on the device (e.g., dim a lamp over time).

Event An Interaction Affordance that describes an event source, which asynchronously pushes event data to the subscribers of the event (e.g., overheating alerts).

Components and standard technologies

In general, the Thing Description is designed to reuse and rely on established Internet and Web standards, this includes:

Serialization: The JSON serialization of the TD information model is aligned with the syntax of JSON-LD 1.1. JSON-LD opens the opportunity of context extension and enrich the Thing Description instances with additional (e.g., domain-specific) semantics such as from Schema.org. This also supports the extraction and the understanding of relevant information such as in discovery scenarios in IoT applications Security: The Thing Description comes with a framework that allows to provide metadata to follow existing security scheme such as OAuth2 or Digest Access Authentication. Due to the context extension concept of the Thing Description specific security schemes can be imported. Linking: Things may have references to other Things or like to link to further information. For defining such kind of relations the Thing Description relies on the well known Web Linking concept. Interactions: The offered data and/or functions of a Thing are assigned to the corresponding interaction affordance Properties, Actions, and Events. Data Schema: For modeling the Thing's data that can be exchanged, the concept of JSON schema is embedded in the Thing Description. Bindings: The binding templates define the specific protocol and serialization method for the properties, actions, and events of the Thing. As protocol identification and addressing method URI Identifier are used. For announcing the serialization encoding (e.g., JSON, CBOR, XML, Efficient XML Interchange) of the payload that is specified by the data schema, Media Type assignment is applied in the Thing Description.

Thing Description examples

Below is an example TD serialized in JSON-LD format, which has one property, one action and one event. The IoT device represented by this TD uses the HTTP protocol but a TD can represent any protocol with a URI scheme, as shown in the example below.This TD represents an Internet connected lamp, which could be thought as a simple version of a Philips Hue lamp. From this TD example, a client knows that there exists one Property affordance with the title status (lines 10-16). In addition, information is provided in lines 13-14 that this Property is readable with an HTTP GET request to the URI https://mylamp.example.com/status, and will return a string-based status value. In a similar manner, an Action affordance is specified to toggle the switch status using the POST method on the https://mylamp.example.com/toggle resource. The Event affordance enables a mechanism for asynchronous messages to be sent by a Thing. Here, a subscription to be notified upon a possible overheating event of the lamp can be obtained by using HTTP with its long polling subprotocol on https://mylamp.example.com/oh. The use of the GET or POST method is stated explicitly but can be omitted using the default assumptions stated in the TD specification. It can be seen that the HTTP methods are defined using the "htv:methodName" vocabulary terms. This vocabulary terms for HTTP are included in the TD vocabulary that is found in the "@context" value. This example also specifies the basic security scheme, requiring a username and password for access. A security scheme is first given a name and its corresponding scheme in the securityDefinitions and then activated by specifying that name in a security section. In combination with the use of the HTTP this example demonstrates the use of Basic access authentication.

Below is the same connected lamp but using MQTT protocol and no security.Differently from the last TD, here the forms include MQTT protocol as specified by the WoT Binding Templates. More specifically, lines 17, 25 and 34 describe what message types should be used to use the affordances. For example, instead of HTTP GET and longpoll subprotocol to observe the overheating event, a client can subscribe to this event using the MQTT protocol. Furthermore, a WoT device with MQTT protocol can be both a publisher and a subscriber. For the property and event affordances, it would publish the values, whereas for action affordances it would subscribe to the action topics that other MQTT publishers can trigger by publishing to these topics.

… excerpt ends here. Continue reading the full article.

Illustrations

Thing Description illustration
Thing Description: Figure 1. WoT Thing Description components.
Figure 1. WoT Thing Description components.
Thing Description: Example of a Thing Description object.
Example of a Thing Description object.

Worked examples

Example 1 — a first encounter with Thing Description

Start with the simplest possible case. Write down what Thing Description claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Thing Description before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Thing Description ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Thing Description

In research
Thing Description appears in science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Thing Description in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Thing Description is common in secondary-school and first-year university syllabi. It links to neighbouring topics Internet of things, JSON, Resource Description Framework, so understanding it makes those chapters shorter.
In everyday life
Look for Thing Description outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Thing Description in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Thing Description means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Thing Description out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Thing Description in simple terms?

The Thing Description (TD) (or W3C WoT Thing Description (TD)) is a royalty-free, open information model with a JSON based representation format for the Internet of Things (IoT). A TD provides a unified way to describe the capabilities of an IoT device or service with its offered data model and fun…

Why does Thing Description matter?

Because it connects several science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Thing Description?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Thing Description.

Tags

  • Internet of things
  • JSON
  • Resource Description Framework

Keep exploring