diff --git a/fep/9967/fep-9967.jsonld b/fep/9967/fep-9967.jsonld new file mode 100644 index 0000000..89829eb --- /dev/null +++ b/fep/9967/fep-9967.jsonld @@ -0,0 +1,5 @@ +{ + "@context": { + "Respond": "https://w3id.org/fep/9967/Respond" + } +} diff --git a/fep/9967/fep-9967.md b/fep/9967/fep-9967.md index 3eb4894..f30b394 100644 --- a/fep/9967/fep-9967.md +++ b/fep/9967/fep-9967.md @@ -2,7 +2,7 @@ slug: "9967" authors: silverpill <@silverpill@mitra.social> status: DRAFT -discussionsTo: https://codeberg.org/silverpill/feps/issues +discussionsTo: https://socialhub.activitypub.rocks/t/fep-9967-polls/4885 dateReceived: 2025-01-23 trackingIssue: https://codeberg.org/fediverse/fep/issues/478 --- @@ -90,7 +90,7 @@ The object MUST NOT have a `content` property. This object is wrapped in a `Create` activity and sent to the author of the poll. If the poll is anonymous, this activity MUST NOT be delivered to anyone else. -When a poll allows multiple choices, each vote MUST be sent as a separate activity. However, consumers SHOULD also be able to parse `Create` activity where `object` is an array of votes. +When a poll allows multiple choices, each vote MUST be sent as a separate activity. Example of a vote: @@ -106,7 +106,10 @@ Example of a vote: } ``` -A vote can be identified by checking whether the object specified by `inReplyTo` property is a `Question`. It can also be identified as a `Note` with `name` and without `content`, but this method is less reliable. +The structure of a vote is very similar to a direct reply. It can be identified as a `Note` with `name` and `inReplyTo` properties, but without a `content` property. + +>[!NOTE] +>The method of identifying votes described here is not reliable. An alternative representation is being discussed (the `Respond` activity). Upon receving a vote, the author of the poll performs the following checks: