The WoT Profile specification serves two purposes:
-
It defines a generic Profiling Mechanism which provides a mechanism to describe a profile in an unambiguous way. This mechanism can be used to define additional profiles.
-
In addition it defines a Core Profile of the Thing Description for use with selected protocols. The Core Profile formalizes the results of several plug-fests that were conducted by the WoT Interest Group and of tests that were conducted as part of the development. It is expected that additional profiles for thing templates and other protocols will be defined in the near future.
Devices that constrain their use of the Thing Description to the WoT Core Profile can interoperate other out-of-the-box.
A rendered version of the profile specification is available at: WoT Profile
Motivation:
The W3C Web of Things Architecture and Web of Things Thing Description define a powerful mechanism and a format to describe myriads of very different devices, which may be connected over various protocols. The format is very flexible and open and puts very few normative requirements on devices that implement it.
However, this flexibility de-facto prevents interoperability, since, without additional rules, it allows implementers to make many choices that do not provide guarantees of common behavior between implementations.
These rules have to be prescriptive, to ensure that compliant implementations satisfy the semantic guarantees, that are implied by them. We call this set of rules a Profile.