Schema-Liste

⚠️ Diese Ontologie befindet sich in Bearbeitung. Schemata und Beschreibungen können sich ohne Vorankündigung ändern.

Biblioteka

Entitäten

biblioteka/entity/application_note.json

Eine Freitextnotiz, die an eine beliebige Entität angehängt wird, um Kontext, Kommentare oder zusätzliche Informationen bereitzustellen.

biblioteka/entity/author.json

Eine Autorenidentität, die mit einer oder mehreren Personas verknüpft ist und zur Zuschreibung literarischer Werke verwendet wird.

biblioteka/entity/book.json

Eine bestimmte veröffentlichte Ausgabe eines literarischen Werks, identifiziert durch Verlag, Jahr und Format. Typischerweise mit literarischen Werken über contains_work, mit dem Autor über authored_by und mit einem Verlag über published_by verknüpft. Physische Exemplare werden als book_exemplar-Entitäten über exemplar_of erfasst.

biblioteka/entity/book_exemplar.json

Ein physisches Exemplar einer Buchausgabe, das ein Element in der persönlichen Bibliothek darstellt. Über exemplar_of mit der Buchausgabe verknüpft. Bilder (Cover, Seiten) werden über has_image angehängt. Der Aufbewahrungsort wird über located_in erfasst. Mehrere exemplar_of-Verknüpfungen weisen auf ein Konvolut hin (mehrere Bücher zusammengebunden).

biblioteka/entity/book_series.json

Eine offene thematische Buchreihe, die unter einer gemeinsamen Marke oder einem Imprint veröffentlicht wird (z. B. Penguin Classics, ЖЗЛ). Bücher werden über part_of_series mit optionaler seriesNumber verknüpft. Ein Buch kann mehreren Reihen angehören. Der Verlag wird über published_by verknüpft.

biblioteka/entity/book_set.json

Ein mehrbändiges Publikationsset, das mehrere Bücher in einer nummerierten Sammlung zusammenfasst (z. B. Gesammelte Werke, mehrbändige Ausgabe). Einzelne Bände sind book-Entitäten, die über volume_of mit volumeNumber verknüpft sind. Der Verlag wird über published_by verknüpft.

biblioteka/entity/ephemera_exemplar.json

Ein physisches Ephemera-Objekt in der persönlichen Sammlung, wie eine Postkarte, Grußkarte, Lesezeichen, Zeitungsausschnitt, Brief oder Fotografie. Stellt sammelbare Objekte auf Exemplarebene dar. Bilder werden über has_image angehängt. Der Aufbewahrungsort wird über located_in erfasst.

biblioteka/entity/literary_work.json

Ein abstraktes kreatives Werk, unabhängig von einer bestimmten Ausgabe oder Übersetzung. Veröffentlichte Ausgaben werden als book-Entitäten über contains_work erfasst. Die Autorenschaft wird über authored_by mit einer Persona verknüpft.

biblioteka/entity/printer.json

Eine Druckerei, die für die physische Herstellung von Büchern verantwortlich ist.

biblioteka/entity/publisher.json

Ein Verlagshaus oder ein Imprint, das für die Herstellung von Buchausgaben verantwortlich ist. Bücher, Buchsets und Buchreihen werden über published_by mit Verlagen verknüpft.

biblioteka/entity/quote.json

Ein bemerkenswertes Zitat, das einer Persona zugeschrieben oder aus einem literarischen Werk entnommen wurde. Die Zuschreibung wird über attributed_to erfasst. Die Quelle wird über taken_from oder contains_quote verfolgt.

biblioteka/entity/translated_literary_work.json

Eine Übersetzung eines literarischen Werks in eine andere Sprache. Über das Feld originalWorkId mit dem Originalwerk verknüpft. Der Übersetzer wird über translated_by verknüpft. Kann über contains_work in einem Buch enthalten sein.

Assoziationen

biblioteka/association/addressed_to.json

Verknüpft ein literarisches Werk (linke Seite: Brief oder offener Brief) mit der Person oder Organisation, an die es gerichtet ist (rechte Seite: Persona, Autor, Organisation oder Verlag).

