A Portal for the State of the Art on Content Negotiation Yousouf Taghzouti1,∗ , Antoine Zimmermann1,∗ and Maxime Lefrançois1,∗ 1 Mines Saint-Etienne, Univ Clermont Auvergne, INP Clermont Auvergne, CNRS, UMR 6158 LIMOS, F - 42023 Saint-Etienne France Abstract Resources on the Web are identified by Uniform Resource Identifiers (URIs), and can be accessed using web protocols such as HTTP. A resource can have several representations varying along a set of dimensions, forming a set of variants. Content negotiation (CN) is the mechanism for selecting the appropriate variant that conforms to a set of preferences (constraints). Over the years, various dimensions of CN, styles of CN, as well as ways to convey constraints have emerged to satisfy new requirements and solve new use cases. This demo presents a new resource called Content Negotiation Theoretical Framework (CNTF): a website that collects knowledge about CN use cases, styles, dimensions, etc., and organises it according to an ontology. CNTF aims to highlight existing solutions, if available, or suggest plausible ways to satisfy common requirements. It is intended to be used to disseminate our future proposals for advancing CN, making it a sustainable and up-to-date digital survey of CN. Keywords Content negotiation, Style of negotiation, Dimension of negotiation, Constraint, Ontology 1. Motivation One resource may have different representations. To request a specific representation, a client would use Content Negotiation (CN), the mechanism for serving the most appropriate rep- resentation of a web resource. CN is described in the Architecture of the World Wide Web W3C Recommendation as one of the essential components of Web design [1, section 3.2]. The client may accompany its request with a set of constraints that the origin server (or some proxy server) uses to serve an adequate response. The sequence and type of exchanged messages vary according to the CN style, CN dimension, constraint conveyance technique, and the web protocol employed. Over the years, various dimensions of CN, styles of CN, as well as ways to convey constraints have emerged to satisfy new requirements and solve new use cases. However, there is no general and comprehensive state of the art on this topic. This demo presents a new resource ISWC’22: international semantic web conference, October 23–27, 2022, Virtual conference ∗ Corresponding author. Envelope-Open yousouf.taghzouti@emse.fr (Y. Taghzouti); antoine.zimmermann@emse.fr (A. Zimmermann); maxime.lefrancois@emse.fr (M. Lefrançois) GLOBE https://youctagh.github.io/ (Y. Taghzouti); https://www.emse.fr/~zimmermann/ (A. Zimmermann); https://www.maxime-lefrancois.info/ (M. Lefrançois) Orcid 0000-0003-4509-9537 (Y. Taghzouti); 0000-0003-1502-6986 (A. Zimmermann); 0000-0001-9814-8991 (M. Lefrançois) © 2022 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop Proceedings http://ceur-ws.org ISSN 1613-0073 CEUR Workshop Proceedings (CEUR-WS.org) called Content Negotiation Theoretical Framework (CNTF ): a website that collects knowledge about CN use cases, styles, dimensions, etc., and organises it according to an ontology. To the best of our knowledge, CNTF provides the first digital state of the art survey about existing CN approaches and features. We identify the used CN feature in each contribution, and categorise them in order to classify existing contributions on CN. CNTF aims to highlight existing solutions, if available, or suggest plausible ways to satisfy common requirements. To summarise, the contributions of CNTF are the following: 1) A digital state of the art about CN in the form of a website; 2) A reference point for CN categories and concept groups to enable classification; 3) An ontology for CN knowledge; 4) A graphic visualisation and navigation. CNTF is open-source https://github.com/youctagh/cntf with permanent URL https: //w3id.org/cntf/ and DOI https://doi.org/10.5281/zenodo.6504504 a video demonstration is available at https://youtu.be/Cm8tuabbXCM. Some efforts were done to encapsulate the available techniques and characteristics of CN, but to the best of our knowledge, this only took the form of a related work section in specifications using CN such as [2, Section 5] or web page documentation such as in Mozilla Developer Network Web Docs1 . The idea of a digital state of the art is not new; others have already proposed similar resources, either in the form of web pages, or in the form of a website dedicated to a topic like the one for the complexity of reasoning in Description Logics [3]. 2. A Portal for the State of the Art on Content Negotiation CNTF is a website designed to help the web community: either newcomers to the field of CN who want to explore it, or experts who want to keep up with the latest techniques. CNTF should meet these requirements: R1 Navigable design CNTF should have a navigable design that includes interlinking through hyperlinks to help users categorise their use cases, and a graph following the resource model, with clickable nodes to navigate from one concept to another. R2 Extensible One of the main contrasts between a traditional survey paper and the CNTF resource is that it should support extensibility by allowing the addition of new CN concepts, e.g., a new dimension, and to be up to date with different terminology and definitions. R3 Categorisable CNTF should provide the means to categorise the different CN use cases and techniques to allow for comparative evaluation. It should also have a well thought out grouping and modelling of the different CN concepts to facilitate understanding. R4 Maintainable CNTF should promote maintainability by adjusting the model used, e.g., community-recommended vocabularies, and by taking into account feedback provided by resource users to clarify and rectify content. The system has been designed as a website, so no installation process is required. In addition, it allows users to always have the latest version without having to perform an update at each 1 https://developer.mozilla.org/en-US/docs/Web/HTTP/Content_negotiation release. CNTF is built with the Angular Framework. Next, we discuss how CNTF could be utilised: CNTF as a State of the Art Literature Review of CN CNTF collects the styles of CN and provides: 1) A description of the style; 2) An example of CN using that style; 3) The use cases from the bank of use cases in CNTF using that style; 4) Pointing the advantages and disadvantages of this style. CNTF groups the preferences of the client/server in a category named CN dimension and for each of these dimensions we deliver: 1) A description of the dimension; 2) Some references to the pertinent use cases; 3) Some examples of the CN process; 4) Some relevant references on the state of the art. Each domain comes with a set of terms, for a newcomer to find and grasp the definitions of all these terms is a tedious task, that’s why CNTF has a terminology section that lists and keeps track of the meaning of the terms related to CN, and since different communities might differ on the meaning of a term, we present them with their respective communities references. Since another type of user of this resource is developers, CNTF has an “Additional Info” section that lists implementations of CN using some of the available technologies. CNTF as a Bank of CN Use Cases A difficulty faced by someone conducting research in a new subject area is to contextualise the usefulness of the material learned. CNTF attempts to solve this problem for the CN domain by collecting use cases from other documents and websites. Being an open-source project, the community may contribute with other use cases. In each of the use cases, one finds: 1) A description of the use case; 2) Potentially some references to the primary source the use case was inspired from; 3) The requirements extracted from the use case; 4) Potentially a solution section with relevant references or preliminary solutions. Each of these use cases must satisfy a set of requirements that could be found in the “CN requirement” section. CNTF as a Categorisation and Classification Medium CNTF is organised in categories, which favours categorisation and classification. A user may check all the concepts of CN: styles, dimensions, etc., and select those that best fit their use case. A table can be found in the “Classification” section in CNTF, where each row of the table is accompanied by a summary to aid understanding. CNTF as a CN Knowledge Graph Most of the content of CNTF is available in a knowledge graph (KG)2 , describing among other: use cases, references, dimensions, requirements. CNTF knowledge graph is modelled according to the “CNTF ontology” https://w3id.org/cntf/ontology. CNTF as a Medium for Visualisation and Navigation of CN Concepts CNTF users can navigate with the traditional hyperlinks to move from one page to another in order to explore different concepts. Alternatively, the user can get a general view of the relationships between 2 https://w3id.org/cntf/kg concepts through CNTF ontology “visualisation” section3 . WebVOWL is used to render the visualisation. CNTF as a Template for State of the Art Resources CNTF is a website that represents a digital form of the survey on the CN domain but some components that represent generic parts could be reused to fit other domains such as: Use Cases, Requirements, Classifications (change the table columns with the used metrics), Terminologies, Abbreviations, References, etc., making it a candidate to be a model for digital surveys. Moreover, the same parts could be reused from the ontology. 3. Conclusion and Future work Content negotiation is a cornerstone of the Web architecture, and a powerful mechanism for selecting the best representation from multiple available alternatives. CNTF aims to collect everything one needs to know about it in one place. CNTF reviews the available literature and compiles it into a single resource so that users interested in CN can easily find relevant materials. It addresses the problem of CN and attempts to identify new ways to better solve the available use cases. The resource covers the basics of CN: use cases, dimensions, styles, and existing ways of conveying constraints. CNTF gives a coherent view of the problem that will be the basis for addressing the semantic CN problem. CNTF recommends solutions that leverage semantic web technologies, e.g., leveraging SHACL as a way to express the threshold of CN constraints.4 The future work on CNTF involves a number of initiatives, one of which is the ongoing collection of use cases for CN, dimensions, etc., in particular the new CN by profile. We plan to have an implementation of this approach to facilitate its adoption by having an experimental space, this space would give users the opportunity to test different CN styles, dimensions and solutions to some of the use cases without having to implement them themselves. References [1] I. Jacobs, N. Walsh, Architecture of the World Wide Web, W3C Recommendation, W3C, 2004. [2] L. G. Svensson, R. Atkinson, N. J. Car, Content Negotiation by Profile, W3C Working Draft, W3C, 2019. [3] E. Zolin, Complexity of reasoning in description logics, 2013. URL: http://www.cs.man.ac. uk/~ezolin/dl/. 3 https://w3id.org/cntf/visualisation 4 See the use case: Negotiation of RDF shapes in CNTF.