Today I discovered an interesting inconsistency in Activity Streams specs while investigating a Fedify issue.
The question: How should we interpret URLs like "icon": "https://example.com/avatar.png"?
JSON-LD context (https://www.w3.org/ns/activitystreams
@type: "@id" β βThis is an IRI reference, dereference it to fetch an ActivityStreams object.β
Activity Streams Primer: βassume that a bare string is the href of a Link object, not an idβ (no dereferencing)
Result: JSON-LD processor-based implementations try to parse PNG files as JSON and fail.
Turns out w3c/activitystreams#595 already discusses the same issue for href properties. I added a note that icon, image, etc. have the same problem.
Once again reminded of how tricky spec work can beβ¦
#ActivityPub #Fedify #ActivityStreams #fedidev #specifications