5. Objektklassen (Object Classes)
Objektklassen repräsentieren Strukturen, die für eine Antwort auf die in [RFC9082] spezifizierten Abfragen geeignet sind.
Jede Objektklasse enthält ein "links"-Array, wie in Abschnitt 4.2 spezifiziert. Für jede Objektklasseninstanz in einer Antwort, unabhängig davon, ob die Objektklasseninstanz direkt die Antwort auf eine Abfrage darstellt, in andere Objektklasseninstanzen eingebettet ist oder ein Element in einem Suchergebnissatz ist, SOLLTEN Server einen Link bereitstellen, der einen URI für diese Objektklasseninstanz unter Verwendung der "self"-Beziehung darstellt, wie im IANA-Register beschrieben, das durch [RFC8288] spezifiziert ist. Wie in Abschnitt 5.2 erläutert, ist dies für Nameserver-Daten möglicherweise nicht immer möglich. Clients MÜSSEN in der Lage sein, Objektinstanzen ohne self-Link zu verarbeiten. Wenn vorhanden, können Clients den self-Link zum Zwischenspeichern von Daten verwenden. Server KÖNNEN mehr als einen self-Link für eine gegebene Objektinstanz bereitstellen. Wenn ein Server keinen self-Link bereitstellt, kann dies dazu führen, dass Clients Objektklasseninstanzen nicht zwischenspeichern können.
Clients, die self-Links zum Zwischenspeichern verwenden, SOLLTEN NICHT Objektklasseninstanzen zwischenspeichern, bei denen die Autorität des self-Links sich von der Autorität des Servers unterscheidet, der die Daten zurückgibt. Andernfalls könnte es zu Cache-Poisoning kommen.
Self-Links MÜSSEN ein "type"-Element enthalten, das den Medientyp "application/rdap+json" enthält, wenn auf RDAP-Objektinstanzen verwiesen wird, wie in diesem Dokument definiert.
Dies ist ein Beispiel für das "links"-Array mit einem self-Link zu einer Objektklasse:
"links" :
[
{
"value" : "https://example.com/ip/2001:db8::123",
"rel" : "self",
"href" : "https://example.com/ip/2001:db8::123",
"type" : "application/rdap+json"
}
]
Abbildung 14