biblioteka/association/attributed_to.json

Verknüpft ein Zitat (linke Seite) mit seinem vermuteten Autor oder Sprecher (rechte Seite: Persona oder Autor).

biblioteka/association/authored_by.json

Verknüpft ein kreatives Werk (linke Seite: Buch oder literarisches Werk) mit der Persona, die es geschrieben hat (rechte Seite: Autor).

biblioteka/association/book_has_illustrator.json

Verknüpft eine Buchausgabe (linke Seite) mit der Persona, die sie illustriert hat (rechte Seite: Illustrator).

biblioteka/association/contains_comments_by.json

Verknüpft ein Werk (linke Seite: Buch, literarisches Werk oder übersetzte Werke) mit der Persona, die Kommentare, ein Vorwort oder Anmerkungen bereitgestellt hat (rechte Seite: Kommentator).

biblioteka/association/contains_epigraph.json

Verknüpft ein Werk (linke Seite: Buch, literarisches Werk oder übersetzte Werke) mit einem Zitat, das als Epigraph verwendet wird (rechte Seite: Zitat).

biblioteka/association/contains_quote.json

Verknüpft ein Werk (linke Seite: Buch, literarisches Werk oder übersetzte Werke) mit einem in seinem Text zitierten Zitat (rechte Seite: Zitat).

biblioteka/association/contains_work.json

Verknüpft eine Buchausgabe oder ein Buchset (linke Seite) mit einem literarischen Werk, das sie enthält (rechte Seite: literarisches Werk oder übersetzte Werke).

biblioteka/association/copyright_held_by.json

Verknüpft ein literarisches Werk (linke Seite: literarisches Werk oder übersetzte Werke) mit der Entität, die das Urheberrecht hält (rechte Seite: Verlag, Persona oder Autor).

biblioteka/association/dedicated_by.json

Verknüpft ein kreatives Werk (linke Seite: book oder literary work) mit der Person, die es gewidmet hat (rechte Seite: persona oder author).

biblioteka/association/dedicated_to.json

Verknüpft ein kreatives Werk (linke Seite: Buch oder literarisches Werk) mit der Entität, der es gewidmet ist (rechte Seite: Persona, Autor oder literarisches Werk).

multi

biblioteka/multi_association/dedication.json

Ein Widmungsereignis: Person A hat Person B ein literarisches Werk gewidmet. Die erste Unter-Assoziation (dedicated_by) verknüpft das Werk mit dem Widmenden; die zweite (dedicated_to) verknüpft dasselbe Werk mit dem Empfänger der Widmung.

  • dedicated_by: literary_work → persona, author
  • dedicated_to: literary_work → persona, author

biblioteka/association/designed_by.json

Verknüpft ein Werk (linke Seite: Buch, literarisches Werk oder übersetzte Werke) mit dem Designer oder Künstler, der für den visuellen Stil verantwortlich ist (rechte Seite: Persona oder Autor).

biblioteka/association/edited_by.json

Verknüpft ein Werk (linke Seite: Buch, literarisches Werk oder übersetzte Werke) mit dem Herausgeber, der für seine Ausgabe verantwortlich ist (rechte Seite: Persona oder Autor).

biblioteka/association/exemplar_of.json

Verknüpft ein physisches Buchexemplar (linke Seite: Buchexemplar) mit seiner Buchausgabe (rechte Seite: Buch).

biblioteka/association/first_published_in.json

Verknüpft ein literarisches Werk (linke Seite: literarisches Werk oder übersetzte Werke) mit dem Buch, in dem es erstmals erschienen ist (rechte Seite: Buch).

biblioteka/association/found_with.json

Verknüpft ein Ephemera-Objekt (linke Seite: Ephemera-Exemplar) mit dem physischen Buchexemplar, in dem es beim Erwerb gefunden wurde (rechte Seite: Buchexemplar). Spezifischer als eine allgemeine Aufbewahrungs- oder Transaktionsbeziehung.

biblioteka/association/founder_of.json

Verknüpft eine Persona (linke Seite: Persona oder Autor) mit der Organisation, die sie gegründet hat (rechte Seite: Verlag, Druckerei oder Unternehmen).

