Considering FDO and Web according to the quality levels of the Interoperability Framework for Fast Data (Delgado 2016).
Quality FDO w/ DOIP Web w/ Linked Data
Symbiotic: to what extent multiple applications can agree to interact, align, collaborate or cooperate The purpose of FDO is to enable federated machine actionable digital objects for scholarly purposes, in practice this also requires agreement of compatibility between FDO types. FDO encourages research communities to develop common type registries to be shared across instances. In current DOIP practice, each service have their own types, attributes and operations. The wider symbiosis is consistent use of PIDs. The Web is loosely coupled and encourages collaboration and linking by URL. In practice, REST APIs (Roy Thomas Fielding 2000) end up being mandated centrally by dominant (often commercial) providers (Roy T. Fielding et al. 2017), and the clients are required to use each API as-is with special code per service. Use of Linked Data enables common tooling and semantic mapping across differences.
Pragmatic: using interaction contracts so processes can be choreographed in workflows FDO types and operations enable detailed choreography (Canonical Workflows; CWFR Group (2021)). 0.TYPE/DOIPOperation has lightweight definition of operation, 0.DOIP/Request or 0.DOIP/Response may give FDO Type or any other kind of “specifics” (incl. human readable docs). Semantics/purpose of operations not formalised (similar operations can be grouped with 0.DOIP/OperationReference). “Follow your nose” crawler navigation, which may lead to frequent dead ends. Operational composition, typically within a single API provider, documented by OpenAPI 3 (Miller et al. 2021), schema.org Actions (“Schema.org Actions n.d.), WSDL/SOAP (Liu and Booth 2007), but frequently just as human-readable developer documentation with examples.
Semantic: ensuring consistent understanding of messages, interoperability of rules, knowledge and ontologies FDO semantic enable navigation and typing. Every FDO has a type. Types maintained in FDO Type registries, which may add additional semantics, e.g. the ePIC PID-InfoType for Model. No single type semantic, Type FDOs can link to existing vocabularies & ontologies. JSON-LD used within some FDO objects (e.g. DISSCO Digital Specimen, NIST Material Science schema) (Wittenburg et al. 2022) Lightweight HTTP semantics for authenticity/navigation. Semantic Type not commonly expressed on PID/header level, may be declared within Linked Data metadata. Semantic of type implied by Linked Data formats (e.g. OWL2, RDFS), although choice of type system may not be explicit.
Syntactic: serialising messages for digital exchange, structure representation DOIP serialise FDOs as JSON, metadata commonly use JSON, typed with JSON Schema. Multiple byte stream attachments of any media type. Textual HTTP headers (including any signposting), single byte stream of any media type, e.g. Linked Data formats (JSON-LD, Turtle, RDF/XML) or embedded in document (HTML with RDFa, JSON-LD or Microdata). XML was previously the main syntax used by APIs, JSON is now dominant.
Connective: transferring messages to another application, e.g. wrapping in other protocols “Digital Object Interface Protocol Specification, Version 2.0” (2018) is transport-independent, commonly TLS TCP/IP port 9000, DOIP over HTTP (CNRI 2023) HTTP/1.1, TCP/IP port 80 (Roy T. Fielding et al. 1999); HTTP/1.1+TLS, TCP/IP 443 (Rescorla 2000); HTTP/2, as HTTP/1* but binary (Belshe, Peon, and Thomson 2015); HTTP/3, like HTTP/2+TLS but UDP (Bishop 2022)
Environmental: how applications are deployed and affected by its environment, portability Main DOIP implementation is Cordra, which can be single-instance or distributed. Cordra storage backends include file system, S3, MongoDB (itself scalable). Unique DOIP protocol can be hard to add to existing Web application frameworks, although proxy services have been developed (e.g. B2SHARE adapter). HTTP services widely deployed in a myriad of ways, ranging from single instance servers, horizontally & vertically scaled application servers, to multi-cloud Content-Delivery Networks (CDN). Current scalable cloud technologies for Web hosting may not support HTTP features previously seen as important for Semantic Web, e.g. content negotiation and semantic HTTP status codes.
Belshe, Mike, Roberto Peon, and Martin Thomson. 2015. Hypertext Transfer Protocol Version 2 (HTTP/2). Request for Comments. RFC Editor. https://doi.org/10.17487/rfc7540.
Bishop, Mike. 2022. HTTP/3. Request for Comments. RFC Editor. https://doi.org/10.17487/rfc9114.
CNRI. 2023. DOIP API for HTTP Clients.” In Cordra® Software Technical Manual Version 2.5.0. Corporation for National Research Initiatives. https://www.cordra.org/documentation/api/doip-api-for-http-clients.html.
CWFR Group. 2021. “Canonical Workflow Frameworks for Research: Position Paper.” Edited by Alex Hardisty and Peter Wittenburg. OSF. January 6, 2021. https://osf.io/3rekv/.
Delgado, José Carlos Martins. 2016. “An Interoperability Framework and Distributed Platform for Fast Data Applications.” In Data Science and Big Data Computing, 3–39. https://doi.org/10.1007/978-3-319-31861-5_1.
“Digital Object Interface Protocol Specification, Version 2.0.” 2018. DONA Foundation. https://hdl.handle.net/0.DOIP/DOIPV2.0.
Fielding, Roy T., Jim Gettys, Jeffrey Mogul, Henrik Frystyk Nielsen, Larry M Masinter, Paul J. Leach, and Tim Berners-Lee. 1999. Hypertext Transfer Protocol – HTTP/1.1. Request for Comments. RFC Editor. https://doi.org/10.17487/rfc2616.
Fielding, Roy Thomas. 2000. “Architectural Styles and the Design of Network-Based Software Architectures.” Doctoral Thesis, University of California, Irvine. https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm.
Fielding, Roy T., Richard N. Taylor, Justin R. Erenkrantz, Michael M. Gorlick, Jim Whitehead, Rohit Khare, and Peyman Oreizy. 2017. “Reflections on the REST Architectural Style and "Principled Design of the Modern Web Architecture" (Impact Paper Award).” In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering - ESEC/FSE 2017, 4–14. https://doi.org/10.1145/3106237.3121282.
Liu, Kevin, and David Booth. 2007. Web Services Description Language (WSDL) Version 2.0 Part 0: Primer. {W3C} Recommendation. W3C. https://www.w3.org/TR/2007/REC-wsdl20-primer-20070626/.
Miller, Darrel, Jeremy Whitlock, Marsh Gardiner, Mike Ralphson, Ron Ratovsky, and Uri Sarid, eds. 2021. OpenAPI Specification V3.1.0.” OpenAPI Initiative; The Linux Foundation. February 15, 2021. https://spec.openapis.org/oas/v3.1.0.html.
Rescorla, Eric. 2000. HTTP Over TLS. Request for Comments. RFC Editor. https://doi.org/10.17487/rfc2818.
“Schema.org Actions.” n.d. Accessed May 26, 2022. https://schema.org/docs/actions.html.
Wittenburg, Peter, Ivonne Anders, Christophe Blanchi, Merret Buurman, Carole Goble, Jonas Grieb, Alex Hardisty, et al. 2022. FAIR Digital Object Demonstrators 2021.” Zenodo. https://doi.org/10.5281/zenodo.5872645.