Skip to content

Add Web of Things CloudEvents extension - #1406

Open
marcschier wants to merge 26 commits into
cloudevents:mainfrom
marcschier:wot-context-extension
Open

marcschier wants to merge 26 commits into
cloudevents:mainfrom
marcschier:wot-context-extension

Conversation

@marcschier

@marcschier marcschier commented Oct 29, 2026 •

Copy link
Copy Markdown

No linked issue.

The previous mapping split the Thing identity across source and WoT
extension attributes and allowed events without a subject. Consumers could
not consistently identify the resolved Thing Description and the member
described by an event using CloudEvents core attributes.

Proposed Changes

  • Define a WoT core-attribute mapping using the source query parameters
    wotid and optional wotversion, followed by any additional parameters.
    The profile does not define or require a URI scheme; wot-td is only an
    example and is not proposed for registration. The separate WoT attributes
    are removed.
  • Require a URI-fragment JSON Pointer subject and a code-generation-friendly
    semantic type, with a publisher-configured override for ambiguous or invalid
    derivations.
  • Retain the OPC UA Publisher, writer, message-type, sequence, and status
    information needed by the combined profile. Keep native per-writer
    sequencing separate from CloudEvents source-wide ordering.
  • Replace an obsolete UNCTAD legislation link that caused verification to fail.

Release Note

The proposed WoT CloudEvents mapping identifies the Thing and optional version
in source, requires a resolved-TD subject, and uses a configurable semantic
type. The OPC UA mapping retains the native metadata needed to correlate and
order messages.

Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved

@marcschier marcschier left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feedback from review: Try to first make due with the core header vocabulary, and source is a perfect place for wotid and version is part of it.

Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/wot.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread tools/test_verify.py Resolved
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
@marcschier
marcschier force-pushed the wot-context-extension branch from 180a173 to 36411e0 Compare November 12, 2026 10:53
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Reorder the WoT profile so Core attribute mappings come first and Context resolution has its own contexturl section. Remove obsolete source-query and custom-scheme wording.

Require OPC UA publisher and writer identity for all data and event messages, accept identity from a retained Part 14 NetworkMessage envelope, the source query, or the Context, and define handling for missing or conflicting values. Add a full-envelope example.

Signed-off-by: Marc <marcschier@hotmail.com>
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Comment thread cloudevents/extensions/opcua.md Resolved
Remove redundant WoT source and identity rules from the OPC UA extension, clarify subject and writer metadata mapping, and omit opcuamessagetype when the retained NetworkMessage carries it.

Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Signed-off-by: Marc <marcschier@hotmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants