Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify the definitions of Application and Service types #563

Open
1 of 5 tasks
trwnh opened this issue Dec 19, 2023 · 5 comments
Open
1 of 5 tasks

Clarify the definitions of Application and Service types #563

trwnh opened this issue Dec 19, 2023 · 5 comments
Assignees
Labels
Pending Closure Resolved Unless the issue creator protests, this will be closed in a week or two Waiting for Commenter

Comments

@trwnh
Copy link

trwnh commented Dec 19, 2023

Please Indicate One:

  • Editorial
  • Question
  • Feedback
  • Blocking Issue
  • Non-Blocking Issue

Please Describe the Issue:

It is fairly clear what Person, Organization, and Group are supposed to be -- they are directly parallel (or even equivalent to) the VCard kinds of Individual, Organization, and Group. (AS2-Core even recommends that you SHOULD use VCard properties to mark these up.)

However, it is much less clear what Application and Service are supposed to be. An Application is described as a "software app", which is workable enough, but a Service is incredibly vague, as it "represents a service of any kind". Given that the noun "service" has at least 9 different definitions, it would probably make sense to apply some limitations on this description. For example, it could be used to describe actors that provide help or do work or offer commercial support or any number of other things.

As a deliverable, a Primer page describing the actor types more in-depth and providing guidance on when to use each type would probably be a good thing to have. I'm not sure if there's any errata that could be proposed or applied to the AS2-Vocab spec doc's language too, but that's something else to consider.

@evanp evanp added the Needs primer page Need to add a page at https://www.w3.org/wiki/Activity_Streams/Primer on this topic label Dec 27, 2023
@evanp evanp self-assigned this Dec 27, 2023
@evanp
Copy link
Collaborator

evanp commented Dec 27, 2023

In issue triage, we put together two pages in the AS2 primer on Application and Service:

https://www.w3.org/wiki/Activity_Streams/Primer/Application_type

https://www.w3.org/wiki/Activity_Streams/Primer/Service_type

There are definitely a lot of subtleties, but from a first-order review, Application = client and Service = server is an OK definition.

@evanp evanp added Waiting for Commenter Pending Closure Resolved Unless the issue creator protests, this will be closed in a week or two and removed Needs primer page Need to add a page at https://www.w3.org/wiki/Activity_Streams/Primer on this topic labels Dec 27, 2023
@silverpill
Copy link

silverpill commented Dec 28, 2023

All popular implementations use Application type for instance actors and Service type for automated accounts (aka bots). The role of Application actor is also described in FEP-2677: Identifying the Application Actor

Given the interchangeable nature of terms "application" and "service", I think these Primer pages should be changed to reflect de-facto standards:

  • Treat Application as a client software application or an account server (or just "as a software application")
  • Treat Service as an automated account.

@ThisIsMissEm
Copy link
Contributor

ThisIsMissEm commented Mar 13, 2024

#591 has been opened relating to this issue.

w3c/activitypub#431 has also been opened relating to this issue.

@evanp
Copy link
Collaborator

evanp commented Apr 3, 2024

@silverpill I've incorporated your comments into the Primer pages. Can you review, and if you're satisfied, comment here?

@silverpill
Copy link

@evanp Thanks. I can see the new revision of "Service type" page which adds information about bots. But it seems that general recommendations haven't been changed?

I think it could be helpful to look at this from a user's perspective. Whether software runs on a client side or a server side is not very important. What our user is interested in is interaction. This is probably the reason why some implementers have decided to use one type for bots and a different type for everything else: a bot can be followed and interacted with, but other software actors only work in background.

In my opinion Service and Application are good terms to describe these two categories, even if originally they had different meanings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Pending Closure Resolved Unless the issue creator protests, this will be closed in a week or two Waiting for Commenter
Projects
None yet
Development

No branches or pull requests

4 participants