ORCID zielt darauf ab, zwei Haupt-API-Versionen gleichzeitig zu unterstützen. Wenn eine neue Haupt-API-Version veröffentlicht wird, ORCID garantiert Support für mindestens drei Jahre ab Veröffentlichungsdatum. Darüber hinaus kündigen wir die Einstellung der ältesten Hauptversion 12 Monate im Voraus an und senden in regelmäßigen Abständen Erinnerungs-E-Mails an die Mitglieder, die sie während der Kündigungsfrist noch nutzen. Neue Hauptversionen sind immer dann erforderlich, wenn wir wichtige Änderungen an unserem Metadatenschema vornehmen. Dies wird durch eine Erhöhung der Hauptversionsnummer angezeigt. ORCID veröffentlicht alle 2–4 Jahre eine neue Haupt-API-Version.
In Ausnahmefällen ORCID kann eine Verlängerung des 12-monatigen Ruhestandszeitraums in Betracht ziehen, wenn eine neue Haupt-API-Version veröffentlicht wird, dies ist jedoch erforderlich ORCID zusätzliche Ressourcen in Wartungsarbeiten zu investieren, mit entsprechenden Auswirkungen auf andere Aktivitäten wie Neuentwicklung und Support. ORCID behält sich das Recht vor, zusätzliche Gebühren für die weitere Nutzung einer eingestellten API-Version über das Einstellungsdatum hinaus zu erheben, um die entstandenen Mehrkosten auszugleichen.
ORCID verfügt über eine inkrementelle API-Veraltungsrichtlinie, die es uns ermöglicht, unsere API-Angebote weiterzuentwickeln und auf Community-Anforderungen zwischen Hauptversionen zu reagieren. Das bedeutet, dass ORCID kann nicht-unterbrechende Änderungen an den kontrollierten Vokabularien und Metadatenfeldern der aktuellen API-Version vornehmen.
- Benutzern der neuesten API-Version steht es frei, diese Änderungen zu ignorieren, sollten sich jedoch darüber im Klaren sein, dass sie vorgenommen werden könnten
- Benutzer der vorherigen API-Version erhalten keine Daten, die in ihrer Version nicht modelliert werden können
Ein Beispiel zum Zeitpunkt des Verfassens dieses Artikels ist die Einführung der CREDIT-Mitwirkender-Rollentaxonomie in die v3.0-API. Sobald v2.x-Integrationen live sind, verlieren sie langsam die Sichtbarkeit der Mitwirkendenrollen, da immer mehr Forscher und Integrationen CREDIT übernehmen. Benutzer von V2.x werden nicht kaputt gehen, aber sie werden mit der Zeit weniger umfangreiche Metadaten erhalten.
Bei der Entwicklung einer neuen Haupt-API-Version ist dies normal ORCID um „Release Candidate“-Versionen zu erstellen. Diese richten sich an Integratoren, die in der Lage sind, zeitnah ein Upgrade durchzuführen, sobald die Vollversion der API veröffentlicht wird. Die voraussichtliche Lebensdauer eines Release Candidate beträgt höchstens 12 Monate ab der Veröffentlichung der Hauptversion, für die er entwickelt wurde.
Wir empfehlen Integratoren, die zu befolgen Robustheitsprinzip (auch bekannt als Postels Gesetz) bei der Verwendung von ORCID API.
Hintergrund
ORCID hat seine API seit seinen bescheidenen Anfängen langsam weiterentwickelt.
API v1.x (Start ~2012 zusammen mit der Registrierung) versuchte, alle Metadaten über Forscher und ihre Aktivitäten in einer einzigen API-Antwort zurückzugeben. Integratoren mussten diese Metadaten ändern und vollständig zurücksenden, um neue Elemente hinzuzufügen oder bestehende zu aktualisieren. Dies war ein vernünftiger erster Versuch, der jedoch nicht skalierbar war und das Vornehmen von Ergänzungen und Aktualisierungen eine mühsame Aufgabe war. (im März 2018 im Ruhestand)
API 2.x (veröffentlicht im Februar 2017) hat unsere API in Abschnitte unterteilt; Werke, Zugehörigkeiten, Finanzierung, Biografie usw. Es war ein großer Fortschritt und ermöglichte sowohl uns als auch unseren Kunden die Verwaltung großer Datensätze viel einfacher. Allerdings waren viele unserer Validierungs- und Kontrollvokabulare fest im Schema codiert, was es schwierig machte, auf Änderungen zu reagieren
API 3.x (veröffentlicht im Mai 2019) fügte dem Datensatz neue Abschnitte wie Forschungsressourcen hinzu, vereinfachte die Schemastruktur und stellte bereit ORCID mit zusätzlicher Flexibilität. Dadurch wurde ein Großteil der Validierung vom Schema auf unsere Server verlagert, wodurch wir Probleme beheben und neue Bezeichnertypen hinzufügen konnten, ohne weitere Versionen der API zu veröffentlichen.
Die Veröffentlichung einer neuen Haupt-API ist ein riesiges Unterfangen – es erfordert jahrelange Entwicklungsarbeit, um sie zu erstellen, und unsere Mitglieder benötigen weitere Jahre, um ihre Integrationen zu aktualisieren. Aus diesem Grund versuchen wir, die von uns vorgenommenen Änderungen zu begrenzen. Es gibt jedoch einige Änderungen, die wir gerne vornehmen würden, um der Community bestmöglich zu dienen.
Unsere Aufgabe besteht darin, herauszufinden, wann wir eine kritische Masse haben, um eine neue Version der API zu veröffentlichen, oder Möglichkeiten zu finden, unsere bestehenden APIs zu aktualisieren, ohne bestehende Integrationen zu zerstören.