Skip to content

Commit

Permalink
changed based on today's call
Browse files Browse the repository at this point in the history
Signed-off-by: Doug Davis <dug@us.ibm.com>
  • Loading branch information
Doug Davis committed Aug 15, 2019
1 parent c09c89a commit 7dfb863
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 48 deletions.
48 changes: 0 additions & 48 deletions primer.md
Original file line number Diff line number Diff line change
Expand Up @@ -236,54 +236,6 @@ general, this is true for all CloudEvents attributes as well.
This section provides additional background and design points related to some of
the CloudEvent attributes.

### String Values

Some of the CloudEvent attributes are defined to be of type `String`, and
all data types used by CloudEvent attribute are required to have a
string-encoding. This makes for an easy serialization to even the most
basic formats and transports that might only have a string representation of
attributes.

Even with that model, it may still be possible to use certain
characters that could be problematic in some cases. The CloudEvents
specification does not attempt to further restrict the valid characters used
for attribute values so as to allow for the specification to be used in
situations where those potentially problematic characters are desired.

However, this should not be interpreted as encouragement for producers to
push the boundaries of what characters should be used just for the sake of
edge-testing implementations. CloudEvents is striving to help with
interoperability while still being flexible enough to be used in unique
situations. So, CloudEvent producers are encouraged to only use values that
have the best chance of being properly processed by all possible formats
and transports that their CloudEvents might be used with.

### URI-reference Values

Attributes of type URI-reference have quite a large set of valid values that
can be used. For example, it is possible that the `source` attribute could be
as short as `home` or could be more meaningful, such as
`http://home.example.com`. The CloudEvents specification allows for a wide
range of values to allow for it to be used in as any use cases as possible,
without undue burden on implementations.

As an example, while `home` as a value for `source` would not be a wise
choice when the CloudEvent is meant to be used in a very public environment,
it may make perfect sense in a closed system where a full reverse-DNS name
might be unnecessary. Or perhaps there is a severe size limitation on
the size of the CloudEvent and shorter URI-references are needed.

These are decisions that CloudEvent producers will need to decide for
themselves based on their needs and expected usage of their events.

Additionally, the CloudEvents specification does not define a `baseURI`
to be used along with the URI-reference type attributes. This is because,
unless otherwise stated, the URI-references are not meant to be normalized
or used for any other purpose other than comparing its string value against
some other URI-reference string value for equality. The use of URI-reference,
instead of just a String, was done to encourage the use of meaningful values
with a well-defined structure.

### id

The `id` attribute is meant to be a value that is unique across all events
Expand Down
1 change: 1 addition & 0 deletions spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ The following attributes are REQUIRED to be present in all CloudEvents:
- Constraints:
- REQUIRED
- MUST be a non-empty URI-reference
- RECOMMENDED that an absolute URI be used
- Examples
- Internet-wide unique URI with a DNS authority.
- https://github.com/cloudevents
Expand Down

0 comments on commit 7dfb863

Please sign in to comment.