Problem
During review of eclipse-uprotocol/up-streamer-rust#77, we hit ambiguity around subscriber URI examples used in subscription data (for example //authority-b/5678/1/1234).
Reviewer feedback suggested using resource 0x0000 for subscriber UUris for clarity. That appears consistent with endpoint semantics, but the current uSubscription text does not explicitly require it.
Relevant spec context
SubscriberInfo is defined as subscriber identification (URI of the subscribing uEntity):
FetchSubscriptions by subscriber is defined as subscriber -> topics:
- Subscriber URI validity currently requires non-wildcard authority/ue_id/resource_id, but does not require resource
0:
- Endpoint-style addressing in uProtocol consistently uses
resource_id = 0:
- By contrast, publish topic resources use
[0x8000, 0xFFFE]:
Gap
There is no explicit normative statement that SubscriberInfo.uri.resource_id must be 0, which leads to inconsistent examples and reviewer confusion.
Proposed change
Add explicit uSubscription requirement text that for SubscriberInfo.uri:
resource_id MUST be 0 (subscriber endpoint identity),
- existing non-wildcard requirements remain in force.
Also update:
up-l3/usubscription/v3/README.adoc (normative text + examples),
up-core-api/uprotocol/core/usubscription/v3/usubscription.proto comments for SubscriberInfo.
Why
This removes ambiguity, aligns SubscriberInfo with established endpoint semantics, and improves interoperability/readability across implementations and tests.
Problem
During review of eclipse-uprotocol/up-streamer-rust#77, we hit ambiguity around subscriber URI examples used in subscription data (for example
//authority-b/5678/1/1234).Reviewer feedback suggested using resource
0x0000for subscriber UUris for clarity. That appears consistent with endpoint semantics, but the current uSubscription text does not explicitly require it.Relevant spec context
SubscriberInfois defined as subscriber identification (URI of the subscribing uEntity):FetchSubscriptionsby subscriber is defined as subscriber -> topics:0:resource_id = 0:[0x8000, 0xFFFE]:Gap
There is no explicit normative statement that
SubscriberInfo.uri.resource_idmust be0, which leads to inconsistent examples and reviewer confusion.Proposed change
Add explicit uSubscription requirement text that for
SubscriberInfo.uri:resource_idMUST be0(subscriber endpoint identity),Also update:
up-l3/usubscription/v3/README.adoc(normative text + examples),up-core-api/uprotocol/core/usubscription/v3/usubscription.protocomments forSubscriberInfo.Why
This removes ambiguity, aligns
SubscriberInfowith established endpoint semantics, and improves interoperability/readability across implementations and tests.