multi

biblioteka/multi_association/gift.json

Ein Schenkungsereignis: Person A hat Person B einen Gegenstand geschenkt. Die erste Unter-Assoziation (gifted_by) verknüpft den Gegenstand mit dem Schenkenden; die zweite (gifted_to) verknüpft denselben Gegenstand mit dem Empfänger.

  • gifted_by: book_exemplar → persona, author
  • gifted_to: book_exemplar → persona, author

biblioteka/association/gifted_by.json

Verknüpft ein physisches Buchexemplar (linke Seite: book_exemplar) mit der Person, die es verschenkt hat (rechte Seite: persona oder author).

biblioteka/association/gifted_to.json

Verknüpft ein physisches Buchexemplar (linke Seite: book_exemplar) mit der Person, die es als Geschenk erhalten hat (rechte Seite: persona oder author).

biblioteka/association/has_application_note_attached.json

Verknüpft eine beliebige Entität (linke Seite) mit einer Anwendungsnotiz, die zusätzliche Metadaten oder Anmerkungen enthält (rechte Seite: Anwendungsnotiz).

biblioteka/association/imprint_of.json

Verknüpft ein Verlagsimprint (linke Seite: Verlag) mit seinem übergeordneten Verlag (rechte Seite: Verlag). Stellt hierarchische Verlagsbeziehungen dar.

biblioteka/association/inscribed_by.json

Verknüpft ein physisches Buchexemplar (linke Seite: book_exemplar) mit der Person, die es beschriftet, signiert oder markiert hat (rechte Seite: persona oder author). Erfasst Autogramme, Geschenkwidmungen, Exlibris-Marken und Stempel.

biblioteka/association/inscription_image.json

Verknüpft eine Person, die eine Inschrift gemacht hat (linke Seite: persona oder author), mit der Fotografie, die diese Inschrift zeigt (rechte Seite: image). Erlaubt es, dasselbe Bild ohne Konflikt in anderen Assoziationen zu verwenden (z. B. has_image mit der Rolle title_page).

biblioteka/association/interviewed_by.json

Verknüpft ein literarisches Werk (linke Seite: Interview als literarisches Werk) mit der Persona, die das Interview geführt hat (rechte Seite: Interviewer-Persona oder Autor).

biblioteka/association/mentions.json

Verknüpft ein Werk (linke Seite: literarisches Werk, Filmwerk oder Software) mit einer beliebigen darin erwähnten oder zitierten Entität (rechte Seite: jeder Entitätstyp, einschließlich Personen, anderer Werke, Organisationen, Orte, Siedlungen usw.).

biblioteka/association/part_of_series.json

Verknüpft ein Buch oder eine Buchreihe (linke Seite: Ausgabe oder mehrbändige Reihe) mit der thematischen Serie, in der es veröffentlicht wurde (rechte Seite: book series), optional mit einer Seriennummer.

biblioteka/association/printed_by.json

Verknüpft eine Buchausgabe (linke Seite: Buch) mit dem Drucker, der für die physische Produktion verantwortlich ist (rechte Seite: Drucker).

biblioteka/association/published_by.json

Verknüpft eine Buchausgabe oder ein Buchset (linke Seite: Buch oder Buchset) mit dem Verlag, der für ihre Veröffentlichung verantwortlich ist (rechte Seite: Verlag).

biblioteka/association/published_in.json

Verknüpft ein veröffentlichtes Werk (linke Seite: Buch oder Buchset) mit der Siedlung oder dem Ort, an dem es veröffentlicht wurde (rechte Seite: Siedlung oder Ort).

biblioteka/association/reprint_of.json

Verknüpft eine Buchausgabe (linke Seite) mit einer früheren Buchausgabe, von der sie ein Nachdruck oder eine Ableitung ist (rechte Seite). Erfasst Nachdrucke, spätere Auflagen und andere abgeleitete Ausgaben.

biblioteka/association/sequel_of.json

Verknüpft ein literarisches Werk (linke Seite: Fortsetzung) mit dem literarischen Werk, das es fortsetzt (rechte Seite: Vorgänger). Stellt die Serienreihenfolge dar.

