Throwing a remix of this idea into the ring as well:
The quote activity
Instead of an Announce
with content
, we can define a new Activity type Quote
that can be used similarly, but has different semantics. Whereas an Announce
is defined like so:
Indicates that the
actor
is calling thetarget
's attention theobject
.
So instead of “calling for attention”, the Quote
activity would instead be defined semantically as:
Quote
: Indicates that the actor
is quoting the object
verbatim in its entirety.
The “quote activity” might also instead be named something else to avoid potential conflicts with other shorthand terms. Something like Cite
could also work. Alternatively, other disambiguated senses of the word may be represented in the noun form as a Quotation
or Citation
.
- (~) No fallback. This could be either good or bad, depending on if you want a fallback or if you want the semantics to be respected.
- (+) With the existence of a
quotes
collection (even if theitems
might be private), we can use its IRI as thetarget
of anAdd
which acts as a stamp of inclusion in a parallel way to how one might signal an Add into thelikes
,shares
,replies
,context
, etc collections. - (+) In theory supports one or multiple
object
references, but even if you limit the cardinality to 1, this at least “frees up” theinReplyTo
property for cases where you might reply to one post while quoting a different post. It also remains possible toQuote
anobject
while also declaring that yourQuote
isinReplyTo
the sameobject
.