@julian I am reading through the context fep and I am wondering if nodeBB only supports the context to be a collection or could it also be a post that starts a conversation?
-
@pfefferle@mastodon.social about to take off to Dublin (connection to Toronto), so can answer more in 1.5h
-
J julian@community.nodebb.org shared this topic
-
@julian @pfefferle there's a few options on what it would ideally be, but it *can* be any Object
1) group by `id`
2) possibly moderated by `attributedTo`
3) should have some collection associated with it somehow, just a flat list of everything includedthe jury's out on how best to do #3 because the goal is to eventually be able to Follow a conversation. but https://github.com/w3c/activitypub/issues/486 makes it problematic to try to Follow a Collection directly...
-
@julian @pfefferle there's a few options on what it would ideally be, but it *can* be any Object
1) group by `id`
2) possibly moderated by `attributedTo`
3) should have some collection associated with it somehow, just a flat list of everything includedthe jury's out on how best to do #3 because the goal is to eventually be able to Follow a conversation. but https://github.com/w3c/activitypub/issues/486 makes it problematic to try to Follow a Collection directly...
@julian @pfefferle in terms of what kind of Object to use other than a Collection, i would say maybe don't use a Note because this is often not semantically correct. the current WIP idea is to define a `Conversation` entity that has something like a `posts` property. the thinking is that a conversation *has* a collection of posts, not that it *is* a collection of posts. this is the topic of a separate FEP though. nodeBB briefly went ahead and used Conversation before rolling it back as too early
-
@julian I am reading through the context fep and I am wondering if nodeBB only supports the context to be a collection or could it also be a post that starts a conversation?
And there are situations where the context will NOT be a collection.
For example, for a project management system, the context may be a specific task, but multiple threads (conversations) are related to that task. There is no collection to serve, since each thread has their own collection, and may even be on different servers.
This is why I advocate for a thread field that indicates the thread, if it has one. There are other use cases for context. -
And there are situations where the context will NOT be a collection.
For example, for a project management system, the context may be a specific task, but multiple threads (conversations) are related to that task. There is no collection to serve, since each thread has their own collection, and may even be on different servers.
This is why I advocate for a thread field that indicates the thread, if it has one. There are other use cases for context.@scott i imagine in the case that you're describing, a Task might have a `context` of a Project, but if you want to say that some Conversation is "related to" the Task, you would use something like `tag` instead? it doesn't make much sense to claim that an Article exists in context of a Task...
the other thing i have to ask is why even bother using AS2 for something that clearly isn't related to the AS2 content model of Note, Article, and Document? i'd consider using a different vocab entirely.
-
@scott i imagine in the case that you're describing, a Task might have a `context` of a Project, but if you want to say that some Conversation is "related to" the Task, you would use something like `tag` instead? it doesn't make much sense to claim that an Article exists in context of a Task...
the other thing i have to ask is why even bother using AS2 for something that clearly isn't related to the AS2 content model of Note, Article, and Document? i'd consider using a different vocab entirely.
@scott you might reuse *some* terms from AS2 but there's no need to overdo it. use different terms from different vocabs as appropriate. if an AS2 term isn't a perfect fit for a concept, don't try to force it in.
-
@julian @pfefferle in terms of what kind of Object to use other than a Collection, i would say maybe don't use a Note because this is often not semantically correct. the current WIP idea is to define a `Conversation` entity that has something like a `posts` property. the thinking is that a conversation *has* a collection of posts, not that it *is* a collection of posts. this is the topic of a separate FEP though. nodeBB briefly went ahead and used Conversation before rolling it back as too early
-
@pfefferle@mastodon.social you're right about that. While we haven't standardized on what the collection should resolve to, existing implementations today already resolve to a Collection-style type.
Take a look at this example to see how it is done in NodeBB:
(As of writing this context only has 9 items so all items are shown as is, although one could break it up into pages as needed)
-
@julian I think I have a working draft available in the next few days, maybe you have some time this or next week, to check it with nodeBB!?!
will send you a link when I have it deployed to my site.
-
@julian I think I have a working draft available in the next few days, maybe you have some time this or next week, to check it with nodeBB!?!
will send you a link when I have it deployed to my site.
@pfefferle@mastodon.social I would be thrilled to.
I would be on a beach in Mexico (family vacation), but I will make it happen.
-
@julian oh no! take your time!!! there is no hurry
enjoy your family vacation
️
-
@julian I am reading through the context fep and I am wondering if nodeBB only supports the context to be a collection or could it also be a post that starts a conversation?
@pfefferle You may want to read the previous version of FEP-7888, which says that context should resolve to a collection:
This is what various projects have implemented so far.
The FEP was changed several days ago and now it is a very different document. The recommendation to use collection is no longer present, so I don't see any reason to refer to this FEP anymore.
-
@scott i imagine in the case that you're describing, a Task might have a `context` of a Project, but if you want to say that some Conversation is "related to" the Task, you would use something like `tag` instead? it doesn't make much sense to claim that an Article exists in context of a Task...
the other thing i have to ask is why even bother using AS2 for something that clearly isn't related to the AS2 content model of Note, Article, and Document? i'd consider using a different vocab entirely.
@infinite love ⴳ The projects and tasks would have its own API or protocol for syncing and sharing. I am not referring to that.
I am talking about when a AS2 Note or AS2 Article is associated with a Task or Project.
Server A might want to notify Server B of that association over ActivityPub, because AS2 Notes and AS2 Articles will be delivered over ActivityPub, not the Project API/protocol.
The user interface could then link to the related project or task. -
@infinite love ⴳ The projects and tasks would have its own API or protocol for syncing and sharing. I am not referring to that.
I am talking about when a AS2 Note or AS2 Article is associated with a Task or Project.
Server A might want to notify Server B of that association over ActivityPub, because AS2 Notes and AS2 Articles will be delivered over ActivityPub, not the Project API/protocol.
The user interface could then link to the related project or task.@scott use `tag` for that
-
@pfefferle You may want to read the previous version of FEP-7888, which says that context should resolve to a collection:
This is what various projects have implemented so far.
The FEP was changed several days ago and now it is a very different document. The recommendation to use collection is no longer present, so I don't see any reason to refer to this FEP anymore.
thanks @silverpill
-
@scott use `tag` for that
@infinite love ⴳ That is doable. But the naming convention is a bit wonky.
You use context for collections. You use tags for context. You use summary for content warnings.
You don't want to use the term threads to describe threads because you want it to be a collection, which you call a context. So there is no way to specify the top level post without creating a collection.
It would be nice if the names reflected what the field is actually used for. -
@infinite love ⴳ That is doable. But the naming convention is a bit wonky.
You use context for collections. You use tags for context. You use summary for content warnings.
You don't want to use the term threads to describe threads because you want it to be a collection, which you call a context. So there is no way to specify the top level post without creating a collection.
It would be nice if the names reflected what the field is actually used for.- context isnt just collections, it's basically a supertag that lets you group things that belong together, the other half of scoping (next to audience)
- tags are literally "related to" taxonomical references so this shouldn't be mismatched at all
- threads aren't necessarily trees with a top or root, they may be a chronologically sorted ordered set
- names have multiple interpretations and connotations, this is ideally why we use URIs not basic string terms. as2-vocab has definitions. -
@infinite love ⴳ That is doable. But the naming convention is a bit wonky.
You use context for collections. You use tags for context. You use summary for content warnings.
You don't want to use the term threads to describe threads because you want it to be a collection, which you call a context. So there is no way to specify the top level post without creating a collection.
It would be nice if the names reflected what the field is actually used for. -
- context isnt just collections, it's basically a supertag that lets you group things that belong together, the other half of scoping (next to audience)
- tags are literally "related to" taxonomical references so this shouldn't be mismatched at all
- threads aren't necessarily trees with a top or root, they may be a chronologically sorted ordered set
- names have multiple interpretations and connotations, this is ideally why we use URIs not basic string terms. as2-vocab has definitions.@infinite love ⴳ- tags are literally "related to" taxonomical references so this shouldn't be mismatched at all
Exactly. It is not for #hastags like the name implies. -
@infinite love ⴳ
- tags are literally "related to" taxonomical references so this shouldn't be mismatched at all
Exactly. It is not for #hastags like the name implies.@scott AS2 didn't define a Hashtag type and also literally yes it's not for that, it's for the concept of a "tag". like if you tag an Image with a Person you are implying the Image contains the Person, and you can reverse query for all objects with a `tag` of that Person. they're basically categories. this is in the definition