biblioteka/association/taken_from.json

Verknüpft ein Zitat (linke Seite) mit dem literarischen Werk, aus dem es entnommen wurde (rechte Seite: literarisches Werk oder übersetzte Werke).

biblioteka/association/takes_place_in.json

Verknüpft ein kreatives Werk (linke Seite: literarisches Werk oder übersetzte Werke) mit dem geografischen Ort, an dem die Handlung stattfindet (rechte Seite: Siedlung oder Ort).

biblioteka/association/translated_by.json

Verknüpft ein Werk (linke Seite: Buch, literarisches Werk oder übersetzte Werke) mit dem Übersetzer, der für die Übersetzung verantwortlich ist (rechte Seite: Persona oder Autor).

biblioteka/association/translation_of.json

Verknüpft ein übersetztes literarisches Werk (linke Seite: übersetztes literarisches Werk) mit dem ursprünglichen literarischen Werk, von dem es übersetzt wurde (rechte Seite: literarisches Werk).

biblioteka/association/volume_of.json

Verknüpft ein Buch (linke Seite: einzelner Band) mit der mehrbändigen Reihe, zu der es gehört (rechte Seite: book set), unter Angabe seiner Bandnummer.

Business

Entitäten

business/entity/company.json

Ein kommerzielles oder industrielles Unternehmen.

Assoziationen

business/association/competed_against.json

Verknüpft zwei Entitäten in einem Wettbewerb oder Match (linke und rechte Seite sind austauschbar: Persona, Software, Unternehmen oder Organisation). Beispiele umfassen Schachspiele, Geschäftsrivalitäten oder sportliche Wettkämpfe.

business/association/headquartered_in.json

Verknüpft ein Unternehmen (linke Seite) mit der Siedlung oder dem Ort, an dem sich sein Hauptsitz befindet (rechte Seite: Siedlung oder Ort).

business/association/incorporated_in.json

Verknüpft ein Unternehmen (linke Seite) mit dem Staat oder der Gerichtsbarkeit, in der es rechtlich eingetragen oder registriert ist (rechte Seite: Staat).

Geography

Entitäten

geography/entity/place.json

Ein benannter geografischer Ort, der keine Siedlung ist.

geography/entity/settlement.json

Ein besiedelter Ort wie eine Stadt, ein Dorf oder ein Flecken.

Assoziationen

geography/association/located_in.json

Verknüpft eine Entität (linke Seite: Ort, Siedlung, Organisation, Buchexemplar, Ephemera-Exemplar oder Lagerort) mit dem Standort, an dem sie sich befindet (rechte Seite: Siedlung, Staat oder Lagerort).

Library

Entitäten

library/entity/storage_location.json

Ein physischer Standort, an dem Buchexemplare aufbewahrt werden, mit Unterstützung für hierarchische Verschachtelung (Regal, Bücherschrank, Raum, Wohnung). Buchexemplare werden über located_in verknüpft. Die Hierarchie wird mit located_in zwischen Lagerorten aufgebaut (transitiv). Kann über located_in zu settlement mit der geografischen Hierarchie verbunden werden.

Media

Entitäten

media/entity/image.json

Eine Bildentität, die eine binäre Bilddatei mit beschreibenden Metadaten darstellt.

Assoziationen

media/association/has_image.json

Verknüpft eine beliebige Entität (linke Seite) mit einem ihr zugeordneten Bild (rechte Seite: Bild), mit einer Rolle, die den Zweck des Bildes angibt (z. B. Titelbild, Porträt).

media/association/primary_image.json

Speichert eine explizite Benutzereinstellung, die ein Bild (rechte Seite: Bild) als primäre visuelle Darstellung einer beliebigen Entität (linke Seite) bestimmt. Pro Entität ist höchstens eine primary_image-Verknüpfung zulässig. Dies ist eine vom Benutzer gewählte Anzeigeeinstellung, keine inhärente Eigenschaft der Entität oder des Bildes selbst. Das referenzierte Bild muss auch eine has_image-Verknüpfung mit derselben Entität haben.

People

Entitäten

people/entity/persona.json

