Skip to content

[Bug]: "featured" attribute on JSON-LD for communities is not part of any of the included context documents. #500

@lullis

Description

@lullis

Requirements

  • Is this a bug report? For questions or discussions use https://lemmy.ml/c/lemmy_support or the matrix chat.
  • Did you check to see if this issue already exists?
  • Is this only a single bug? Do not put multiple bugs in one issue.
  • Do you agree to follow the rules in our Code of Conduct?
  • Is this a backend issue? Use the lemmy-ui repo for UI / frontend issues.

Summary

Communities provide the information about pinned posts as a collection in the "featured" field. E.g, https://lemmy.example/c/linked-data which stores the list of pinned posts at https://lemmy.example/c/linked-data/featured.

The "featured" attribute is commonly used by other software via the join-mastodon context (toot:featured), but the mastodon namespace is not included in lemmy's context document, so any attempt at parsing JSON-LD data leads to "featured" becoming a "blank node".

In effect, this makes software that depends on RDF to read and process documents generated by lemmy incomplete.

Steps to Reproduce

1.Take the JSON-LD from any community url and paste it on https://json-ld.org/playground/, e.g, https://lemmy.world/c/nba
2.Look at the "expanded" tab and look for the "featured" key, compare with the followers key.

_:featured": [
      {
        "@value": "https://lemmy.world/c/nba/featured"
      }
    ],
    "https://www.w3.org/ns/activitystreams#followers": [
      {
        "@id": "https://lemmy.world/c/nba/followers"
      }

Technical Details

You can fix this by either including the mastodon context url on your document, or by redefining the featured attribute on your lemmy namespace. In any case, I've seen in other threads that you are not claiming to support json-ld, but I'd ask you to reconsider this. RDF and JSON-LD might seem like superfluous overhead, but once you get past the initial learning curve it can make the development of truly independent and decenralized web, easier, faster and richer in functionality.

Version

0.19.13

Lemmy Instance URL

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions