- From: a <a@trwnh.com>
- Date: Fri, 26 Sep 2025 15:26:05 -0500
- To: Daiki tesaguri Mizukami <tesaguriguma@gmail.com>
- Cc: public-swicg@w3.org, Cristiano Longo <cristianolongo@opendatahacklab.org>
> I think embedding the whole document (which may be a very long `Article`) can be problematic in terms of copyright and privacy [...] Using hashes as suggested by Ben sounds more viable in that regard
I don't think it's problematic per se -- it's the same as presenting
that information in the HTML or visually. Include whichever claims you
find relevant to your representation. If you can't reproduce certain
information and can only link to it, then this should be reflected in
alternate representations as well.
For example, you might render the information from the following AS2 activity:
```json
{
"id": "https://activity.example/",
"actor": {
"id": "https://trwnh.com/#a",
"name": "a"
},
"type": "Like",
"object": {
"id": "https://note.example/",
"type": "Note"
}
}
```
as the following equivalent HTML representation:
```html
<p vocab="https://www.w3.org/ns/activitystreams#" typeof="Like"
resource="https://activity.example/">
<a href="https://trwnh.com/#a" property="actor">
<span property="name" about="https://trwnh.com/#a">a</span>
</a>
liked
<a href="https://note.example/" typeof="Note" property="object">
a Note
</a>.
</p>
```
In this example, we don't know anything more about the Note that a
liked. You can try discovering more information about note.example,
but you are not guaranteed to find anything (because the server might
be offline, unresponsive, etc), and more importantly, anything you get
back is not being claimed by me -- it's only being indirectly
referenced by me. I am not claiming to have Liked a Note whose content
is "I love Hitler"; I am only claiming to have Liked a Note, and
*someone else* is claiming that the Note's content is "I love Hitler".
Granted, that someone else is likely the authority (URI owner) who
gets to define every canonical bit of information about the Note. But
unless they publish revisions and/or mint identifiers to be able to
refer to specific revisions, I can't disambiguate between "that Note"
and "that Note as it existed at some point in time" without making
additional claims of my own. The most direct claim I can make is that
the content is (or was) "I hate Hitler", and that is what I was
Liking.
In the case of a long Article, you likely aren't showing the full
contents of that Article in the HTML representation of your Like
activity. Maybe an excerpt of content? In which case, perhaps define a
property to represent that excerpted content... and then include a
statement using that property:
```json
{
"id": "https://activity.example/",
"actor": {
"id": "https://trwnh.com/#a",
"name": "a"
},
"type": "Like",
"object": {
"id": "https://article.example/",
"type": "Article",
"https://vocab.example/excerpt-of-the-activitystreams-content": "In
this essay I will..."
}
}
```
Received on Friday, 26 September 2025 20:26:50 UTC