diff --git a/09.md b/09.md index fbbd6e13..06f2769a 100644 --- a/09.md +++ b/09.md @@ -6,9 +6,9 @@ Event Deletion `draft` `optional` -A special event with kind `5`, meaning "deletion" is defined as having a list of one or more `e` tags, each referencing an event the author is requesting to be deleted. +A special event with kind `5`, meaning "deletion" is defined as having a list of one or more `e` or `a` tags. -Each tag entry must contain an "e" event id and/or `a` tags intended for deletion. +Each `e` tag entry references the id of an event to be deleted, and each `a` tag references the co-ordinates of a (maybe parameterized) replaceable event to be deleted. The event's `content` field MAY contain a text note describing the reason for the deletion. @@ -21,7 +21,7 @@ For example: "tags": [ ["e", "dcd59..464a2"], ["e", "968c5..ad7a4"], - ["a", "::"] + ["a", "::"] ], "content": "these posts were published by accident", ...other fields @@ -32,6 +32,8 @@ Relays SHOULD delete or stop publishing any referenced events that have an ident Relays SHOULD continue to publish/share the deletion events indefinitely, as clients may already have the event that's intended to be deleted. Additionally, clients SHOULD broadcast deletion events to other relays which don't have it. +In case of parameterized replaceable events, any deletion (`kind:5`) event referencing an `a` tag marks all the events using that particular `d` tag up to the point of the deletion event's `created_at`, for deletion. It is so that the same `d` tag and kind combination can be used again in the future. + ## Client Usage Clients MAY choose to fully hide any events that are referenced by valid deletion events. This includes text notes, direct messages, or other yet-to-be defined event kinds. Alternatively, they MAY show the event along with an icon or other indication that the author has "disowned" the event. The `content` field MAY also be used to replace the deleted events' own content, although a user interface should clearly indicate that this is a deletion reason, not the original content.