Status Updates and Comments
This page is not normative
This page is not considered a core part of the Vultron Protocol as proposed in the main documentation. Although within the page we might provide guidance in terms of SHOULD, MUST, etc., the content here is not normative.
Here we have a number of activities that are used to update the status of a case, or to add a comment to a case.
flowchart TB
subgraph as:Add
AddNoteToCase
AddStatusToCase
AddStatusToParticipant
end
subgraph as:Create
CreateNote
CreateParticipantStatus
CreateStatus
end
start([Start])
start -.-> CreateStatus
start -.-> CreateParticipantStatus
start -.-> CreateNote
CreateNote --> AddNoteToCase
CreateStatus --> AddStatusToCase
CreateParticipantStatus --> AddStatusToParticipant
AddStatusToParticipant -.-> AddStatusToCase
AddNoteToCase -.-> AddStatusToParticipant
AddNoteToCase -.-> AddStatusToCase
See also
Descriptions of the CaseStatus
and
ParticipantStatus
, and CaseParticipant
objects can be found in the Objects section.
In addition to the Create/Add process for each of these, there are sometimes additional activities that are triggered in response to a status update or a comment:
- A status update to a participant can trigger a status update to the case.
- A note might trigger a status update to a case or a participant.
A Note on as:Notes
The ActivityStreams vocabulary includes an as:Note
object, which is
used to represent a comment or short post. We use this object to represent
comments on a case.
Create then Add vs Create with a Target
In this documentation, we use the as:Create
activity to represent the
creation of a new object, such as a new note or a new status. We use the
as:Add
activity to represent the addition of an existing object to another
object, such as adding a status to a case.
However, it is likely acceptable within an ActivityPub implementation to
use the as:Create
activity for both cases, since the as:Create
activity
includes a target
property that can be used to specify the object to
which the new object is being added.
Sinilarly, it may also be acceptable to use the as:Add
activity to
represent the creation of a new object, since the as:Add
activity
includes a object
property that can be used to specify the object that
is being created along with the target
property that can be used to
specify the object to which the new object is being added.
Create Status
{
"@context": "https://www.w3.org/ns/activitystreams",
"asType": "Create",
"id": "https://for.example/2343ced8-e0b4-4b9b-afa4-aa9a9fa10882",
"name": "https://vultron.example/organizations/vendor Create EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/VDR-20991514",
"actor": "https://vultron.example/organizations/vendor",
"object": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "CaseStatus",
"id": "https://vultron.example/cases/1/status/1",
"name": "EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/1",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"emState": "EMBARGO_MANAGEMENT_NONE",
"pxaState": "pxa"
}
}
Add Status to Case
{
"@context": "https://www.w3.org/ns/activitystreams",
"asType": "Add",
"id": "https://for.example/6be4a653-fb1b-4976-8d07-fadeb60a105a",
"name": "https://vultron.example/organizations/vendor Add EMBARGO_MANAGEMENT_NONE pxa to https://vultron.example/cases/VDR-20991514",
"actor": "https://vultron.example/organizations/vendor",
"target": "https://vultron.example/cases/VDR-20991514",
"object": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "CaseStatus",
"id": "https://vultron.example/cases/1/status/1",
"name": "EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/1",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"emState": "EMBARGO_MANAGEMENT_NONE",
"pxaState": "pxa"
}
}
Create Participant Status
{
"@context": "https://www.w3.org/ns/activitystreams",
"asType": "Create",
"id": "https://for.example/3a4e9732-0087-49e9-bbdd-829cc18ce289",
"name": "https://vultron.example/organizations/vendor Create REPORT_MANAGEMENT_RECEIVED Vfd EMBARGO_MANAGEMENT_NONE pxa",
"actor": "https://vultron.example/organizations/vendor",
"target": null,
"object": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "ParticipantStatus",
"id": "https://vultron.example/cases/1/participants/vendor/status/1",
"name": "REPORT_MANAGEMENT_RECEIVED Vfd EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/1/participants/vendor",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"actor": "https://vultron.example/organizations/vendor",
"rmState": "REPORT_MANAGEMENT_RECEIVED",
"vfdState": "Vfd",
"caseEngagement": true,
"embargoAdherence": true,
"caseStatus": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "CaseStatus",
"id": "https://vultron.example/cases/1/status/1",
"name": "EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/1",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"emState": "EMBARGO_MANAGEMENT_NONE",
"pxaState": "pxa"
}
}
}
Add Status to Participant
{
"@context": "https://www.w3.org/ns/activitystreams",
"asType": "Add",
"id": "https://for.example/b14efa96-7a64-43fb-80a1-b14186b67911",
"name": "https://vultron.example/organizations/vendor Add REPORT_MANAGEMENT_RECEIVED Vfd EMBARGO_MANAGEMENT_NONE pxa to https://vultron.example/cases/1/participants/vendor",
"actor": "https://vultron.example/organizations/vendor",
"target": "https://vultron.example/cases/1/participants/vendor",
"object": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "ParticipantStatus",
"id": "https://vultron.example/cases/1/participants/vendor/status/1",
"name": "REPORT_MANAGEMENT_RECEIVED Vfd EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/1/participants/vendor",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"actor": "https://vultron.example/organizations/vendor",
"rmState": "REPORT_MANAGEMENT_RECEIVED",
"vfdState": "Vfd",
"caseEngagement": true,
"embargoAdherence": true,
"caseStatus": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "CaseStatus",
"id": "https://vultron.example/cases/1/status/1",
"name": "EMBARGO_MANAGEMENT_NONE pxa",
"context": "https://vultron.example/cases/1",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"emState": "EMBARGO_MANAGEMENT_NONE",
"pxaState": "pxa"
}
}
}
Create Note
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Create",
"id": "https://for.example/f72330e3-f567-45b2-85c6-a789b96cd3a7",
"name": "https://vultron.example/organizations/vendor Create Note to https://vultron.example/cases/VDR-20991514",
"actor": "https://vultron.example/organizations/vendor",
"target": "https://vultron.example/cases/VDR-20991514",
"object": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Note",
"id": "https://vultron.example/notes/1",
"name": "Note",
"context": "https://vultron.example/cases/VDR-20991514",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"content": "This is a note."
}
}
Add Note to Case
{
"@context": "https://www.w3.org/ns/activitystreams",
"asType": "Add",
"id": "https://for.example/854b3335-ebc4-4766-9ec1-f63ef0edda1b",
"name": "https://vultron.example/users/finn Add Note to https://vultron.example/cases/VDR-20991514",
"actor": "https://vultron.example/users/finn",
"target": "https://vultron.example/cases/VDR-20991514",
"object": {
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Note",
"id": "https://vultron.example/notes/1",
"name": "Note",
"context": "https://vultron.example/cases/VDR-20991514",
"published": "2024-07-09T20:17:19+00:00",
"updated": "2024-07-09T20:17:19+00:00",
"content": "This is a note."
}
}