refactor: 📝 Use the term "transient entity" where appropriate

This commit is contained in:
Jesse Wierzbinski 2024-12-10 17:39:57 +01:00
parent 8bb062e887
commit 29f7ccba99
No known key found for this signature in database
11 changed files with 18 additions and 14 deletions

View file

@ -11,6 +11,7 @@ This page lists changes since Working Draft 3. {{ className: 'lead' }}
## Since WD 4
- Removed URI from [Report](/extensions/reports), and replaced `reason` with `tags`.
- Docs now use the term "Transient Entity" where appropriate.
- Mandated Unix-style `\n` line endings in all text fields.
- Renamed the following headers, as per [RFC 6648](https://tools.ietf.org/html/rfc6648):
- `X-Signature` to `Versia-Signature`

View file

@ -5,7 +5,7 @@ export const metadata = {
# Delete
Signals the deletion of an entity. {{ className: 'lead' }}
Signals the deletion of an entity. It is a **transient entity**. {{ className: 'lead' }}
## Authorization
@ -21,7 +21,7 @@ Having the authorization is defined as:
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="author" type="URI | null" required={true} typeLink="/types#uri">
URI of the `User` who is deleting the entity. [Can be set to `null` to represent the instance](/entities/instance-metadata#the-null-author).

View file

@ -15,7 +15,7 @@ export const metadata = {
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="author" type="URI" required={true} typeLink="/types#uri">
URI of the `User` considered the 'followee', i.e. the user who is being followed.

View file

@ -25,7 +25,7 @@ But it can also be used when Bob is already following Alice, in the case that:
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="author" type="URI" required={true} typeLink="/types#uri">
URI of the `User` considered the 'followee', i.e. the user who is being followed.

View file

@ -57,7 +57,7 @@ Once a follow relationship is established, the **followee**'s instance should se
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="author" type="URI" required={true} typeLink="/types#uri">
URI of the `User` considered the 'follower'.

View file

@ -83,7 +83,7 @@ Indicates that a [User](/entities/user) wishes to subscribe to a group.
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="subscriber" type="URI" required={true} typeLink="/types#uri">
URI of the [User](/entities/user) subscribing to the group.
@ -117,7 +117,7 @@ Indicates that a [User](/entities/user) wishes to unsubscribe from a group.
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="subscriber" type="URI" required={true} typeLink="/types#uri">
URI of the [User](/entities/user) unsubscribing from the group.
@ -151,7 +151,7 @@ Indicates that a [Group](#entity-definition) has accepted a [User](/entities/use
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="subscriber" type="URI" required={true} typeLink="/types#uri">
URI of the [User](/entities/user) subscribing to the group.
@ -185,7 +185,7 @@ Indicates that a [Group](#entity-definition) has rejected a [User](/entities/use
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="subscriber" type="URI" required={true} typeLink="/types#uri">
URI of the [User](/entities/user) subscribing to the group.
@ -227,7 +227,7 @@ The `GroupFederate` entity allows a group to federate a note to all of its membe
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="note" type="URI" required={true} typeLink="/types#uri">
URI of the note to federate.

View file

@ -34,7 +34,9 @@ Any field in an entity not marked as `required` may be omitted or set to `null`.
<Property name="uri" type="URI" required={true} typeLink="/types#uri">
URI of the entity. Should be unique and resolve to the entity. Must be an absolute URI.
**Some entity types may not need a URI. This will be specified in the entity's documentation.**
<Note>
**Transient Entities** do not require a URI.
</Note>
</Property>
<Property name="$schema" type="string" required={false}>
URL of any JSON Schema that the entity adheres to.

View file

@ -30,7 +30,7 @@ Sometimes, [Users](/entities/user) want to unsubscribe from each other to stop s
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="author" type="URI" required={true} typeLink="/types#uri">
URI of the `User` considered the 'follower', i.e. the user who is unsubscribing from the followee.

View file

@ -34,7 +34,7 @@ Migration happens in three steps:
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="type" type="string" required={true}>
Must be `pub.versia:migration/Migration`.

View file

@ -15,7 +15,7 @@ When an instance receives a report, it *should* be reviewed by a moderator or ad
<Col>
<Properties>
<Property name="uri" type="null" required={false}>
This entity does not have a URI.
This is a **Transient Entity** and does not have a URI.
</Property>
<Property name="type" type="string" required={true}>
Must be `pub.versia:reports/Report`.

View file

@ -35,6 +35,7 @@ The words **MUST**, **MUST NOT**, **SHOULD**, **SHOULD NOT**, and **MAY** are us
The Versia Protocol uses the following terms:
- **Entity**: A generic term for any JSON object in the protocol, such as a [User](./entities/user), a [Note](./entities/note), or a [Like](./extensions/likes). Entities are uniquely identified by their `id` property.
- **Transient Entity**: A type of **Entity** that is not meant to be stored permanently or referenced by other entities.
- **Implementation**: A software application that implements the Versia Protocol.
- **Instance**: An application deploying an **Implementation**.
- Using the same nomenclature, an ActivityPub Implementation would be `Mastodon`, and an Instance would be `mastodon.social`.