1
0
mirror of https://codeberg.org/fediverse/fep.git synced 2026-08-05 11:46:04 +00:00

FEP-2277: Raise priority of VerificationMethod (#594)

Reviewed-on: https://codeberg.org/fediverse/fep/pulls/594
Co-authored-by: silverpill <silverpill@firemail.cc>
Co-committed-by: silverpill <silverpill@firemail.cc>
This commit is contained in:
silverpill
2025-05-12 11:22:16 +00:00
committed by silverpill
parent 009b3e4a68
commit f44407c84c
+15 -15
View File
@@ -28,14 +28,14 @@ Applications may use the `type` property to determine object's class, but that h
[Activity Streams 2.0][ActivityStreams] standard defines [8 core object types](https://www.w3.org/TR/activitystreams-core/#model):
- Object
- Link
- Activity
- IntransitiveActivity
- Collection
- OrderedCollection
- CollectionPage
- OrderedCollectionPage
- `Object`
- `Link`
- `Activity`
- `IntransitiveActivity`
- `Collection`
- `OrderedCollection`
- `CollectionPage`
- `OrderedCollectionPage`
The `Actor` type is also mentioned, but it is not a core type.
@@ -43,12 +43,12 @@ Unfortunately, definitions provided in the specification are not precise. The la
One way to divide objects into distinct classes is to look at their properties and their connections to other objects (indicated by their properties). This approach can be used to define 6 core types:
- Object
- Actor
- Activity (includes intransitive activities)
- Collection (includes collection pages)
- VerificationMethod
- Link
- `Object`
- `Actor`
- `Activity` (includes intransitive activities)
- `Collection` (includes collection pages)
- `VerificationMethod`
- `Link`
The next section specifies an algorithm that classifies any ActivityPub object as one of these core types by analyzing object's shape. This technique is often referred to as [duck typing][DuckTyping].
@@ -56,8 +56,8 @@ The next section specifies an algorithm that classifies any ActivityPub object a
The following algorithm can be used to determine the core type of the object:
1. If object has `href` property, return `Link`.
1. If object has `publicKeyPem` or `publicKeyMultibase` property, return `VerificationMethod`.
1. If object has `href` property, return `Link`.
1. If object has `inbox` and `outbox` properties, return `Actor`.
1. If object has `actor` property, return `Activity`.
1. If object has `items`, `orderedItems`, `totalItems`, `partOf`, `first`, `last`, `next`, `prev` or `current` property, return `Collection`.