Eine dokumentierte, umstrittene, überlieferte oder fiktive Figur mit biografischen Attributen. Häufig als Autor über authored_by, Übersetzer über translated_by oder Herausgeber über edited_by verknüpft. Geburts- und Sterbeorte werden über born_in_settlement/born_in_state und died_in_settlement/died_in_state erfasst.

Assoziationen

people/association/born_in_settlement.json

Verknüpft eine Persona (linke Seite) mit der Siedlung oder Stadt, in der sie geboren wurde (rechte Seite: Siedlung).

people/association/born_in_state.json

Verknüpft eine Persona (linke Seite) mit dem Staat oder Land, in dem sie geboren wurde (rechte Seite: Staat).

people/association/coauthor_of.json

Verknüpft zwei Personas, die ein Werk gemeinsam verfasst haben (linke und rechte Seite sind austauschbar: Persona).

people/association/died_in_settlement.json

Verknüpft eine Persona (linke Seite) mit der Siedlung oder Stadt, in der sie gestorben ist (rechte Seite: Siedlung).

people/association/died_in_state.json

Verknüpft eine Persona (linke Seite) mit dem Staat oder Land, in dem sie gestorben ist (rechte Seite: Staat).

people/association/friend_of.json

Verknüpft zwei Personas in einer Freundschaft (linke und rechte Seite sind austauschbar: Persona).

people/association/title_granted_by.json

Verknüpft eine Persona (linke Seite) mit der Organisation oder dem Staat, der ihr einen Titel, Abschluss oder eine Ehrung verliehen hat (rechte Seite: Organisation oder Staat).

people/association/interviewer_of.json

Verknüpft eine Interviewer-Persona (linke Seite) mit der befragten Persona (rechte Seite: Persona).

people/association/lived_in.json

Verknüpft eine Persona (linke Seite) mit der Siedlung oder dem Ort, an dem sie gewohnt hat (rechte Seite: Siedlung oder Ort).

people/association/parent_of.json

Verknüpft eine Eltern-Persona (linke Seite) mit ihrer Kind-Persona (rechte Seite: Persona).

people/association/relative_of.json

Verknüpft zwei Personas in einer allgemeinen Familienbeziehung (linke und rechte Seite sind austauschbar: Persona).

people/association/resided_in_state.json

Verknüpft eine Persona (linke Seite) mit dem Staat oder Land, in dem sie für einen Zeitraum gelebt hat (rechte Seite: Staat).

people/association/romantic_relationship_with.json

Verknüpft zwei Personas in einer romantischen Beziehung (linke und rechte Seite sind austauschbar: Persona).

people/association/spouse_of.json

Verknüpft zwei Personas in einer Ehebeziehung (linke und rechte Seite sind austauschbar: Persona).

people/association/worked_for.json

Verknüpft eine Persona (linke Seite) mit der Person oder Organisation, für die sie gearbeitet hat (rechte Seite: Persona oder Organisation).

Performing_arts

Entitäten

performing_arts/entity/cinematic_work.json

Ein Film, eine Dokumentation oder ein anderes Filmwerk.

performing_arts/entity/performance.json

Eine einzelne Vorstellung oder Veranstaltung — ein bestimmtes Datum und eine bestimmte Uhrzeit an einem bestimmten Veranstaltungsort mit einer bestimmten Besetzung.

performing_arts/entity/production.json

Eine bestimmte Inszenierung eines Bühnenwerks durch einen bestimmten Regisseur, eine Theatergruppe oder ein Festival innerhalb einer definierten Spielzeit.

performing_arts/entity/stage_work.json

Eine abstrakte Komposition für die darstellenden Künste — eine Oper, ein Ballett, ein Theaterstück oder ein Musical — unabhängig von einer bestimmten Inszenierung oder Aufführung.

Assoziationen

performing_arts/association/based_on.json

Verknüpft ein Bühnenwerk oder Filmwerk (linke Seite) mit dem literarischen Werk, auf dem es basiert (rechte Seite: literarisches Werk).

performing_arts/association/choreographed_by.json

Verknüpft ein Bühnenwerk oder eine Produktion (linke Seite) mit seinem Choreografen (rechte Seite: Persona).

performing_arts/association/composed_by.json

Verknüpft ein Bühnenwerk (linke Seite) mit seinem Komponisten (rechte Seite: Persona).

performing_arts/association/directed_by.json

Verknüpft ein Filmwerk oder eine Produktion (linke Seite) mit seinem Regisseur (rechte Seite: Persona).

performing_arts/association/features_performer.json

Verknüpft eine Aufführung (linke Seite) mit einem Darsteller, der daran teilgenommen hat (rechte Seite: Persona), mit optionalen Angaben zu Rolle und Instrument/Stimmtyp.

performing_arts/association/instance_of_production.json

Verknüpft eine Aufführung (linke Seite) mit der Produktion, zu der sie gehört (rechte Seite: Produktion).

performing_arts/association/libretto_by.json

Verknüpft ein Bühnenwerk (linke Seite) mit seinem Librettisten (rechte Seite: Persona).

performing_arts/association/performed_at.json

Verknüpft eine Aufführung (linke Seite) mit dem Veranstaltungsort (rechte Seite: Ort oder Organisation).

performing_arts/association/produced_by.json

Verknüpft eine Produktion (linke Seite) mit der Organisation, die sie produziert hat (rechte Seite: Organisation).

performing_arts/association/staging_of.json

Verknüpft eine Produktion (linke Seite) mit dem Bühnenwerk, das sie umsetzt (rechte Seite: Bühnenwerk).

Reader

Entitäten

reader/entity/reader_persona.json

Die eigene Persona des Lesers, die zur Verfolgung der Lesehistorie und der Präferenzen verwendet wird.

reader/entity/user_list.json

Eine vom Benutzer kuratierte, benannte Liste beliebiger Entitäten (z. B. eine 'Desiderata'-Liste anzuschaffender Bücher, ein 'Leseprojekt 2026', eine 'Empfehlungen von N'-Sammlung oder eine Wunschliste zu besuchender Buchhandlungen). Elemente werden über das Subtyp-Schema je nach Listentyp angefügt (Datei `_list_contains_v1.json`; Diskriminatorwert `associationType` `_list_contains`); welche Entitätstypen als Elemente zulässig sind, hängt vom Subtyp ab — z. B. `reading_project` beschränkt rightSide auf book / literary_work / translated_literary_work, während `desiderata` jeden Entitätstyp zulässt. Optional einer Leser-Persona zugeordnet.

Assoziationen

reader/association/custom_list_contains.json

Verknüpft eine vom Benutzer definierte user_list vom Typ custom (linke Seite: user_list mit listType='custom') mit einem beliebigen Element, das sie enthält (rechte Seite: beliebiger Entitätstyp). Trägt eine generische Zustandsmaschine (pending, done, abandoned) für Fälle, die in keinen vordefinierten listType passen. Unterstützt eine optionale Prioritätskennzeichnung und eine optionale 1-basierte Position, wenn die übergeordnete user_list geordnet ist.

reader/association/desiderata_list_contains.json

Verknüpft eine user_list vom Typ desiderata (linke Seite: user_list mit listType='desiderata') mit einem beliebigen Element, das sie enthält (rechte Seite: beliebiger Entitätstyp, z. B. Buch, literarisches Werk, Persona). Trägt den Erwerbsstatus des Desideratums (pending, found, abandoned), das Erwerbsdatum und ein optionales Prioritätskennzeichen zur Hervorhebung von Elementen, die der Benutzer zuerst finden möchte.

reader/association/reading_project_list_contains.json

Verknüpft eine Leseprojekt-user_list (linke Seite: user_list mit listType='reading_project') mit einem Werk, das sie enthält (rechte Seite: book, literary_work oder translated_literary_work). Trägt sowohl die Listenmitgliedschaft als auch den Lesestand dieses Werks im Kontext der Liste — denselben status-Enum und dieselben Datumsfelder wie reads_v1 (to_read, reading, finished, abandoned). Wenn ein Werk auf einer Leseprojekt-Liste steht, ist dieser Datensatz die konsolidierte Quelle der Wahrheit für 'auf der Liste' und 'Lesestand'; ein separater reads_v1-Datensatz wird für diesen Schnittpunkt nicht benötigt.

reader/association/reads.json

Verknüpft eine Leser-Persona (linke Seite: Leser-Persona) mit einem kreativen Werk, das eine Leseerfahrung darstellt (rechte Seite: Buch, literarisches Werk oder übersetzte Werke).

reader/association/recommendations_list_contains.json

Verknüpft eine user_list vom Typ recommendations (linke Seite: user_list mit listType='recommendations') mit einem beliebigen Element, das sie enthält (rechte Seite: beliebiger Entitätstyp). Verfolgt, ob der Benutzer der Empfehlung gefolgt ist: pending, followed_up oder dismissed; erfasst optional das Datum der Nachverfolgung.

reader/association/reference_list_contains.json

Verknüpft eine user_list vom Typ reference (linke Seite: user_list mit listType='reference') mit einem beliebigen Element, das sie enthält (rechte Seite: beliebiger Entitätstyp, z. B. Persona, literary_work, Siedlung). Referenzlisten sind aus der Forschung gewonnene analytische Gruppierungen (z. B. 'Autoren, die in Empire Must Die erwähnt werden'); Elemente sind entweder enthalten oder nicht, daher trägt dieser Subtyp kein status-Feld. Das optionale position-Feld erfasst die kanonische Reihenfolge in der Quelle (z. B. Reihenfolge der Erwähnung).

reader/association/wishlist_list_contains.json

Verknüpft eine user_list vom Typ wishlist (linke Seite: user_list mit listType='wishlist') mit einem beliebigen nicht-erwerbbaren Ziel, das sie enthält (rechte Seite: Ort, Siedlung, Organisation, Aufführung usw.). Verfolgt, ob das Ziel besucht oder erlebt wurde (pending, visited, abandoned), erfasst optional das Besuchsdatum, unterstützt eine optionale Prioritätskennzeichnung für Pflichtziele und eine optionale 1-basierte Position, wenn die Wishlist absichtlich geordnet ist.

Social

Entitäten

social/entity/organization.json

Eine formelle Organisation, Institution oder Gruppe.

social/entity/state.json

Eine politische Entität wie ein Land, ein Reich oder ein autonomes Territorium.

Software

Entitäten

software/entity/software.json

Eine Softwareanwendung, ein Werkzeug, ein Videospiel oder ein Webdienst.

Assoziationen

software/association/developed_by.json

Verknüpft ein Softwarewerk (linke Seite: Software) mit seinem Entwickler (rechte Seite: Persona, Unternehmen oder Organisation).

Validierung

JSON-Schema-Validierung

Jeder Datensatz enthält ein $schema-Feld mit der URL des Schemas. Sie können die Konformität eines Datensatzes mit jedem JSON Schema 2020-12 kompatiblen Tool prüfen. Zum Beispiel mit ajv-cli (Node.js):

npm install -g ajv-cli ajv-formats
ajv validate -s https://public-schema.com/biblioteka/entity/book.json -d record.json

Semantische Validierung

Die JSON-Schema-Validierung prüft Struktur und Typen, kann aber nicht alle Geschäftsregeln durchsetzen. Die Deno-Skripte unten prüfen Einschränkungen jenseits von JSON Schema — zum Beispiel ISBN/ISNI-Prüfsummen, Konsistenz des Namensarrays und Zusammenhangsgraph-Anforderungen für Multi-Assoziationen.

Die Skripte lesen JSON von stdin und schreiben Fehler auf stderr. Modus ohne Berechtigungen:

cat record.json | deno run https://public-schema.com/dist/validate.ts

Aktualitätsprüfung

Deno speichert entfernte Skripte aggressiv im Cache. Fügen Sie --allow-net=public-schema.com hinzu, damit das Skript den Cache-Hash mit der veröffentlichten Version vergleichen kann:

cat record.json | deno run --allow-net=public-schema.com https://public-schema.com/dist/validate.ts

Wenn die zwischengespeicherte Kopie veraltet ist, wird das Skript mit Code 2 beendet. Aktualisieren Sie mit:

deno cache --reload https://public-schema.com/dist/validate.ts