RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV7g5xZTQ516P1IZug08h7vX+zOfoBnYnnuFjbVCsQrQPuwrx+MqWhZMA0lioNmRw/UKl9tSiIyYCa+QDYEFwK99KhsIXNKL4Ghr6+5rYJW8hrQ1znQ+ufYgHyjLBU+yZo0RopXBrtGz/1n2HGil90mC1puyyXBVul08To0JsCWwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjDGQCS1S+SRnERDuYDXOugdYUP0efEquHJEEHAbU/uLzBVlga89zqrNPCS7fBE6lArBUWEmT8eLKdMapyqvAzI1J3jUWTMhDJF+XFBkUiuiFfNSc4vJJcmi0yujtnuzXsRIG202jyaP4f5ULoskFwaZOSBZJfiE0dsB3D7DTIAQIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB RSA TEST+this+is+not+a+real+key Tobias Kuhn Tobias Kuhn RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV7g5xZTQ516P1IZug08h7vX+zOfoBnYnnuFjbVCsQrQPuwrx+MqWhZMA0lioNmRw/UKl9tSiIyYCa+QDYEFwK99KhsIXNKL4Ghr6+5rYJW8hrQ1znQ+ufYgHyjLBU+yZo0RopXBrtGz/1n2HGil90mC1puyyXBVul08To0JsCWwIDAQAB RSA MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAlo0jLDJQTVxyYFILSFoShmousrJ3yjMOgQMIusVffDOj+tAmWq2tiB1p2mIfExZWbl8sWxNaC21Q23lhMI/eYuM/FpHktwAVPmIwAHQqNFo7YDz4wxXzqvJFkvmiIm8MHp7I/0H+JEAS3ksLmP4QpY0Di+rCyANgvF7y/p5o3tLC+arYqaifFvBG5ZDoOv46Y5LytyTrqFi6pKRuc48mJ2brPj3LkI7y+lzQXpqE0JzVRY1s7z8hSdtnc0RcfKOJEqOTKRIPAmDltBjz5/AINq8YyuZ6z7BqW+E+GIHLF8tGaucGkmdinHSaj33RvdFdyDw8tsIupUy87csheUHJ9QIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjDGQCS1S+SRnERDuYDXOugdYUP0efEquHJEEHAbU/uLzBVlga89zqrNPCS7fBE6lArBUWEmT8eLKdMapyqvAzI1J3jUWTMhDJF+XFBkUiuiFfNSc4vJJcmi0yujtnuzXsRIG202jyaP4f5ULoskFwaZOSBZJfiE0dsB3D7DTIAQIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD4Wj537OijfOWVtsHMznuXKISqBhtGDQZfdO6pbb4hg9EHMcUFGTLbWaPrP783PHv8HMAAPjvEkHLaOHMIknqhaIa5236lfBO3r+ljVdYBElBcLvROmwG+ZGtmPNZf7lMhI15xf5TfoaSa84AFRd5J2EXekK6PhaFQhRm1IpSYtwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB Tobias Kuhn Tobias Kuhn RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV7g5xZTQ516P1IZug08h7vX+zOfoBnYnnuFjbVCsQrQPuwrx+MqWhZMA0lioNmRw/UKl9tSiIyYCa+QDYEFwK99KhsIXNKL4Ghr6+5rYJW8hrQ1znQ+ufYgHyjLBU+yZo0RopXBrtGz/1n2HGil90mC1puyyXBVul08To0JsCWwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjDGQCS1S+SRnERDuYDXOugdYUP0efEquHJEEHAbU/uLzBVlga89zqrNPCS7fBE6lArBUWEmT8eLKdMapyqvAzI1J3jUWTMhDJF+XFBkUiuiFfNSc4vJJcmi0yujtnuzXsRIG202jyaP4f5ULoskFwaZOSBZJfiE0dsB3D7DTIAQIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD4Wj537OijfOWVtsHMznuXKISqBhtGDQZfdO6pbb4hg9EHMcUFGTLbWaPrP783PHv8HMAAPjvEkHLaOHMIknqhaIa5236lfBO3r+ljVdYBElBcLvROmwG+ZGtmPNZf7lMhI15xf5TfoaSa84AFRd5J2EXekK6PhaFQhRm1IpSYtwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV7g5xZTQ516P1IZug08h7vX+zOfoBnYnnuFjbVCsQrQPuwrx+MqWhZMA0lioNmRw/UKl9tSiIyYCa+QDYEFwK99KhsIXNKL4Ghr6+5rYJW8hrQ1znQ+ufYgHyjLBU+yZo0RopXBrtGz/1n2HGil90mC1puyyXBVul08To0JsCWwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjDGQCS1S+SRnERDuYDXOugdYUP0efEquHJEEHAbU/uLzBVlga89zqrNPCS7fBE6lArBUWEmT8eLKdMapyqvAzI1J3jUWTMhDJF+XFBkUiuiFfNSc4vJJcmi0yujtnuzXsRIG202jyaP4f5ULoskFwaZOSBZJfiE0dsB3D7DTIAQIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDiPsiQ+To8TLZ93QQzNLNoA2vbGsRzkFtZAkSDar4Y8wz0/G+L/n9oaR050HlsJ67s/xUQmz+4fjM+ysQeBEHBB9DXFXR2ItCzeJj6cpf0/voKEIEN/8lOrwQv3CMhzKQXtLYppCDMHpeUcrri8OwW6VoKqQlNmFKN3QRG5R6gcwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB Tobias Kuhn RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV7g5xZTQ516P1IZug08h7vX+zOfoBnYnnuFjbVCsQrQPuwrx+MqWhZMA0lioNmRw/UKl9tSiIyYCa+QDYEFwK99KhsIXNKL4Ghr6+5rYJW8hrQ1znQ+ufYgHyjLBU+yZo0RopXBrtGz/1n2HGil90mC1puyyXBVul08To0JsCWwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjDGQCS1S+SRnERDuYDXOugdYUP0efEquHJEEHAbU/uLzBVlga89zqrNPCS7fBE6lArBUWEmT8eLKdMapyqvAzI1J3jUWTMhDJF+XFBkUiuiFfNSc4vJJcmi0yujtnuzXsRIG202jyaP4f5ULoskFwaZOSBZJfiE0dsB3D7DTIAQIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB Tobias Kuhn RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCV7g5xZTQ516P1IZug08h7vX+zOfoBnYnnuFjbVCsQrQPuwrx+MqWhZMA0lioNmRw/UKl9tSiIyYCa+QDYEFwK99KhsIXNKL4Ghr6+5rYJW8hrQ1znQ+ufYgHyjLBU+yZo0RopXBrtGz/1n2HGil90mC1puyyXBVul08To0JsCWwIDAQAB RSA MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB Tobias Kuhn About me I am CEO and Founder at Knowledge Pixels (and a former academic) focussing on how we can apply semantic technologies in a user-friendly manner to radically improve the communication of knowledge. GitHub Google Scholar LinkedIn profile Mastodon my website Around five years after I first started working on this document about the vision of a Knowledge Space, I am finally ready to call this version 1.0! 😁 And it's now actually more than just a vision, as all the main parts have been implemented (see "Current Implementations"). I'm always curious to hear feedback, and there will be follow-ups on the implementation side. 2026-04-27 Knowledge Space 1.0 Now at a session centered around Oomnium and its crowd-financing platform. 2026-04-09 Oomnium Interesting: Pivotal AG, a company that helps startups pivoting. (Right now listening to its CEO Stefan Zanetti) 2026-04-09 Pivotal AG At the Swiss Startup Association's Founders Day today all day. Really enjoying it :) 2026-04-09 Founders Day Now at a session on sales strategy. Julian Liniger (Relai): "Product has to come first, sales afterwards. You need to fully focus the first few years on making a great product. Only then sales makes even sense." 2026-04-09 Sales strategies Listening to Tobias Rain on the story of GetYourGuide. 2026-04-09 GetYourGuide Attending Founders Day (https://swissstartupassociation.ch/founders-day-2026/), where Cristian Grossman (Beekeeper) is saying: "as an early stage startup, you shoul fall in love with the problem, not with your solution". 2026-04-09 Cristian Grossman at Founders Day Now session on investor views: "don't tailor your story to the investor - find the right investor for your story" 2026-04-09 Investor views <p>I just gave my talk "Aligning and Globally Indexing Diverse FDOs with Nanopublications" at the FDO Conference (<a href="https://docs.google.com/presentation/d/11NSdx7CrWQzA-IjSTsddRfzHKrT_zfgZC0xVs_f_YCk/edit?usp=sharing">slides</a>). I think it went really well and we now have 39 participants listed on the <a href="https://w3id.org/spaces/fdo-conference-2026">Nanodash space for the conference</a>. 😊</p> 2026-03-26 Nanopubs4FDO presentation at FDO Conference Greetings from the night train to Vienna, looking forward to participating in the FDO conference starting tomorrow! :) 2026-03-23 Night train to Vienna <p>Next week I'll be at the FDO Conference in Vienna (March 24–27) with two contributions:</p> <p>🎓 Tuesday: Nanopublications tutorial on the pre-conference training day — a hands-on introduction to nanopublication-based FAIR Digital Objects</p> <p>🎤 Thursday: "Aligning and globally indexing diverse FDOs with nanopublications" — how nanopublications can serve as a bridge to connect and index different FDO implementations</p> <p>If you're attending and interested in how structured, machine-readable knowledge sharing works in practice, come join us!</p> <a href="https://fairdo.org/fdo-conference-2026/">https://fairdo.org/fdo-conference-2026/</a> 2026-03-20 Presenting at FDO Conference next week Yes, you get what you optimize/incentivize for. Sometimes quantitative metrics are needed and helpful though. But for these cases there is quite a simple recipe: Base these metrics on open data, use a bunch of them for different contexts, and reconsider and adjust them regularly. Like that any kind of long-term gaming of these metrics can be canceled out by future versions of the metrics, and thereby the incentive to game them in the first place is (mostly) gone. 2026-03-10 Reply to "Who could have predicted that ..." This is a very good post. And while we are at switching to a new system, we should re-think the concepts of "papers" and "publications". Or rather think about to what extent we should retire these vessels, and establish new forms of (fast, structured, reliable) scientific knowledge sharing. 2026-03-05 "The one science reform we can all agree on, but we're too cowardly to do" 2026-09-15 SEMANTICS-2026 Communications in Computer and Information Science 2025 Aligning Data Management Plans with Community Standards Using FAIR Implementation Profiles 171 159 Ronald Siebes Navroop K. Singh Shuai Wang Tobias Kuhn Angelica Maineri Jacco van Ossenbruggen Mark Bruyneel Stephanie van de Sandt Tycho Hofstra Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Erasmus University Rotterdam, Rotterdam, Netherlands Biodiversity Information Science and Standards 2024-12-05 Nanopublications: Universal, Anti-Silo and FAIR Method for Publishing, Annotating and Sharing of Open Linked Data for Biodiversity 8 Teodor Georgiev Jeremy Miller Tobias Kuhn Lyubomir Penev Wouter Addink Mathias Dillen Dimitris Koureas Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Meise Botanic Garden, Meise, Belgium Pensoft Publishers, Sofia, Bulgaria Naturalis Biodiversity Center, Leiden, Netherlands Studies on the Semantic Web Traditional dataset retrieval systems rely on metadata for indexing, rather than on the underlying data values. However, high-quality metadata creation and enrichment often require manual annotations, which is a labour-intensive and challenging process to automate. In this study, we propose a method to support metadata enrichment using topic annotations generated by three Large Language Models (LLMs): ChatGPT-3.5, GoogleBard, and GoogleGemini. Our analysis focuses on classifying column headers based on domain-specific topics from the Consortium of European Social Science Data Archives (CESSDA), a Linked Data controlled vocabulary. Our approach operates in a zero-shot setting, integrating the controlled topic vocabulary directly within the input prompt. This integration serves as a Large Context Windows approach, with the aim of improving the results of the topic classification task. We evaluated the performance of the LLMs in terms of internal consistency, inter-machine alignment, and agreement with human classification. Additionally, we investigate the impact of contextual information (i.e., dataset description) on the classification outcomes. Our findings suggest that ChatGPT and GoogleGemini outperform GoogleBard in terms of internal consistency as well as LLM-human-agreement. Interestingly, we found that contextual information had no significant impact on LLM performance. This work proposes a novel approach that leverages LLMs for topic classification of column headers using a controlled vocabulary, presenting a practical application of LLMs and Large Context Windows within the Semantic Web domain. This approach has the potential to facilitate automated metadata enrichment, thereby enhancing dataset retrieval and the Findability, Accessibility, Interoperability, and Reusability (FAIR) of research data on the Web. 2024-09-11 Zero-Shot Topic Classification of Column Headers: Leveraging LLMs for Metadata Enrichment Margherita Martorana Tobias Kuhn Lise Stork Jacco van Ossenbruggen Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Journal of Biomedical Semantics Background: In today's landscape of data management, the importance of knowledge graphs and ontologies is escalating as critical mechanisms aligned with the FAIR Guiding Principles—ensuring data and metadata are Findable, Accessible, Interoperable, and Reusable. We discuss three challenges that may hinder the effective exploitation of the full potential of FAIR knowledge graphs. Results: We introduce "semantic units" as a conceptual solution, although currently exemplified only in a limited prototype. Semantic units structure a knowledge graph into identifiable and semantically meaningful subgraphs by adding another layer of triples on top of the conventional data layer. Semantic units and their subgraphs are represented by their own resource that instantiates a corresponding semantic unit class. We distinguish statement and compound units as basic categories of semantic units. A statement unit is the smallest, independent proposition that is semantically meaningful for a human reader. Depending on the relation of its underlying proposition, it consists of one or more triples. Organizing a knowledge graph into statement units results in a partition of the graph, with each triple belonging to exactly one statement unit. A compound unit, on the other hand, is a semantically meaningful collection of statement and compound units that form larger subgraphs. Some semantic units organize the graph into different levels of representational granularity, others orthogonally into different types of granularity trees or different frames of reference, structuring and organizing the knowledge graph into partially overlapping, partially enclosed subgraphs, each of which can be referenced by its own resource. Conclusions: Semantic units, applicable in RDF/OWL and labeled property graphs, offer support for making statements about statements and facilitate graph-alignment, subgraph-matching, knowledge graph profiling, and for management of access restrictions to sensitive data. Additionally, we argue that organizing the graph into semantic units promotes the differentiation of ontological and discursive information, and that it also supports the differentiation of multiple frames of reference within the graph. 2024-05-27 Semantic units: organizing knowledge graphs into semantically meaningful units of representation Robert Hoehndorf Tobias Kuhn Lars Vogt Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands King Abdullah University of Science and Technology (KAUST) TIB – Leibniz Information Centre for Science and Technology and University Library Communications in Computer and Information Science 2024 FAIR Implementation Profiles for Social Science 290 284 Navroop K. Singh Shuai Wang Tobias Kuhn Angelica Maineri Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Erasmus University Rotterdam, Rotterdam, Netherlands 2023-12-05 The Role of Serendipity in User-Curated Music Playlists 147 140 Valentina Maccatrozzo Tobias Kuhn Davide Ceolin Jacco Van Ossenbruggen Vrije Universiteit Amsterdam Centrum Wiskunde & Informatica, Amsterdam, Netherlands Proceedings of the 12th Knowledge Capture Conference 2023 In response to the increasing volume of research data being generated, more and more data portals have been designed to facilitate data findability and accessibility. However, a significant portion of this data remains confidential or restricted due to its sensitive nature, such as patient data or census microdata. While maintaining confidentiality prohibits its public release, the emergence of portals supporting rich metadata can help enable researchers to at least discover the existence of restricted access data, empowering them to assess the suitability of the data before requesting access. Existing standards, such as CSV on the Web and RDF Data Cube, have been adopted to facilitate data management, integration, and re-use of data on the Web. However, the current landscape still lacks adequate standards not only to effectively describe restricted access data while preserving confidentiality but also to facilitate its discovery. In this work, we investigate the relationship between the structural, statistical, and semantic elements of restricted access tabular data, and we explore how such relationship can be formally modeled in a way that is Findable, Accessible, Interoperable, and Reusable. We introduce the DataSet-Variable Ontology (DSV), that by combining CSV on the Web and RDF Data Cube standards, leveraging semantic technologies and Linked Data principles, and introducing variable-level metadata, aims to capture high-quality metadata to support the management and re-use of restricted access data on the Web. As evaluation, we conducted a case study where we applied DSV to four different datasets from different statistical governmental agencies. We employed a set of competency questions to assess the ontology's ability to support knowledge discovery and data exploration. By describing high-quality metadata, both at the dataset- and variable levels, while maintaining data privacy, this novel ontology facilitates data interoperability, discovery, and re-use and it empowers researchers to manage, integrate, and analyze complex restricted access data sources. 2023-12-05 Advancing data sharing and reusability for restricted access data on the Web: introducing the DataSet-Variable Ontology 91 83 Margherita Martorana Ronald Siebes Tobias Kuhn Jacco van Ossenbruggen Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Proceedings of the 12th Knowledge Capture Conference (K-CAP 2023) Biodiversity Information Science and Standards 2023-08-09 Nanopublications for Biodiversity Go Live 7 Teodor Georgiev Daniel Mietchen Tobias Kuhn Lyubomir Penev Richard L. Pyle Seyhan Demirov Iva Boyadzhieva Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Pensoft Publishers, Sofia, Bulgaria FIZ Karlsruhe – Leibniz Institute for Information Infrastructure, Karlsruhe, Germany Bishop Museum, Honolulu, United States PeerJ Computer Science 2023-02-21 Nanopublication-based semantic publishing and reviewing: a field study with formalization papers e1159 9 Tobias Kuhn Davide Ceolin Cristina-Iulia Bucur Jacco van Ossenbruggen Vrije Universiteit Amsterdam Centrum Wiskunde & Informatica, Amsterdam, Netherlands Research Ideas and Outcomes Beginning in 1995, early Internet pioneers proposed Digital Objects as encapsulations of data and metadata made accessible through persistent identifier resolution services. In recent years, this Digital Object Architecture has been extended to include the FAIR Guiding Principles, resulting in the concept of a FAIR Digital Object (FDO), a minimal, uniform container making any digital resource machine-actionable. Beginning in 2009, nanopublications were independently conceived as a minimal, uniform container making individual semantic assertions and their associated provenance metadata, machine-actionable. These two technologies share the same vision of a data infrastructure, and act as instances of Machine-Actionable Containers (MACs) that make use of minimal uniform standards to enable FAIR operations. Here, we compare the structure and computational behaviors of the existing nanopublication infrastructure, to those in the proposed FAIR Digital Object Framework. Although developed independently there are clear parallels between the vision and the approach of nanopublication and FDOF. We find a remarkable congruence between the currently proposed FDO requirements and the existing nanopublication infrastructure, including several FDO-like qualities already embodied in the nanopublication ecosystem. 2022-10-12 The Comparative Anatomy of Nanopublications and FAIR Digital Objects 8 Marek Suchánek Erik Schultes Luiz Bonino da Silva Santos Tobias Kuhn Barbara Magagna Barend Mons University of Twente, Enschede, Netherlands Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Czech Technical University in Prague, Prague, Czech Republic Leiden University Medical Center, Leiden, Netherlands Research Ideas and Outcomes 2022-10-12 FIPs and Practice 8 Marek Suchánek Erik Schultes Tobias Kuhn Barbara Magagna Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Czech Technical University in Prague, Prague, Czech Republic PeerJ Computer Science Understanding the complexity of restricted research data is vitally important in the current new era of Open Science. While the FAIR Guiding Principles have been introduced to help researchers to make data Findable, Accessible, Interoperable and Reusable, it is still unclear how the notions of FAIR and Openness can be applied in the context of restricted data. Many methods have been proposed in support of the implementation of the principles, but there is yet no consensus among the scientific community as to the suitable mechanisms of making restricted data FAIR. We present here a systematic literature review to identify the methods applied by scientists when researching restricted data in a FAIR-compliant manner in the context of the FAIR principles. Through the employment of a descriptive and iterative study design, we aim to answer the following three questions: (1) What methods have been proposed to apply the FAIR principles to restricted data?, (2) How can the relevant aspects of the methods proposed be categorized?, (3) What is the maturity of the methods proposed in applying the FAIR principles to restricted data?. After analysis of the 40 included publications, we noticed that the methods found, reflect the stages of the Data Life Cycle, and can be divided into the following Classes: Data Collection, Metadata Representation, Data Processing, Anonymization, Data Publication, Data Usage and Post Data Usage. We observed that a large number of publications used 'Access Control' and 'Usage and License Terms' methods, while others such as 'Embargo on Data Release' and the use of 'Synthetic Data' were used in fewer instances. In conclusion, we are presenting the first extensive literature review on the methods applied to confidential data in the context of FAIR, providing a comprehensive conceptual framework for future research on restricted access data. 2022-07-20 Aligning restricted access data with FAIR: a systematic review Margherita Martorana Ronald Siebes Tobias Kuhn Jacco van Ossenbruggen Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands JMIRx Med Background: In the poorly studied field of physician suicide, various factors can contribute to misinformation or information distortion, which in turn can influence evidence-based policies and prevention of suicide in this unique population. Objective: The aim of this paper is to use nanopublications as a scientific publishing approach to establish a citation network of claims in peer-reviewed publications about the rate of suicide among US physicians. Methods: A list of articles from a previously published scoping literature review on physician suicide was used to identify those articles that commented on or investigated suicidal behaviors of physician populations, including students, postgraduate trainees, and practicing physicians. The included articles were from peer-reviewed publications and asserted a claim about the annual rate of physician suicide. Manual data extraction was performed to collect article (or resource) type, title, authors, digital object identifier or URI, publication year, claim (about annual physician suicide rate), data of last access of the article (eg, for a webpage), and citations supporting the claim. Additional articles, websites, or other links were only added to the set of claims if they were cited by a peer-reviewed article already included in the data set. A nanopublication was created for each article or resource using Nanobench with an investigator-developed literature-based claim nanopublication template. Results: A set of 49 claims concerning the rate of US physician suicide was represented as nanopublications. Analysis of the claim network revealed that (1) the network is not fully connected, (2) no single primary source of the claim could be identified, and (3) all end-point citations had a claim with no further citation, had no apparent claim, or could not be accessed to verify the claim. The nanopublication strategy also enabled the capture of variant claims published on a website. Conclusions: Nanopublications remain to be adopted in broader scientific publishing in medicine, especially in publishing about physician mental health and suicide. This proof-of-concept study highlights an opportunity for more coordinated research efforts in the subject of physician suicide. Our work integrates these various claims and enables the verification of nonauthoritative assertions, thereby better equipping researchers to advance evidence-based knowledge and to make informed statements in the advocacy of physician suicide prevention. Representing physician suicide rate claims as nanopublications can be extended and improved in future work. 2022-07-01 Representing Physician Suicide Claims as Nanopublications: Proof-of-Concept Study Creating Claim Networks Tobias Kuhn Tiffany I. Leung Michel Dumontier Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Maastricht University Data Science 2022-03-15 Special Issue on Semantic Publishing with Formalization Papers 9 1 Tobias Kuhn Cristina-Iulia Bucur Vrije Universiteit Amsterdam Lecture Notes in Computer Science 2022 Documenting the Creation, Manipulation and Evaluation of Links for Reuse and Reproducibility 96 81 Tobias Kuhn Veruska Zamborlini Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Federal University of Espírito Santo, Vitória, Brazil Al Idrissou 2021-12-02 User-friendly Composition of FAIR Workflows in a Notebook Environment 8 1 Remzi Celebi Tobias Kuhn Lars Ridder Robin A. Richardson Sven van der Burg Djura Smits Michel Dumontier Vrije Universiteit Amsterdam Netherlands eScience Center, Amsterdam, Netherlands Maastricht University Proceedings of the 11th Knowledge Capture Conference The use of semantic technologies is gaining significant traction in science communication with a wide array of applications in disciplines including the life sciences, computer science, and the social sciences. Languages like RDF, OWL, and other formalisms based on formal logic are applied to make scientific knowledge accessible not only to human readers but also to automated systems. These approaches have mostly focused on the structure of scientific publications themselves, on the used scientific methods and equipment, or on the structure of the used datasets. The core claims or hypotheses of scientific work have only been covered in a shallow manner, such as by linking mentioned entities to established identifiers. In this research, we therefore want to find out whether we can use existing semantic formalisms to fully express the content of high-level scientific claims using formal semantics in a systematic way. Analyzing the main claims from a sample of scientific articles from all disciplines, we find that their semantics are more complex than what a straight-forward application of formalisms like RDF or OWL account for, but we managed to elicit a clear semantic pattern which we call the "super-pattern". We show here how the instantiation of the five slots of this super-pattern leads to a strictly defined statement in higher-order logic. We successfully applied this super-pattern to an enlarged sample of scientific claims. We show that knowledge representation experts, when instructed to independently instantiate the super-pattern with given scientific claims, show a high degree of consistency and convergence given the complexity of the task and the subject. These results therefore open the door on the longer run for allowing researchers to express their high-level scientific findings in a manner they can be automatically interpreted. This in turn will allow for automated consistency checking, question answering, aggregation, and much more. 2021-12-02 Expressing High-Level Scientific Claims with Formal Semantics 240 233 Tobias Kuhn Davide Ceolin Cristina-Iulia Bucur Jacco van Ossenbruggen Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Centrum Wiskunde & Informatica, Amsterdam, Netherlands Proceedings of the 11th Knowledge Capture Conference (K-CAP 2021) 2021-12-02 Living Literature Reviews 248 241 Tobias Kuhn Michel Wijkstra Timo Lek Mickey Steijaert Kasper Welbers Vrije Universiteit Amsterdam Proceedings of the 11th Knowledge Capture Conference (K-CAP 2021) F1000Research Scientific data analyses often combine several computational tools in automated pipelines, or workflows. Thousands of such workflows have been used in the life sciences, though their composition has remained a cumbersome manual process due to a lack of standards for annotation, assembly, and implementation. Recent technological advances have returned the long-standing vision of automated workflow composition into focus. This article summarizes a recent Lorentz Center workshop dedicated to automated composition of workflows in the life sciences. We survey previous initiatives to automate the composition process, and discuss the current state of the art and future perspectives. We start by drawing the “big picture” of the scientific workflow development life cycle, before surveying and discussing current methods, technologies and practices for semantic domain modelling, automation in workflow development, and workflow assessment. Finally, we derive a roadmap of individual and community-based actions to work toward the vision of automated workflow development in the forthcoming years. A central outcome of the workshop is a general description of the workflow life cycle in six stages: 1) scientific question or hypothesis, 2) conceptual workflow, 3) abstract workflow, 4) concrete workflow, 5) production workflow, and 6) scientific results. The transitions between stages are facilitated by diverse tools and methods, usually incorporating domain knowledge in some form. Formal semantic domain modelling is hard and often a bottleneck for the application of semantic technologies. However, life science communities have made considerable progress here in recent years and are continuously improving, renewing interest in the application of semantic technologies for workflow exploration, composition and instantiation. Combined with systematic benchmarking with reference data and large-scale deployment of production-stage workflows, such technologies enable a more systematic process of workflow development than we know today. We believe that this can lead to more robust, reusable, and sustainable workflows in the future. 2021-09-07 Perspectives on automated composition of workflows in the life sciences 897 Jon Ison Timothy J. Griffin Alireza Khanteymoori Yolanda Gil Hans Ienasescu Stian Soiland-Reyes Vedran Kasalica Salvador Capella-Gutierrez Tobias Kuhn Katherine Wolstencroft Matúš Kalaš Ilkay Altintas Michael R. Crusoe Magnus Palmblad Robert Stevens Paulos Charonyktakis Steffen Möller Hervé Ménager Vincent Robert Suzan Verberne Veit Schwämmle Robin A. Richardson Paul Groth Aswin Verhoeven Pratik Jagtap Carole Goble Hailiang Mei Anna-Lena Lamprecht Christopher J. O. Baker Mohammad Sadnan Al Manir Vrije Universiteit Amsterdam, Amsterdam, Netherlands Netherlands eScience Center, Amsterdam, Netherlands University of Virginia, Charlottesville, United States University of California San Diego, La Jolla, United States University of Minnesota, Minneapolis, United States University of Freiburg, Freiburg, Germany Leiden University, Leiden, Netherlands University of Manchester, Manchester, United Kingdom Westerdijk Fungal Biodiversity Institute, Utrecht, Netherlands University of Southern California, Los Angeles, United States University of Southern Denmark, Odense, Denmark University of Bergen, Bergen, Norway Institut Français de Bioinformatique, Évry, France Institut Pasteur, Paris, France University of Amsterdam, Amsterdam, Netherlands Rostock University Medical Center, Rostock, Germany Utrecht University, Utrecht, Netherlands Technical University of Denmark, Kongens Lyngby, Denmark University of New Brunswick, Saint John, Canada Barcelona Supercomputing Center, Barcelona, Spain Leiden University Medical Center, Leiden, Netherlands Ammar Ben Hadj Amor Szoke Szaniszlo PeerJ Computer Science While the publication of Linked Data has become increasingly common, the process tends to be a relatively complicated and heavy-weight one. Linked Data is typically published by centralized entities in the form of larger dataset releases, which has the downside that there is a central bottleneck in the form of the organization or individual responsible for the releases. Moreover, certain kinds of data entries, in particular those with subjective or original content, currently do not fit into any existing dataset and are therefore more difficult to publish. To address these problems, we present here an approach to use nanopublications and a decentralized network of services to allow users to directly publish small Linked Data statements through a simple and user-friendly interface, called Nanobench, powered by semantic templates that are themselves published as nanopublications. The published nanopublications are cryptographically verifiable and can be queried through a redundant and decentralized network of services, based on the grlc API generator and a new quad extension of Triple Pattern Fragments. We show here that these two kinds of services are complementary and together allow us to query nanopublications in a reliable and efficient manner. We also show that Nanobench makes it indeed very easy for users to publish Linked Data statements, even for those who have no prior experience in Linked Data publishing. 2021-03-08 Semantic micro-contributions with decentralized nanopublication services Ruben Taelman Stian Soiland-Reyes Tobias Kuhn Vincent Emonet Michel Dumontier Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands IDLab, Ghent University, Ghent, Belgium SciFY, Athens, Greece Department of Computer Science, The University of Manchester, Manchester, UK Institute of Data Science, Maastricht University, Maastricht, Netherlands Informatics Institute, University of Amsterdam, Amsterdam, Netherlands Haris Antonatos PeerJ Computer Science 2020-09-21 Towards FAIR protocols and workflows: the OpenPREDICT use case Remzi Celebi Tobias Kuhn Joao Rebelo Moreira Lars Ridder Ahmed A. Hassan Michel Dumontier Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Department of Medical Informatics, Stanford University, Stanford, United States Netherlands eScience Center, Amsterdam, Netherlands Institute of Data Science, Maastricht University, Maastricht, Netherlands Sandeep Ayyar Lecture Notes in Computer Science 2020 Reusable FAIR Implementation Profiles as Accelerators of FAIR Convergence 147 138 Marek Suchánek Erik Schultes Tobias Kuhn Kristina Maria Hettne Barbara Magagna Robert Pergl Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Leiden University, Leiden, Netherlands Czech Technical University in Prague, Prague, Czech Republic Lecture Notes in Computer Science Scientific publishing is the means by which we communicate and share scientific knowledge, but this process currently often lacks transparency and machine-interpretable representations. Scientific articles are published in long coarse-grained text with complicated structures, and they are optimized for human readers and not for automated means of organization and access. Peer reviewing is the main method of quality assessment, but these peer reviews are nowadays rarely published and their own complicated structure and linking to the respective articles is not accessible. In order to address these problems and to better align scientific publishing with the principles of the Web and Linked Data, we propose here an approach to use nanopublications as a unifying model to represent in a semantic way the elements of publications, their assessments, as well as the involved processes, actors, and provenance in general. To evaluate our approach, we present a dataset of 627 nanopublications representing an interlinked network of the elements of articles (such as individual paragraphs) and their reviews (such as individual review comments). Focusing on the specific scenario of editors performing a meta-review, we introduce seven competency questions and show how they can be executed as SPARQL queries. We then present a prototype of a user interface for that scenario that shows different views on the set of review comments provided for a given manuscript, and we show in a user study that editors find the interface useful to answer their competency questions. In summary, we demonstrate that a unified and semantic publication model based on nanopublications can make scientific communication more effective and user-friendly. 2020 A Unified Nanopublication Model for Effective and User-Friendly Access to the Elements of Scientific Publishing 119 104 Tobias Kuhn Davide Ceolin Cristina-Iulia Bucur Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Centrum Wiskunde & Informatica, Amsterdam, Netherlands Communications in Computer and Information Science 2020 Nanocitation: Complete and Interoperable Citations of Nanopublications 187 182 Tobias Kuhn Erika Fabris Gianmaria Silvello University of Padua, Padua, Italy Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Scientific publishing seems to be at a turning point. Its paradigm has stayed basically the same for 300 years but is now challenged by the increasing volume of articles that makes it very hard for scientists to stay up to date in their respective fields. In fact, many have pointed out serious flaws of current scientific publishing practices, including the lack of accuracy and efficiency of the reviewing process. To address some of these problems, we apply here the general principles of the Web and the Semantic Web to scientific publishing, focusing on the reviewing process. We want to determine if a fine-grained model of the scientific publishing workflow can help us make the reviewing processes better organized and more accurate, by ensuring that review comments are created with formal links and semantics from the start. Our contributions include a novel model called Linkflows that allows for such detailed and semantically rich representations of reviews and the reviewing processes. We evaluate our approach on a manually curated dataset from several recent Computer Science journals and conferences that come with open peer reviews. We gathered ground-truth data by contacting the original reviewers and asking them to categorize their own review comments according to our model. Comparing this ground truth to answers provided by model experts, peers, and automated techniques confirms that our approach of formally capturing the reviewers' intentions from the start prevents substantial discrepancies compared to when this information is later extracted from the plain-text comments. In general, our analysis shows that our model is well understood and easy to apply, and it revealed the semantic properties of such review comments. 2019-09-23 Peer Reviewing Revisited: Assessing Research with Interlinked Semantic Comments 187 179 Tobias Kuhn Davide Ceolin Cristina-Iulia Bucur Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Centrum Wiskunde & Informatica, Amsterdam, Netherlands Proceedings of the 10th International Conference on Knowledge Capture (K-CAP 2019) Scientific Data 2019-09-20 Evaluating FAIR maturity through a scalable, automated, community-governed framework 6 Susanna-Assunta Sansone Mark D. Wilkinson Erik Schultes Mario Prieto Philippe Rocca-Serra Luiz Olavo Bonino da Silva Santos Tobias Kuhn Dominique Batista Mercè Crosas Peter McQuilton Michel Dumontier Vrije Universiteit Amsterdam, Amsterdam, Netherlands Maastricht University, Maastricht, Netherlands Universidad Politécnica de Madrid, Madrid, Spain Harvard University, Cambridge, United States University of Oxford, Oxford, United Kingdom Leiden University Medical Center, Leiden, Netherlands PeerJ Computer Science The analysis of literary works has experienced a surge in computer-assisted processing. To obtain insights into the community structures and social interactions portrayed in novels, the creation of social networks from novels has gained popularity. Many methods rely on identifying named entities and relations for the construction of these networks, but many of these tools are not specifically created for the literary domain. Furthermore, many of the studies on information extraction from literature typically focus on 19th and early 20th century source material. Because of this, it is unclear if these techniques are as suitable to modern-day literature as they are to those older novels. We present a study in which we evaluate natural language processing tools for the automatic extraction of social networks from novels as well as their network structure. We find that there are no significant differences between old and modern novels but that both are subject to a large amount of variance. Furthermore, we identify several issues that complicate named entity recognition in our set of novels and we present methods to remedy these. We see this work as a step in creating more culturally-aware AI systems. 2019-04-18 Evaluating named entity recognition tools for extracting social networks from novels Marieke van Erp Tobias Kuhn Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands KNAW Humanities Cluster, Amsterdam, Netherlands Niels Dekker Lecture Notes in Computer Science 2019 Easy Web API Development with SPARQL Transformer 470 454 Tobias Kuhn Raphaël Troncy Pasquale Lisena Albert Meroño-Peñuela Vrije Universiteit Amsterdam EURECOM, Sophia Antipolis, France Lecture Notes in Computer Science 2019 A Framework for Citing Nanopublications 83 70 Tobias Kuhn Erika Fabris Gianmaria Silvello University of Padua, Padua, Italy Vrije Universiteit Amsterdam 2018-10 Nanopublications: A Growing Resource of Provenance-Centric Scientific Linked Data 92 83 Christine Chichester Egon Willighagen Juan M. Banda Tobias Kuhn Tareq B. Malas Chris Evelo Allen H. Hurlbert Friederike Ehrhart Alexander Malic Laura I. Furlong Núria Queralt-Rosinach Emilio Centeno Ortiz Jorrit H. Poelen Albert Meroño-Peñuela Michel Dumontier Vrije Universiteit Amsterdam, Amsterdam, Netherlands University of North Carolina at Chapel Hill, United States Scripps Research Institute, La Jolla, United States Maastricht University, Maastricht, Netherlands Georgia State University, Atlanta, United States Hospital del Mar Research Institute (IMIM), Barcelona, Spain Leiden University Medical Center, Leiden, Netherlands 2018 IEEE 14th International Conference on e-Science (e-Science) Frontiers in Artificial Intelligence and Applications Scientific communication still mainly relies on natural language written in scientific papers, which makes the described knowledge very difficult to access with automatic means. We can therefore only make limited use of formal knowledge organization methods to support researchers and other interested parties with features such as automatic aggregations, fact checking, consistency checking, question answering, and powerful semantic search. Existing approaches to solve this problem by improving the scientific communication methods have either very restricted coverage, require formal logic skills on the side of the researchers, or depend on unreliable machine learning for the formalization of knowledge. Here, I propose an approach to this problem that is general, intuitive, and flexible. It is based on a unique kind of controlled natural language, called AIDA, consisting of English sentences that are atomic, independent, declarative, and absolute. Such sentences can then serve as nodes in a network of scientific claims linked to publications, researchers, and domain elements. I present here some small studies on preliminary applications of this language. The results indicate that it is well accepted by users and provides a good basis for the creation of a knowledge graph of scientific findings. 2018 Using the AIDA Language to Formally Organize Scientific Claims Tobias Kuhn Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Data Science 2017-12-08 Data Science – Methods, infrastructure, and applications 5 1 Tobias Kuhn Michel Dumontier Vrije Universiteit Amsterdam Maastricht University Data Science 2017-10-17 Genuine semantic publishing 154 139 1 Tobias Kuhn Michel Dumontier Vrije Universiteit Amsterdam Maastricht University Lecture Notes in Computer Science Climate change, vaccination, abortion, Trump: Many topics are surrounded by fierce controversies. The nature of such heated debates and their elements have been studied extensively in the social science literature. More recently, various computational approaches to controversy analysis have appeared, using new data sources such as Wikipedia, which help us now better understand these phenomena. However, compared to what social sciences have discovered about such debates, the existing computational approaches mostly focus on just a few of the many important aspects around the concept of controversies. In order to link the two strands, we provide and evaluate here a controversy model that is both, rooted in the findings of the social science literature and at the same time strongly linked to computational methods. We show how this model can lead to computational controversy analytics that have full coverage over all the crucial aspects that make up a controversy. 2017 Computational Controversy 300 288 Kaspar Beelen Lora Aroyo Tobias Kuhn Benjamin Timmermans Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Lecture Notes in Computer Science 2017 Reliable Granular References to Changing Linked Data 451 436 Egon Willighagen Tobias Kuhn Chris Evelo Laura I. Furlong Núria Queralt-Rosinach Emilio Centeno Vrije Universiteit Amsterdam Scripps Research Institute, La Jolla, United States Maastricht University Hospital del Mar Research Institute (IMIM), Barcelona, Spain Communications in Computer and Information Science The number of scientific articles has grown rapidly over the years and there are no signs that this growth will slow down in the near future. Because of this, it becomes increasingly difficult to keep up with the latest developments in a scientific field. To address this problem, we present here an approach to help researchers learn about the latest developments and findings by extracting in a normalized form core claims from scientific articles. This normalized representation is a controlled natural language of English sentences called AIDA, which has been proposed in previous work as a method to formally structure and organize scientific findings and discourse. We show how such AIDA sentences can be automatically extracted by detecting the core claim of an article, checking for AIDA compliance, and – if necessary – transforming it into a compliant sentence. While our algorithm is still far from perfect, our results indicate that the different steps are feasible and they support the claim that AIDA sentences might be a promising approach to improve scientific communication in the future. 2017 Extracting Core Claims from Scientific Articles 46 32 Tobias Kuhn Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands Tom Jansen Language Resources and Evaluation 2016-11-19 LRE journal CNL introduction 11 9 Tobias Kuhn Brian Davis Vrije Universiteit Amsterdam University of Galway (NUI Galway), Galway, Ireland Nuance Communications, Vienna, Austria Kaarel Kaljurand PeerJ Computer Science 2016-08-22 Decentralized provenance-aware publishing with nanopublications e78 2 Christine Chichester Axel-Cyrille Ngonga Ngomo Tobias Kuhn Michael Krauthammer Ruben Verborgh Núria Queralt-Rosinach Raffaele Viglianti Michel Dumontier Vrije Universiteit Amsterdam IDLab, Ghent University, Ghent, Belgium Stanford University, Stanford, United States NCSR Demokritos, Athens, Greece Leipzig University, Leipzig, Germany Yale University, New Haven, United States Hospital del Mar Research Institute (IMIM), Barcelona, Spain University of Maryland, College Park, United States George Giannakopoulos Semantic Web 2016-06-23 Publishing DisGeNET as nanopublications 528 519 7 Christine Chichester Tobias Kuhn Ferran Sanz Laura I. Furlong Núria Queralt-Rosinach Michel Dumontier Vrije Universiteit Amsterdam Stanford University, Stanford, United States Hospital del Mar Research Institute (IMIM), Barcelona, Spain Pompeu Fabra University, Barcelona, Spain Scientific Data There is an urgent need to improve the infrastructure supporting the reuse of scholarly data. A diverse set of stakeholders—representing academia, industry, funding agencies, and scholarly publishers—have come together to design and jointly endorse a concise and measureable set of principles that we refer to as the FAIR Data Principles. The intent is that these may act as a guideline for those wishing to enhance the reusability of their data holdings. Distinct from peer initiatives that focus on the human scholar, the FAIR Principles put specific emphasis on enhancing the ability of machines to automatically find and use the data, in addition to supporting its reuse by individuals. This Comment is the first formal publication of the FAIR Principles, and includes the rationale behind them, and some exemplar implementations in the community. 2016-03-15 The FAIR Guiding Principles for scientific data management and stewardship Jeffrey S. Grethe Susanna-Assunta Sansone Ingrid Dillo Scott Edmunds Rob Hooft Jun Zhao Mark D. Wilkinson Olivier Dumon Jaap Heringa Anthony J. Brookes Erik Schultes Abel L. Packer Andra Waagmeester Philippe Rocca-Serra IJsbrand Jan Aalbersberg Morris A. Swertz Luiz Bonino da Silva Santos Tobias Kuhn Katherine Wolstencroft Richard Finkers Jan Velterop Chris T. Evelo Alasdair J.G. Gray Joost Kok Thierry Sengstag Philip E. Bourne Mark Thompson Myles Axton Maryann E. Martone Marco Roos Gabrielle Appleton Paul Groth Jan-Willem Boiten Carole Goble Mercè Crosas Erik van Mulligen Ted Slater Scott J. Lusher Arie Baak Bengt Persson Alejandra Gonzalez-Beltran Barend Mons Tim Clark Niklas Blomberg Peter A.C 't Hoen Michel Dumontier SIB Swiss Institute of Bioinformatics, Switzerland Data Archiving and Networked Services (DANS), The Hague, Netherlands Vrije Universiteit Amsterdam, Amsterdam, Netherlands Stanford University, Stanford, United States Netherlands eScience Center, Amsterdam, Netherlands University of Groningen, Groningen, Netherlands Elsevier, Amsterdam, Netherlands BGI Genomics, Shenzhen, China University of California San Diego, La Jolla, United States Erasmus MC, Rotterdam, Netherlands TNO, The Hague, Netherlands National Institutes of Health, Bethesda, United States Leiden University, Leiden, Netherlands University of Manchester, Manchester, United Kingdom Maastricht University, Maastricht, Netherlands Universidade Federal de São Paulo, São Paulo, Brazil Max Planck Computing and Data Facility, Garching, Germany Universidad Politécnica de Madrid, Madrid, Spain Harvard University, Cambridge, United States ELIXIR, Hinxton, United Kingdom Uppsala University, Uppsala, Sweden University of Leicester, Leicester, United Kingdom Heriot-Watt University, Edinburgh, United Kingdom Wageningen University & Research, Wageningen, Netherlands University of Oxford, Oxford, United Kingdom Leiden University Medical Center, Leiden, Netherlands Albert Mons George Strawn Jildau Bouwman Johan van der Lei Peter Wittenburg Rene van Schaik Ruben Kok Lecture Notes in Computer Science 2016 The Controlled Natural Language of Randall Munroe’s Thing Explainer 110 102 Tobias Kuhn Vrije Universiteit Amsterdam Lecture Notes in Computer Science 2016 Data 2 Documents: Modular and Distributive Content Management in RDF 462 447 Victor de Boer Tobias Kuhn Guus Schreiber Vrije Universiteit Amsterdam Niels Ockeloen Language Resources and Evaluation 2015-09-14 Fully automatic multi-language translation with a catalogue of phrases: successful employment for the Swiss avalanche bulletin 35 13 Tobias Kuhn Kurt Winkler WSL Institute for Snow and Avalanche Research SLF, Davos, Switzerland ETH Zurich, Switzerland IEEE Transactions on Knowledge and Data Engineering 2015-09-01 Making Digital Artifacts on the Web Verifiable and Reliable 2400 2390 27 Tobias Kuhn Michel Dumontier Stanford University, Stanford, United States ETH Zurich, Switzerland 2015-05-18 Science Bots: A Model for the Future of Scientific Computation? 1062 1061 Tobias Kuhn ETH Zurich, Switzerland Lecture Notes in Computer Science 2015 Publishing Without Publishers: A Decentralized Approach to Dissemination, Retrieval, and Archiving of Data 672 656 Christine Chichester Tobias Kuhn Michael Krauthammer Michel Dumontier SIB Swiss Institute of Bioinformatics, Switzerland Stanford University, Stanford, United States Yale University, New Haven, United States ETH Zurich, Switzerland Lecture Notes in Computer Science 2015 Provenance-Centered Dataset of Drug-Drug Interactions 300 293 Juan M. Banda Nigam H. Shah Tobias Kuhn Michel Dumontier Stanford University, Stanford, United States ETH Zurich, Switzerland Semantic Web 2015 Collaborative multilingual knowledge management based on controlled natural language 258 241 Tobias Kuhn University of Zurich, Switzerland Nuance Communications, Vienna, Austria ETH Zurich, Switzerland Kaarel Kaljurand Laura Canedo Science of Computer Programming 2014-12 Verifiable source code documentation in controlled natural language 140 121 Alexandre Bergel Tobias Kuhn Universidad de Chile, Santiago, Chile ETH Zurich, Switzerland Physical Review X 2014-11-21 Inheritance Patterns in Citation Networks Reveal Scientific Memes 4 Tobias Kuhn Matjaž Perc Dirk Helbing University of Maribor, Maribor, Slovenia ETH Zurich, Switzerland Computational Linguistics What is here called controlled natural language (CNL) has traditionally been given many different names. Especially during the last four decades, a wide variety of such languages have been designed. They are applied to improve communication among humans, to improve translation, or to provide natural and intuitive representations for formal notations. Despite the apparent differences, it seems sensible to put all these languages under the same umbrella. To bring order to the variety of languages, a general classification scheme is presented here. A comprehensive survey of existing English-based CNLs is given, listing and describing 100 languages from 1930 until today. Classification of these languages reveals that they form a single scattered cloud filling the conceptual space between natural languages such as English on the one end and formal languages such as propositional logic on the other. The goal of this article is to provide a common terminology and a common model for CNL, to contribute to the understanding of their general nature, to provide a starting point for researchers interested in the area, and to help developers to make design decisions. 2014-03 A Survey and Classification of Controlled Natural Languages Tobias Kuhn University of Zurich, Switzerland ETH Zurich, Switzerland Lecture Notes in Computer Science 2014 Evaluating the Fully Automatic Multi-language Translation of the Swiss Avalanche Bulletin 54 44 Tobias Kuhn Martin Volk Kurt Winkler University of Zurich, Switzerland WSL Institute for Snow and Avalanche Research SLF, Davos, Switzerland ETH Zurich, Switzerland Lecture Notes in Computer Science 2014 Trusty URIs: Verifiable, Immutable, and Permanent Digital Artifacts for Linked Data 410 395 Tobias Kuhn Michel Dumontier Stanford University, Stanford, United States ETH Zurich, Switzerland Journal of Biomedical Semantics 2014 Mining images in biomedical publications: Detection and analysis of gel diagrams 10 Tobias Kuhn Michael Krauthammer Yale University, New Haven, United States ETH Zurich, Switzerland Mate Nagy ThaiBinh Luong Journal of Logic, Language and Information 2013-01 A Principled Approach to Grammars for Controlled Natural Languages and Predictive Editors 70 33 Tobias Kuhn ETH Zurich, Switzerland Lecture Notes in Computer Science 2013 Broadening the Scope of Nanopublications 501 487 Tobias Kuhn Michael Krauthammer Yale University, New Haven, United States ETH Zurich, Switzerland Mate Levente Nagy Paolo Emilio Barbano Lecture Notes in Computer Science 2013 A Multilingual Semantic Wiki Based on Attempto Controlled English and Grammatical Framework 441 427 Tobias Kuhn University of Zurich, Switzerland ETH Zurich, Switzerland Kaarel Kaljurand Semantic Web 2013 The understandability of OWL statements in controlled English 115 101 4 Tobias Kuhn University of Zurich, Switzerland Corpora In this paper, we present Coral, an interface in which complex corpus queries can be expressed in a controlled subset of natural English. With the help of a predictive editor, users can compose queries and submit them to the Coral system, which then automatically translates them into formal AQL statements. We give an overview of the controlled natural language developed for Coral and describe the functionalities of the predictive editor provided for it. We also report on a user experiment in which the system was evaluated. The results show that, with Coral, corpora of annotated texts can be queried more easily and more quickly than with the existing ANNIS interface. Our system demonstrates that complex corpora can be accessed without the need to learn a complicated, formal query language. 2012-11 Coral: Corpus Access in Controlled Language 206 187 Tobias Kuhn University of Zurich, Switzerland Yale University, New Haven, United States Stefan Höfler Lecture Notes in Computer Science 2012 Codeco: A Practical Notation for Controlled English Grammars in Predictive Editors 114 95 Tobias Kuhn Yale University, New Haven, United States Lecture Notes in Computer Science 2010 Writing Clinical Practice Guidelines in Controlled Natural Language 280 265 Tobias Kuhn Michael Krauthammer University of Zurich, Switzerland Yale University, New Haven, United States George Michel Kaarel Kaljurand Norbert E. Fuchs Richard N. Shiffman Lecture Notes in Computer Science 2010 On Controlled Natural Languages: Properties and Prospects 289 281 Krasimir Angelov Jonathan Pool Rolf Schwitter Tobias Kuhn Adam Wyner Guntis Barzdins Brian Davis Macquarie University, Sydney, Australia University of Zurich, Zurich, Switzerland University College London, London, United Kingdom University of Malta, Msida, Malta University of Galway, Galway, Ireland Chalmers University of Technology, Gothenburg, Sweden University of Latvia, Riga, Latvia University of Sheffield, Sheffield, United Kingdom Danica Damljanovic Kaarel Kaljurand Ken Jones Martin Luts Mike Rosner Norbert Fuchs Stefan Hoefler Lecture Notes in Computer Science 2010 An Evaluation Framework for Controlled Natural Languages 20 1 Tobias Kuhn University of Zurich, Switzerland Lecture Notes in Computer Science 2009 Controlled English for Reasoning on the Semantic Web 308 276 Juri Luca De Coi Tobias Kuhn University of Zurich, Switzerland Kaarel Kaljurand Norbert E. Fuchs Proceedings of the Fifth International Workshop on Semantic Web User Interaction (SWUI 2008), CEUR Workshop Proceedings We present AceWiki, a prototype of a new kind of semantic wiki using the controlled natural language Attempto Controlled English (ACE) for representing its content. ACE is a subset of English with a restricted grammar and a formal semantics. The use of ACE has two important advantages over existing semantic wikis. First, we can improve the usability and achieve a shallow learning curve. Second, ACE is more expressive than the formal languages of existing semantic wikis. Our evaluation shows that people who are not familiar with the formal foundations of the Semantic Web are able to deal with AceWiki after a very short learning phase and without the help of an expert. 2008-07-29 AceWiki: A Natural and Expressive Semantic Wiki Tobias Kuhn Lecture Notes in Computer Science 2008 Attempto Controlled English for Knowledge Representation 124 104 Tobias Kuhn University of Zurich, Switzerland Kaarel Kaljurand Norbert E. Fuchs Data Integration in the Life Sciences Linking the biomedical literature to other data resources is notoriously difficult and requires text mining. Text mining aims to automatically extract facts from literature. Since authors write in natural language, text mining is a great natural language processing challenge, which is far from being solved. We propose an alternative: If authors and editors summarize the main facts in a controlled natural language, text mining will become easier and more powerful. To demonstrate this approach, we use the language Attempto Controlled English (ACE). We define a simple model to capture the main aspects of protein interactions. To evaluate our approach, we collected a dataset of 459 paragraph headings about protein interaction from literature. 56% of these headings can be represented exactly in ACE and another 23% partially. These results indicate that our approach is feasible. 2006 Improving Text Mining with Controlled Natural Language: A Case Study for Protein Interactions Tobias Kuhn University of Zurich, Switzerland Technische Universität Dresden, Dresden, Germany Loic Royer Michael Schroeder Norbert E. Fuchs 2026-03-26 FAIR Digital Objects (FDOs) and nanopublications are emerging paradigms for structured, interoperable data. While conceptually overlapping, they differ in their focus, approach, and implementation. We show how they can be effectively combined to align FDOs of different kinds and to provide global indexing. Aligning and globally indexing diverse FDOs with nanopublications 2026-03-24 This is a hands-on interactive tutorial about nanopublications given at the FDO Conference 2026. Nanopublication tutorial 2024-05-20 Nanopublications: rethinking global knowledge sharing 2024-02-28 Nanopublications for FDOs 2017-05-01 Invited talk at DANS Seminar on Linked Data in Research and Cultural Heritage, Den Haag, Netherlands Nanopublications and Decentralized Publishing 2017-04-04 Invited talk at IOS Press 30 Year Anniversary, Amsterdam, Netherlands Linked Data Publishing with Nanopublication 2016-11-01 Invited talk at Bring Your Own Rett Syndrome Data workshop, Maastricht University, Netherlands Nanopublications 2016-07-13 Invited talk at LERU Doctoral Summer School 2016, Leiden University, Netherlands Nanopublications 2015-06-17 Invited talk at CERN Workshop on Innovations in Scholarly Communication (OAI9), Geneva, Switzerland A Decentralized Network for Publishing Linked Data 2014-06-11 Invited talk at Quic Inc., San Francisco, USA Citation Graph Analysis to Identify Memes in Scientific Literature 2013-06-08 Keynote at International Workshop on Terminology, Languages, and Content (LaRC), Pretoria, South Africa Controlled Natural Language and Opportunities for Standardization 2011-08-23 Invited talk at Grammatical Framework Summer School, Barcelona, Spain AceWiki 2011-02-01 Invited talk at 16th KnowTalk at KnowGravity Inc., Zurich, Switzerland Semantic Web für Menschen wie du und ich 2010-09-14 Tutorial at the Second Workshop on Controlled Natural Language, Marettimo Island, Italy An Introduction to AceWiki 2008-11-20 Invited talk at Semantic Wiki Mini Series, Session 2, Ontolog Conference Call (virtual) AceWiki: Controlled English in a Semantic Wiki Douceur. 2002. The Sybil Attack. 2026-05-07 Introduces the term Sybil Attack. Bigerl et. al. 2020. Tentris – A Tensor-Based Triple Store 2026-05-04 Introduces the Tentris approach: tensor representations for more efficient RDF querying Sandberg et al. Dissolving the Fermi Paradox. 2018. 2018-06-25 The Fermi Paradox isn't a paradox after all if you consider all the probabilities correctly. Barabasi & Albert. Emergence of Scaling in Random Networks. 1999. 2014 Algorithm for generating scale-free networks. Power law distribution. Preferential attachment. Stanley. Scaling, universality, and renormalization: Three pillars of modern critical phenomena. 1999. 2014 Critical points, e.g. temperature when magnet stops working, are badly understood with microscopic models. Scaling laws (?). Universality classes of systems with the same "critical-point exponents and scaling functions". Renormalization (?). Skinner. Are Theories of Learning Necessary? 1950. 2014 Studying learning and behavior based on animal experiments. has the end date has the start date is a has name is further described by located in 3PFF training 3PFF workshop FAIR awareness FAIR convergence FIP consultation FIP event FIP introduction hybrid event in-person event M4M consultation M4M I-ADOPT M4M introduction M4M schema M4M vocabulary Orchestration virtual event has event assistant has event facilitator has event organizer has event sponsor has participating community Event Space has as admin an admin of the event Defining a 3PFF event as a Space 3PFF event assistant community http://purl.org/nanopub/api/find_signed_things?type=https%3A%2F%2Fw3id.org%2Ffair%2Ffip%2Fterms%2FFAIR-Implementation-Community&searchterm= date of the event (e.g. 2020-12-31) [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] end date (and optionally time) short name, used as URI suffix https://w3id.org/fair/3pff/ 3 PFF event event type event facilitator hours location of the event (URL or name) the name of the event online resource organizer of the event (ROR, URL or name) 3PFF type workshop type sponsor of the event (ROR or name) start date (and optionally time) has duration in hours has the description is a has the label Alliance - (with focus on bringing units together) Community - (with focus on exchange) Division - (with focus on structuring into sub-units) Group - (with focus on getting work done) Organization - (with focus on formal vessel) Outlet - (with focus on outreach) Program - (with focus on coordination) Space has as admin an admin of the Space Such nanopublications defines an open-ended Space, i.e. an organization, group, program, or community. Defining an open-ended Space with existing URI Spaces the description of the Space the name of the Space Space identifier type of the Space has guest Declaring to be a guest of a space ${space} has guest: ${user} Events choose the space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose user has host Declaring to be host of a space ${space} has host: ${user} Events choose the space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose user is sub-space of Such a nanopublication declares that one Space is a sub-space of another. The relation is admitted into the validated space-state once admins of both child and parent have attested to it (either by a single dual-admin publisher, or by two separate single-side declarations). Declaring a sub-space relation ${child} is sub-space of ${parent} Spaces choose the child Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose the parent (super-) Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space conforms to is a has value fragment selector specific resource (image with region) has selector has source image This template describes a morphological character used for identifying a taxon, optionally linking to image evidence with region annotations or direct image URLs. Describing a morphological identification character ${characterLabel} Biodiversity short name for the character, used as URI suffix http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/spaces/marine-biodiversity/r/ontology/MorphologicalCharacter&searchterm= URL of the image a selector URL of the source image (e.g. a Zenodo file URL) media fragment selector (e.g. xywh=150,200,80,60) an image region the organism taxon, e.g. a species https://vodex.petapico.org/nidx/query?rows=100&q=label: has identification character is represented in has the text see also (has root nanopub) Testing root nanopub placeholder ${message} Comments your plain-text message root nanopub conforms to the profile is a has the label FAIR Digital Object has the data Such a nanopublication declares a basic kind of FDO, with or without data reference. Creating a basic FDO FDO URL of the data file short ID used as URI suffix short, human-readable label for the FDO select FDO (or other thing) as source http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/fdof/ontology%23FAIRDigitalObject&searchterm= FDO type https://w3id.org/np/l/nanopub-query-1.1/api/RAydXkXhyL-uFqfW6F9DoM6Eu4x0bjux2JsdzQwy9stJM/find-fdo-subclasses Basic FDO Profile was derived from is called - connects a formal identifier (left) to an informal human-readable name (right) is a subclass of - states that all instances of the class/type to the left are also instances of the class/type to the right is exactly the same as is defined as follows: - connects an identifier (left) to a human-readable definition (right) is related to - connects two things that are somehow related FAIR Digital Object (FDO) Such a nanopublication defines a new subclass of a FAIR Digital Objects (FDO) that can then be used as type of specific FDOs. Defining a type of an FDO FDO definition of the FDO type short name, used as URI suffix the name of the FDO type URI of a related entity http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= URI of a class/type that should be treated as fully synonymous news article has the body content was published on has the title is part of is available at Publish a news article to a Space ${headline} https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space has habitat is an has the free-text comment association of an organism taxon to an environment links the taxon to the environment refers to the relation (between taxon and environment) refers to refers to the taxon's life cycle stage is used as defined in has the name - links a taxon usage to a taxon name Such a nanopublication expresses an association between an organism taxon (e.g. a species) and an environment, for example expressing that the organisms of the given species inhabit the specified environment, represented by EUNIS identifier. Expressing an association between an organism taxon and an environment (according to EUNIS) ${taxonname} - ${relation} - ${environment} Biodiversity this association short explanation related to the above statement the environment (via EUNIS identifier) https://discodata.eea.europa.eu/sql?query=SELECT%20concat(%27https%3A%2F%2Feunis.eea.europa.eu%2Fhabitats%2F%27%2C%5Bid_habitat%5D)%20as%20%5B%40id%5D%2C%20%5Bscientific_name%5D%20AS%20label%2C%20%5Bhabitat_description%5D%20as%20description%20FROM%20%5BEUNIS%5D.%5Blatest%5D.%5BHabitat_Information%5D%20WHERE%20%5Bhabitat_category%5D%20LIKE%20%27%25EUNISrev%25%27%20AND%20concat(%5Bscientific_name%5D%2C%27%20%27%2C%5Benglish_name%5D%2C%27%20%27%2C%5Beunis_habitat_code%5D)%20LIKE%20%27%25 %25%27&p=1&nrOfHits=50&mail=null&schema=null the life cycle stage the type of relation between the taxon and the environment https://www.ebi.ac.uk/ols/api/select?ontology=ro&fieldList=iri,label,description&q= a taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: Testing EUNIS lookup https://discodata.eea.europa.eu/sql?query=SELECT%20concat(%27https%3A%2F%2Feunis.eea.europa.eu%2Fhabitats%2F%27%2C%5Bid_habitat%5D)%20as%20%5B%40id%5D%2C%20%5Bscientific_name%5D%20AS%20label%2C%20%5Bhabitat_description%5D%20as%20description%20FROM%20%5BEUNIS%5D.%5Blatest%5D.%5BHabitat_Information%5D%20WHERE%20%5Bhabitat_category%5D%20LIKE%20%27%25EUNISrev%25%27%20AND%20concat(%5Bscientific_name%5D%2C%27%20%27%2C%5Benglish_name%5D%2C%27%20%27%2C%5Beunis_habitat_code%5D)%20LIKE%20%27%25 %25%27&p=1&nrOfHits=50&mail=null&schema=null has the description is a has the label has the alternative ID Alliance - (with focus on bringing units together) Community - (with focus on exchange) Division - (with focus on structuring into sub-units) Group - (with focus on getting work done) Organization - (with focus on formal vessel) Outlet - (with focus on outreach) Program - (with focus on coordination) Space has as admin has the root definition an admin of the Space alternative URI Such nanopublications defines an open-ended Space, i.e. a group, program, outlet, or community. Defining an open-ended Space (with root definition) Spaces the description of the Space the name of the Space Space identifier https://w3id.org/spaces/ https://w3id.org/spaces/ type of the Space is part of FAQ entry is a has the question has the answer has the position string the answer Create an FAQ entry FAQ: ${question} entity this FAQ entry is part of https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/MaintainedResource this FAQ entry string determining the order of the FAQ entries the question has the text is a is about is authored by testimonial Give a testimonial author of the testimonial entity the testimonial is about this testimonial text of the testimonial has the comment has the label is relevant for Expressing something is relevant for something comment about why this is relevant the entity that has the relevant resource the resource being relevant for the entity label of the resource has the title is a activated view display deactivated view display view display applies to - applies only to this space, and not to parts of it, etc. applies to all instances of applies to the namespace is a display for is a display of the view class URI, overriding view definition namespace (URI prefix) choose resource Displaying a view for a maintained resource ${resource} displays view: ${view} Spaces this select whether this display is activated or deactivated choose the maintained resource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/MaintainedResource title, overriding view definition choose the view https://w3id.org/np/l/nanopub-query-1.1/api/RAzSFlOt0yD9b-GSNifkGoKfakXEYQ7f6Ic3OMwuJfwts/find-views?appliedViewClass=https://w3id.org/kpxl/gen/terms/MaintainedResource simple message view has the abstract has the publication date includes - links a thing to a part it includes is part of has the title has is in journal issue has end page has start page is in journal volume book chapter - A defined chapter of a book, usually with a separate title or number. in-use paper - A scholarly work that describes applied and validated solutions such as software tools, systems or architectures that benefit from the use of the technology of a particular scholarly domain. journal editorial - An editorial published in an issue of a journal. methods paper - A scholarly work detailing a method, procedure or experimental protocol employed in a particular scholarly domain. position paper - A scholarly work that reports a particular intellectual position or viewpoint regarding a particular scholarly topic. research paper - A scholarly work that reports original research contributions addressing theoretical, analytical or experimental aspects of a particular scholarly domain. resource paper - A scholarly work that describes resources developed to provide experimental materials or facilities, support a research hypothesis, to provide answers to a research question, or that have contributed to the generation of novel scientific work. review paper - A scholarly work that surveys the state of the art of topics central to a particular subject or relating to a specific domain (e.g. the scope of a certain journal or conference). scholarly work - A general term that includes all other listed types has the affiliation has the email address is a has the name the abstract of the article Select organization from above Select author from above DOI of the article (starting with https://doi.org/10...) https://doi\.org/10.+ The type of the article Such a nanopublication contains the main high-level metadata about a scholarly article, including title, authors, and links to other nanopublications. Describing core article metadata Article: ${title} Journals ORCID ID of the author (starting with https://orcid.org/...) https://orcid\.org/[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{3}[0-9X] email address of author [A-Za-z0-9._+\-\']+@[A-Za-z0-9.\-]+\.[A-Za-z]{2,} this author list full name of author Select author to specify an email address for date, e.g. "2023-07-21", "2023-07", or "2023" (1[0-9][0-9][0-9]|20[0-2][0-9])(-(1[0-2]|0[1-9])(-(3[0-1]|[1-2][0-9]|0[1-9]))?)? issue number ISSN of the journal (e.g. "2451-8492") http://id.crossref.org/issn/ the journal with ISSN Title of the journal has at position ${number} http://www.w3.org/1999/02/22-rdf-syntax-ns#_ includes as element number [1-9][0-9]* ROR identifier (https://ror.org/...) or short local URI suffix (e.g. "stanford") (https://ror\.org/[0-9a-z]+|[a-zA-Z0-9_\-]+) The name of the organization end page number start page number a part belonging to this article, e.g. a nanopublication The title of the article volume number participates in The creator of such a nanopublication declares to be a participant in the specified Space. Declaring the participation in a Space ${participant} is participant in ${space} Events choose the participant choose space (e.g. event) https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space read action has reader has read date has the read item is a has comment has the label The creator of such a nanopublication declares to have read a specific item (paper, book, article, etc.). Declaring to have read something Read: ${label} Reading comment or note about the reading URI of the read item (e.g. DOI URL) short label (e.g. 'Doe et al. 2024') date read (YYYY, YYYY-MM, or YYYY-MM-DD) [0-9]{4}(-[0-9]{2}(-[0-9]{2})?)? this who read it is about has the title is a paragraph has the content has the position string Create a paragraph item ${title} the full text of the paragraph entity this is part of short URI suffix string determining the order of the paragraphs title of the paragraph is part of has the title is a paragraph has the content has the position string Publish a paragraph item for a profile ${title} text content of the paragraph short URI suffix string determining the order of the paragraphs choose the space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space the title of the paragraph conforms to is a has value has the label fragment selector specific resource (image with region) has selector has source image This template describes a morphological character used for identifying a taxon, optionally linking to image evidence with region annotations or direct image URLs. Describing a morphological identification character ${characterLabel} Biodiversity short name for the character, used as URI suffix human-readable description of the morphological character URL of the image a selector URL of the source image (e.g. a Zenodo file URL) media fragment selector (e.g. xywh=150,200,80,60) an image region the organism taxon, e.g. a species https://vodex.petapico.org/nidx/query?rows=100&q=label: morphological character has identification character is represented in image is a activated view display deactivated view display view display applies to - only applies to this user, and not to pages that are part of it, etc. is a display for is a display of the view Planned event attendance view View of read papers by user Latest nanopubs by user view List of all Spaces for given agent Displaying a view on a user page ${resource} displays view: ${view} Spaces this select whether this display is activated or deactivated choose the user choose the view https://w3id.org/np/l/nanopub-query-1.1/api/RAzSFlOt0yD9b-GSNifkGoKfakXEYQ7f6Ic3OMwuJfwts/find-views?appliedViewClass=https://w3id.org/kpxl/gen/terms/IndividualAgent Simple message view has the title is a activated view display 10/12 columns 2/12 columns 3/12 columns 4/12 columns 5/12 columns 6/12 columns 7/12 columns 8/12 columns 9/12 columns 10/12 columns 12/12 columns deactivated view display view display only applies to resource applies to all instances of applies to the namespace has the display width has the page size has the structural position is a display for is a display of the view class URI, overriding view definition namespace (URI prefix) namespace, overriding view definition resource URI Declare a view that should be displayed for the given resource (e.g. space, user, maintained resource). Displaying a view for a resource ${resource} displays view: ${view} Spaces this select whether this display is activated or deactivated page size in number of entries, overriding view definition [0-9]+ the ID of the resource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/MaintainedResource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space structural position id like '5.5.thing', overriding view definition [1-9]\.[1-9]\..* title, overriding view definition choose the view https://w3id.org/np/l/nanopub-query-1.1/api/RAs7Q2IMbb7C2WzFa98bVwlDMhN3kJ0rrF9cSEybtvLaA/find-embedded-things?type=https://w3id.org/kpxl/gen/terms/ResourceView display width, overriding view definition has author has the presentation date is described as is part of is a has the label see also is about poster presentation Publish metadata about a poster presentation, including title, authors, date, event, and optionally a link to the poster or related resources. Publishing information about a poster presentation Poster: ${title} Posters an author of the poster date of the poster presentation abstract or description of the poster event or conference https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Event short ID suffix for the poster URL to poster, DOI, or related resource title of the poster topic or subject of the poster https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= is a activated view display deactivated view display view display applies to - applies only to this space, and not to parts of it, etc. applies to all instances of applies to the namespace is a display for is a display of the view class URI, overriding view definition namespace (URI prefix) choose resource Displaying a view for a Space ${resource} displays view: ${view} Spaces this select whether this display is activated or deactivated choose the space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose the view https://w3id.org/np/l/nanopub-query-1.1/api/RAzSFlOt0yD9b-GSNifkGoKfakXEYQ7f6Ic3OMwuJfwts/find-views?appliedViewClass=https://w3id.org/kpxl/gen/terms/Space simple message view is a version of has the title is a has the label 2/12 columns 3/12 columns 4/12 columns 5/12 columns 6/12 columns 7/12 columns 8/12 columns 9/12 columns 10/12 columns 12/12 columns list view resource view tabular view view entry action - an action that is applied on a result entry of the view view result action - an action that is applied on the entire result of a view applies to instances of applies to the namespace has the template has the template part field has the query mapping has the template target field has the display width has the page size has the structural position has the action has the query has the query target field short ID suffix for the action text shown on the action button choose the template for this action https://w3id.org/np/l/nanopub-query-1.1/api/RARD6qOGIXUvfxmf5CQNEDxPqlTVCqeLdWeSg5h8tUcEA/search-templates the template field URI suffix resource put "void" if not applicable void table column to template param mapping like 'col:param' void the type of the action classes this view applies to namespace this view applies to Declaring a view that to be shown on a resource page (i.e. user/space/maintained resource page). Declaring a resource view Spaces label of the view number of elements/rows per page [0-9]+ choose the query https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/grlc/grlc-query the query placeholder name resource digits for section/subsection + short id like '5.5.thing' [1-9]\.[1-9]\..* title to be shown as table header short ID suffix for the view short suffix or existing URI of view kind choose the type of view choose display width is an has the free-text comment links the taxon to the chorotype has the relation refers to refers to the taxon's life cycle stage is used as defined in has the name - links a taxon usage to a taxon name Such a nanopublication expresses an association between an organism taxon (e.g. a species) and a chorotype, for example expressing that the organisms of the given species have a distribution range matching the specified chorotype. Expressing an association between an organism taxon and a chorotype ${taxonname} - has distribution range - ${chorotype} Biodiversity this association the chorotype to be associated with the taxon https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https%3A%2F%2Fw3id.org%2Fspaces%2Fcarabid-beetles%2Fr%2Fontology%2FChorotype&searchterm= short explanation related to the above statement the life cycle stage a taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: association of an organism taxon to a chorotype has distribution range has the presentation date is described as is part of is a has the label see also is presented by presentation is about Publish metadata about a presentation, including title, date, presenter, event, and optionally a link to the slides or a recording. Publishing information about a presentation Presentation: ${title} Presentations date of the presentation abstract or description of the presentation event or conference https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Event short ID suffix for the presentation the presenter URL to slides, recording, or related resource title of the presentation topic or subject of the presentation https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= can be described as follows: - gives a thing (left) a human-readable description (right) is part of is a - asserts that the given thing (left) belongs to the given class (right) is called - connects an identifier to a human-readable name for it is further explained at - connects an identifier to a link with further information about it named individual - a concrete or abstract thing that is given an identifier and a name <p>This template defines a new chorotype individual. A chorotype represents a biogeographic distribution pattern or area category used to classify species by their geographic range.</p> Defining a new chorotype ${name} Terms description of the chorotype short name, used as URI suffix - the formal identifier of the chorotype the letter code of the chorotype the name of the chorotype the numerical code of the chorotype a URL where more information about this chorotype can be found vocabulary / ontology http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2002/07/owl%23Ontology&searchterm= chorotype - a biogeographic distribution pattern category has chorotype letter code has chorotype numerical code has the label has the personal URL Declare personal URLs label for the URL (e.g. "my website") URL is a deactivated view display view display is a display for is a display of the view Deactivating a view display for a user ${resource} deactivates view: ${view} Spaces this choose the user choose the view https://w3id.org/np/l/nanopub-query-1.1/api/RAs7Q2IMbb7C2WzFa98bVwlDMhN3kJ0rrF9cSEybtvLaA/find-embedded-things?type=https://w3id.org/kpxl/gen/terms/ResourceView was completed on is a has the label Declaring a replication study outcome according to FORRT FORRT describe the overall conclusion about the original claim choose confidence level choose completion date describe the evidence that supports your conclusion plain-text label for the outcome describe what limits the conclusions of the study short URI suffix for outcome ID repository URL choose study http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/sciencelive/o/terms/FORRT-Replication-Study&searchterm= choose validation status contradicted FORRT Replication Outcome high - Strong evidence, mostly agrees with original inconclusive low - Limited evidence, significant disagreement moderate - Adequate evidence, partial agreement not tested partially supported validated very high - Extensive evidence, high agreement with original very low - Minimal evidence, major disagreement has the conclusion has the confidence level has the evidence has the limitations has the repository has the validation status is an outcome of has habitat is an instance of has the free-text comment is the same as links the organism to the environment refers to the relation refers to - links an association to its subject has the time stamp - points to the date and time associated with this relation or organism (e.g. date of collection); if occurrence URI is given, this is redundant and does not need to be filled in an association of an organism to an environment has the depth has the dissolved oxygen concentration has the life cycle stage has the location coordinates - points to the location coordinates associated with this relation or organism (e.g. place of collection); if occurrence URI is given, this is redundant and does not need to be filled in has the occurrence - links an organism to a record of a specific occurrence of it has the salinity is used as defined in has the name - links a taxon usage to a taxon name has the temperature <p>Such a nanopublication expresses an association between an organism instance and an aquatic environment, expressing that the given organism was observed in the specified type of environment, including information about salinity, temperature, and depth.</p> Expressing an association between an organism and an aquatic environment Organism of ${taxonname} - ${relation} - ${environment} Biodiversity this association short explanation related to the above statement lat/long coordinates in format like '+47.37+8.54' or with altitude '+47.37+8.54+410.5' [+-][0-9]+(\.[0-9]+)?[+-][0-9]+(\.[0-9]+)?([+-][0-9]+(\.[0-9]+)?)? depth below sea level in meters the environment to be associated with the organism https://www.ebi.ac.uk/ols/api/select?ontology=envo&fieldList=iri,label,description&q= select the life cycle stage of the organism; leave blank if unknown occurrence URI from GBIF (https://www.gbif.org/occurrence/...) or iDigBio, BOLD, PlutoF, etc. the organism any existing URI identifier of organism (e.g. of digital collection specimen or observation in nature) dissolved oxygen concentration in ml/l the relation between the organism and the environment https://www.ebi.ac.uk/ols/api/select?ontology=ro&fieldList=iri,label,description&q= salinity the taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: temperature in °C time expressed in XSD DateTime format, e.g. '2023-03-30T22:17:11Z' -?([1-9]\d\d\d+|0\d\d\d)-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])T(([01]\d|2[0-3]):[0-5]\d:[0-5]\d(\.\d+)?|24:00:00(\.0+)?)(Z|[+-](0\d|1[0-4]):[0-5]\d)? conforms to is defined as follows: is a has its subject values from the class (domain) has the label has its object values from the class (range) datatype property - a relation between an object (any entity) and a literal (a text or number) object property - a relation between two objects (any kinds of entities) FDO attribute has the object shape FAIR Digital Object FDO Attribute Profile With this template an object/datatype property is defined in a way it can serve as an FDO attribute of an FDO metadata record. Defining an RDF property as FDO attribute FDO definition of the property URI of the domain class how the property is read, e.g. 'contains' or 'is used by' object shape in SHACL short URI suffix or full URI type of property (object or datatype property) URI of the range class is a is about post has the text is authored by is published on has the title has the link is a response to Create a post ${title} choose author body text of your post select date primary URL of this post this related (third-party) URL URL of referenced post title/headline of the post has the original source is a has the label choose AIDA sentence of claim http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fpurl.org%2Fpetapico%2Fo%2Fhycl%23AIDA-Sentence&searchterm= Declaring an original claim according to FORRT FORRT Short URI suffix as claim ID http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fpurl.org%2Fpetapico%2Fo%2Fhycl%23AIDA-Sentence&searchterm= Type of FORRT claim label of the claim, to find it later source URI FORRT claim corresponds to - linking to an AIDA statement: an English sentence that is Atomic (describing a single thought), Independent (can be understood as a single sentence without further context), Declarative (complete sentence ending with a full stop), and Absolute (describing the core of a claim ignoring certainty and source) computational performance (Computational & Performance) scalability (Computational & Performance) is a has the label is related to Declaring a replication study design according to FORRT FORRT choose FORRT claim http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/sciencelive/o/terms/FORRT-Claim&searchterm= Describe any deviations from original methodology. Choose the scientific discipline https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= choose terms as related keywords https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= label/name of replication study Describe how the claim is reproduced/replicated. Describe what part of the claim is reproduced/replicated. short URI suffix for study ID choose the study type FORRT Replication Study Replication Study - replication with different methodology or conditions Reproduction/Replication Study - study that is both, reproduction and replication Reproduction Study - direct reproduction: same methodology, same tools has the deviation has the discipline has the methodology has the scope targets the claim has the original source is a Declaring an original claim according to FORRT (deprecated) FORRT AIDA sentence URI of claim http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fpurl.org%2Fpetapico%2Fo%2Fhycl%23AIDA-Sentence&searchterm= Type of FORRT claim source URI FORRT claim computational performance (Computational & Performance) scalability (Computational & Performance) Binary format JSON PDF HDF5 PNG NetCDF CSV Zarr MPEG-4 created by has description needs or produces data format has license has title improves upon method CC-BY-4.0 serves purpose applies to domains has source repository has keywords uses computational approach reports performance results is accessible via Apache 2.0 BSD 3 Clause GPL 3.0 MIT applicable research domains https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= primary computational purpose https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= Template for describing a computational workflow implemented for and supported by a Workflow Management System Computational Workflow (without target namespace) Method: ${title} Computational Workflow method this improves upon (DOI or URI) computational approach used https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= URI of the workflow repository ORCID of creator https://orcid.org/ ORCID (just the 16-digit ID) 0000-\d{4}-\d{4}-\d{4} description of what the method does [\s\S]{10,1000} DOI URL https://doi.org/ DOI (starting with '10.') 10.(\d)+/(\S)+ GitHub repository URL expected input data format input: Input: research keywords from Wikidata https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= software license produced output format output: Output: quantitative performance measurements [\s\S]{10,1000} title of the Workflow [\s\S]{5,200} Workflow Management System uses workflow management system Nextflow Snakemake Galaxy CWL has the date is a has the label Declaring a replication study according to FORRT (deprecated) FORRT date of the study (completion) short ID suffiy or full URI (DOI, GitHub URL, etc.) label/title for the study FORRT replication study Assigning a feature to an organism taxon ${taxon} has the feature ${feature} choose biological feature https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= choose taxon https://vodex.petapico.org/nidx/query?rows=100&q=label: has the feature approves of disapproves of choose approve or disapprove Approving or disapproving of a nanopublication ${approveOrDisapprove} ${nanopub} Meta optional free-text comment about the (dis)approval nanopublication URI has the comment is a activated view display deactivated view display view display only applies to resource applies to all instances of applies to the namespace is a display for is a display of the view class URI, overriding view definition namespace, overriding view definition resource URI Displaying a view for a part-level resource ${resource} displays view: ${view} Spaces this select whether this display is activated or deactivated the ID of the resource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/MaintainedResource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose the view https://w3id.org/np/l/nanopub-query-1.1/api/RAs7Q2IMbb7C2WzFa98bVwlDMhN3kJ0rrF9cSEybtvLaA/find-embedded-things?type=https://w3id.org/kpxl/gen/terms/ResourceView basic view of definition relations has the description simple statement has as object has as predicate has as subject is a is labeled as This nanopublication defines an assertion template. Such templates are used to generate the input form for the assertion part of nanopublications. Defining an assertion template (new version) ${tlabel} Templates Nanopublication URI with provenance template default value of the placeholder provide a description / instructions for the template here short ID of grouped statement label of thing URI/placeholder mentioned above the label pattern, e.g. '${abc} links to ${xyz}.' where 'abc' and 'xyz' refer to placeholder names datatype of the literal language tag of the literal [0-9a-zA-Z-]{2,} literal placeholder literal placeholder type of nanopub created (can be class of assertion or nanopub, or main prediate in assertion) placeholder mentioned above placeholder restr/guided choice placeholder restr/guided choice placeholder guided choice placeholder short ID of placeholder short ID of placeholder type of placeholder: IRI, literal, restricted, etc. possible value nanopublication with possible values URL prefix for API lookup URL prefix label for URL prefix regular expression Nanopublication URI with publication info template short ID of statement type of statement: simple, optional, repeatable Tag used as section heading to group templates the target namespace (URI prefix) in which the nanopublication ID is minted template can be marked as unlisted here short ID of grouped statement name of this template URI/literal/placeholder of the object integer value for statement order URI/placeholder of the predicate short ID of simple statement short ID of statement short ID of simple statement URI/placeholder of the subject advanced statement Agent placeholder assertion template Auto-escape URI placeholder Embedded resource External URI placeholder grouped statement Guided choice placeholder Introduced resource Literal placeholder Local resource Long literal placeholder optional statement repeatable statement Restricted choice placeholder Sequence element placeholder Trusty URI placeholder Unlisted template URI placeholder URI/literal placeholder has the datatype has default provenance has the default value has the language tag has the nanopub label pattern - assigns a pattern used to generate a human-readable label for the whole nanopublication has prefix has prefix label has regular expression has required publication info includes has tag has the target namespace has the target nanopub type has as possible value has possible values from has possible values from API has statement order value conforms to Declaring uncertainty estimates for a dataset uncertainty estimates for ${dataset} URI of dataset numerical I estimate value numerical m/z estimate value numerical RT estimate value URI of uncertainty model has I uncertainty estimate has RT uncertainty estimate has m/z uncertainty estimate has habitat <p>Such a nanopublication expresses an association between an organism instance and an environment, expressing that the given organism was observed in the specified type of environment.</p> Expressing an association between an organism and an environment Organism of ${taxonname} - ${relation} - ${environment} Biodiversity this association short explanation related to the above statement lat/long coordinates in format like '+47.37+8.54' or with altitude '+47.37+8.54+410.5' [+-][0-9]+(\.[0-9]+)?[+-][0-9]+(\.[0-9]+)?([+-][0-9]+(\.[0-9]+)?)? the environment to be associated with the organism https://www.ebi.ac.uk/ols/api/select?ontology=envo&fieldList=iri,label,description&q= select the life cycle stage of the organism; leave blank if unknown occurrence URI from GBIF (https://www.gbif.org/occurrence/...) or iDigBio, BOLD, PlutoF, etc. the organism any existing URI identifier of organism (e.g. of digital collection specimen or observation in nature) the relation between the organism and the environment https://www.ebi.ac.uk/ols/api/select?ontology=ro&fieldList=iri,label,description&q= the taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: time expressed in XSD DateTime format, e.g. '2023-03-30T22:17:11Z' -?([1-9]\d\d\d+|0\d\d\d)-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])T(([01]\d|2[0-3]):[0-5]\d:[0-5]\d(\.\d+)?|24:00:00(\.0+)?)(Z|[+-](0\d|1[0-4]):[0-5]\d)? is an instance of has the free-text comment is the same as links the organism to the environment refers to the relation refers to - links an association to its subject has the time stamp - points to the date and time associated with this relation or organism (e.g. date of collection); if occurrence URI is given, this is redundant and does not need to be filled in an association of an organism to an environment has the life cycle stage has the location coordinates - points to the location coordinates associated with this relation or organism (e.g. place of collection); if occurrence URI is given, this is redundant and does not need to be filled in has the occurrence - links an organism to a record of a specific occurrence of it is used as defined in has the name - links a taxon usage to a taxon name has the description has the source is a has the label short ID suffix for approach Describing an AI in Education approach choose more specific class http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= description of the approach short text label/name for the approach paper reference, e.g. DOI the label for the reference (citation line) AI in Education approach has observer Declaring to observe a space ${space} has observer: ${user} Events choose the observed space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose user has observer The creator of such a nanopublication declares to have participated in the specified event. Declaring the participation in an event ${resource} has observer: ${user} Events URI of resource that is observed choose user bot - a software agent that acts/publishes autonomously software agent software tool - a software agent that acts/publishes with direct human interaction is declared by has algorithm has key location has public key has the owner is a has the name full URI or short suffix as agent ID Introducing a software agent ${name} Meta choose whether this is a bot or a tool choose additional type, if applicable short id of key declaration URL where the private key is stored name of the software agent choose owner public key RSA GenAI agent this annotation Such a nanopublication represents an annotation of a text according to the <a href="https://www.w3.org/ns/oa">Web Annotation Vocabulary</a>. Annotating a text Annotation of ${source}: '${body-text}' Annotations an annotation body write your annotation text here choose motivation the copy of the text being selected a snippet of text immediately before the selected text a snippet of text immediately after the selected text a selector the URI/URL of the source that is being annotated a target is a - connects a thing (left) to the class (right) it belongs to has the value - links an identifier to its (textual) value web annotation - a web annotation of a document or other thing text quote selector - a text quote selector describes a range of text by copying it, and including some of the text immediately before (a prefix) and after (a suffix) refers to the text - refers to a copy of the text which is being selected has as body - connects an annotation to its body element has as selector - connects an annotation to its selector has the source - links to the source that is being annotated has as target - connects an annotation to its target is motivated by refers to the text right after - refers to a snippet of content that occurs immediately before the content which is being selected refers to the text right before - refers to a snippet of content that occurs immediately after the content which is being selected has the description simple statement has as object has as predicate has as subject is a is labeled as This nanopublication defines an assertion template. Such templates are used to generate the input form for the assertion part of nanopublications. Defining an assertion template ${tlabel} Templates Nanopublication URI with provenance template default value of the placeholder provide a description / instructions for the template here short ID of grouped statement label of thing URI/placeholder mentioned above the label pattern, e.g. '${abc} links to ${xyz}.' where 'abc' and 'xyz' refer to placeholder names datatype of the literal language tag of the literal [0-9a-zA-Z-]{2,} literal placeholder literal placeholder type of nanopub created (can be class of assertion or nanopub, or main prediate in assertion) placeholder mentioned above placeholder restr/guided choice placeholder restr/guided choice placeholder guided choice placeholder short ID of placeholder short ID of placeholder type of placeholder: IRI, literal, restricted, etc. possible value nanopublication with possible values URL prefix for API lookup URL prefix label for URL prefix regular expression Nanopublication URI with publication info template short ID of statement type of statement: simple, optional, repeatable Tag used as section heading to group templates the target namespace (URI prefix) in which the nanopublication ID is minted template can be marked as unlisted here short ID of grouped statement name of this template URI/literal/placeholder of the object integer value for statement order URI/placeholder of the predicate short ID of simple statement short ID of statement short ID of statement short ID of simple statement URI/placeholder of the subject advanced statement Agent placeholder assertion template Auto-escape URI placeholder Embedded resource External URI placeholder grouped statement Guided choice placeholder Introduced resource Literal placeholder Local resource Long literal placeholder optional statement repeatable statement Restricted choice placeholder Sequence element placeholder Trusty URI placeholder Unlisted template URI placeholder URI/literal placeholder has the datatype has default provenance has the default value has the language tag has the nanopub label pattern - assigns a pattern used to generate a human-readable label for the whole nanopublication has prefix has prefix label has regular expression has required publication info includes has tag has the target namespace has the target nanopub type has as possible value has possible values from has possible values from API has statement order value is a part of is a - asserts that the thing on the left belongs to the class on the right is called - connects a formal identifier (left) to an informal human-readable name (right) is a subclass of - states that all instances of the class to the left are also instances of the class to the right class - a class represents a set of concrete or abstract things deprecated class is exactly the same as is defined as follows: - connects an identifier (left) to a human-readable definition (right) is related to - connects two classes that are somehow related <p>Such a nanopublication defines a new class. Classes represent sets of concrete or abstract things, and are by convention named with singular nouns (or noun phrases) like 'human', 'cardiovascular disease', or 'approach'.</p><p>If the term you want to define does not refer to a set of things but a single instance, such as the planet Mars or Marie Curie, define them with the template for individuals instead.</p> Defining a new class (TEST) short name, used as URI suffix definition of the class the name of the class URI of a related class or other entity http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= URI of a class that should be treated as fully synonymous the URI of the superclass http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= select class type, if appropriate vocabulary / ontology http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2002/07/owl%23Ontology&searchterm= is declared by has algorithm has key location has public key has the name Introducing a user (TEST) User: ${name} short id of key declaration URL where the private key is stored name of the user public key RSA identifier of the user to be introduced has the applicable legislation has the access rights has the creator has the description has the publisher is a has the label Rights Statement (IRI) URI for legislation Describing dataset according to Health-DCAT-AP-NL ${title} Datasets a contact point contact point email address name of contact point choose creator dataset URI description of dataset keyword string publisher URI theme URI title of the dataset has the email has the name dataset has the contact point has the keyword has the theme has as favorite has the comment Declaring a favorited resource Favorite: ${favoritedThing} Social comment text URL/URI of the favorited thing is part of property is a has its subject values from the class (domain) is read as has its object values from the class (range) is a sub-property of datatype property - a relation between an object (any entity) and a literal (a text or number) deprecated property object property - a relation between two objects (any kinds of entities) is defined as follows: This template helps to define object properties and datatype properties with domains and ranges from diverse sources. Defining a new object/datatype property Terms definition of the property URI of the domain class http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= how the property is read, e.g. 'contains' or 'is used by' ontology or vocabulary short name, used as URI suffix type of property (object or datatype property) URI of the range class http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= super property http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23Property&searchterm= select additional type, if appropriate has the description is a has the label Defining a PCC-based research question a concept description of the concept a context description of the context description of the review question label for the review question a population description of the population short ID used as URI suffix PCC-based review question has has has AIDA sentence - an English sentence that is Atomic, Independent, Declarative, and Absolute is supported by is about - connects a thing (left) to a subject matter that this thing is about (right) is an - connects a thing (left) to a class it belongs to (right) is related to Type your AIDA sentence here (ending with a full stop) http://purl.org/aida/ The sentence [\S ]{5,500}\. <p> Template for expressing a statement about research as an AIDA sentence and linking to its relevant project. Such nanopublications use the concept of an AIDA sentence to express a (scientific) statement in an informal or semi-formal manner, which can be formally linked.</p> <p>AIDA sentences are:<p> <ul> <li><strong>Atomic:</strong> a sentence describing one thought that cannot be further broken down in a practical way</li> <li><strong>Independent:</strong> a sentence that can stand on its own, without external references like "this effect" or "we"</li> <li><strong>Declarative:</strong> a complete sentence ending with a full stop that could in theory be either true or false</li> <li><strong>Absolute:</strong> a sentence describing the core of a claim ignoring the (un)certainty about its truth and ignoring how it was discovered (no "probably" or "evaluation showed that"); typically in present tense</li> </ul> <p>You can find more information about AIDA sentences <a href="https://github.com/tkuhn/aida" target="_blank">here</a>.</p> Expressing a statement about research as an AIDA sentence attributed to Leiden University AIDA sentence: ${aida} Claims URI of related published dataset URI of nanopublication for related research project https://w3id.org/np/l/nanopub-query-1.1/api/RAz6f1v82BCG0SjYMfHUe-m927VTVKdwvsuq1X7j1qcA8/find-things?type=https://schema.org/ResearchProject URI of related scholarly work (e.g. publication) URI of concept or topic the sentence is about http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= has description is a part of is a is called has website is related to research project ends on is funded by starts on has research domain Template for defining a research project at Leiden University. Defining a research project at Leiden University Projects description (if copied, with reference URL) choose domain YYYY, YYYY-MM, or YYYY-MM-DD [0-9][0-9][0-9][0-9](-[01][0-9](-[0-3][0-9])?)? funder URI or name (between " ") if no URI exists URI of larger research project https://w3id.org/np/l/nanopub-query-1.1/api/RAz6f1v82BCG0SjYMfHUe-m927VTVKdwvsuq1X7j1qcA8/find-things?type=https://schema.org/ResearchProject name of research project URIs of related research projects https://w3id.org/np/l/nanopub-query-1.1/api/RAz6f1v82BCG0SjYMfHUe-m927VTVKdwvsuq1X7j1qcA8/find-things?type=https://schema.org/ResearchProject research project URI from funder or number (between " ") if no URI exists This research project YYYY, YYYY-MM, or YYYY-MM-DD [0-9][0-9][0-9][0-9](-[01][0-9](-[0-3][0-9])?)? a link to research project's website has funder-provided identifier can be described as follows: - gives a thing (left) a human-readable description (right) is part of <p>Such nanopublications define a new named individual. Such a named individual represets a single concrete or abstract thing that is in some way relevant. Examples are the planet Mars, Marie Curie, or the Universal Declaration of Human Rights.</p> <p>Such individuals do <strong>not</strong> represent sets of things, like humans, diseases, or ideas. Such concepts representing sets should be defined with the template for classes.</p> Defining a new individual ${name} Terms the URI of the class this individual belongs to http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= description of the individual short name, used as URI suffix - the formal identifier of the individual the name of the individual a URL where more information about this individual can be found vocabulary / ontology http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2002/07/owl%23Ontology&searchterm= is a - asserts that the given thing (left) belongs to the given class (right) is called - connects an identifier to a human-readable name for it is further explained at - connects an identifier to a link with further information about it named individual - a concrete or abstract thing that is given an identifier and a name thing - the class representing everything dataset has license has title supports is a has repository results from Template for describing a dataset related to Leiden University at summary level and linking to its relevant project. Describing a Leiden University dataset at summary level Datasets URI of published dataset URI of license of published dataset URI of nanopublication for research project that produced dataset https://w3id.org/np/l/nanopub-query-1.1/api/RAz6f1v82BCG0SjYMfHUe-m927VTVKdwvsuq1X7j1qcA8/find-things?type=https://schema.org/ResearchProject URI of repository where dataset is published URI of related scholarly work (e.g. publication) title of published dataset Declaring a study to be selected for full screening PRISMA review URI choose study http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Frdf-vocabulary.ddialliance.org%2Fdiscovery%23Study&searchterm= selects for full screening is a has the comment Express thanks ${thanker} thanks ${thanked} plain-text comment choose who receives the thank you choose who gives the thank you this enter the reason URI thanks is giving thanks to is from thanks for is part of has the source scholarly work study is a has my comment has the label collection element Declaring something as a part of a collection Collections the collection this item belongs to http://purl.org/nanopub/api/find_signed_things?type=http://purl.org/dc/dcmitype/Collection&searchterm= comment about this item label of the item source URI, e.g. DOI of paper short suffix of full URI of item choose the type of the item http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= collection has the description is part of is a has the label Creating a new collection Collections URI suffix or full URI of collection description of the collection label for the collection containing resource collection has the description systematic review is a has the label OWL ontology SKOS concept scheme maintained resource has the namespace is maintained by Such nanopublications declares a resource maintanced by a space (e.g. organization, group, community). Defining a maintained resource Spaces the description of the resource the name of the resource namespace URI prefix resource identifier the space maintaining this resource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space type of the resource plans to attend Such a nanopublication declares that the creator plans to attend an event. Declaring to plan to attend an event Plan to attend: ${space} Spaces URI of event has the date has the label plans to attend Such a nanopublication declares that the creator plans to attend an event, including extra info like name and date of the event, to make sure this info is available when needed by queries. Declaring to plan to attend an event (with extra info) Plan to attend: ${space} Spaces (start) date of the event name of the event URI of event fruit body spore is an instance of has the free-text comment is the same as has the location links the organism to the nucleotide sequence refers to the relation refers to has the time stamp - points to the date and time associated with this relation or organism (e.g. date of collection); if occurrence URI is given, this is redundant and does not need to be filled in an association of an organism to a nucleotide sequence assembled nucleotide sequence has the isolation protocol has the life cycle stage has the location coordinates - points to the location coordinates associated with this relation or organism (e.g. place of collection); if occurrence URI is given, this is redundant and does not need to be filled in observed nucleotide sequence has the occurrence - links an organism to a record of a specific occurrence of it has the sample type sequenced nucleotide sequence has the strain ID is used as defined in has the name - links a taxon usage to a taxon name identified by nucleotide sequence <p>Such a nanopublication expresses an association between an organism (normally identified as belonging to a certain taxon concept) and a nucleotide sequence (that can correspond to a full genome sequence, a gene, or a subunit of a gene), for example expressing that Sequence ID (INSDC / Genbank accession number or BOLD Process ID) identifies Organism X as belonging to a Taxon Concept Y.</p> Expressing an association between an organism and a nucleotide sequence (extended) Organism of ${taxonname} - ${relation} - ${nucleotidesequence} Biodiversity this association short explanation related to the above statement lat/long e.g. '+47.37+8.54' or with altitude '+47.37+8.54+410.5' [+-][0-9]+(\.[0-9]+)?[+-][0-9]+(\.[0-9]+)?([+-][0-9]+(\.[0-9]+)?)? DOI of isolation protocol document https://doi\.org/.+ select the life cycle stage of the organism; leave blank if unknown GeoNames location ID (https://sws.geonames.org/.../) https://sws\.geonames\.org/[0-9]+/ INSDC/Genbank # (e.g. https://www.ncbi.nlm.nih.gov/nuccore/...) occurrence URI from GBIF (https://www.gbif.org/occurrence/...) or iDigBio, BOLD, PlutoF, etc. the organism any existing URI identifier of organism (e.g. of digital collection specimen or observation in nature) the relation between the organism and the nucleotide sequence choose the type of sample https://www.ebi.ac.uk/ols/api/select?ontology=uberon&q= Strain ID string (e.g. DSMZ, ATCC) the taxon concept DOI (https://doi.org/...) or treatment ID (https://treatment.plazi.org/id/...) (https://doi\.org/|https://treatment\.plazi\.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: time expressed in XSD DateTime format, e.g. '2023-03-30T22:17:11Z' -?([1-9]\d\d\d+|0\d\d\d)-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])T(([01]\d|2[0-3]):[0-5]\d:[0-5]\d(\.\d+)?|24:00:00(\.0+)?)(Z|[+-](0\d|1[0-4]):[0-5]\d)? has contributor has creator has version is part of was published uses language data usage license has data usage license has publisher has domain is a has description has the label has funder implements FAIR Digital Object (FDO) has format has the format has its metadata in is a concrete materialization of access URL Declaring a Dataset (adjusted version) Datasets class URI contact email ORCID of contributor ORCID of creator publication date description domain full URI (e.g. handle.net) or short suffix FAIR Implementation Profile http://purl.org/nanopub/api/find_signed_things?type=https%3A%2F%2Fw3id.org%2Ffair%2Ffip%2Fterms%2FFAIR-Implementation-Profile&searchterm= MIME type, such as "text/csv" or "application/trig" ROR of funder institution label or name for this FDO language http://purl.org/nanopub/api/find_signed_things?type=https%3A%2F%2Fw3id.org%2Ffair%2Ffip%2Fterms%2FData-usage-license&searchterm= materialization URI project https://w3id.org/np/l/nanopub-query-1.1/api/RAFTZ8GqPOOJQOBcEo5IB8lg5vZCFiIyr_RVLKZDQBHMk/get-projects?searchterm= the ROR of the publishing entity version html has access URL has contact point has as team member Assigning a team member to a Space ${space} has team member ${teamMember} Space choose the Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space choose the team member is a part of is a - asserts that the thing on the left belongs to the class on the right is called - connects a formal identifier (left) to an informal human-readable name (right) is a subclass of - states that all instances of the class to the left are also instances of the class to the right class - a class represents a set of concrete or abstract things deprecated class is exactly the same as is defined as follows: - connects an identifier (left) to a human-readable definition (right) is related to - connects two classes that are somehow related <p>Such a nanopublication defines a new class. Classes represent sets of concrete or abstract things, and are by convention named with singular nouns (or noun phrases) like 'human', 'cardiovascular disease', or 'approach'.</p> <p>If the term you want to define does not refer to a set of things but a single instance, such as the planet Mars or Marie Curie, define them with the template for individuals instead.</p> Defining a new class Terms short name, used as URI suffix definition of the class the name of the class URI of a related class or other entity http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= URI of a class that should be treated as fully synonymous the URI of the superclass http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= select class type, if appropriate vocabulary / ontology http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2002/07/owl%23Ontology&searchterm= is a has the comment Awarding a Science Live credit ${awardedAgent} is awarded ${points} Science Live credits Science Live choose awarded agent choose awarding agent any free-text comment This credit number of points (integer) [0-9]+ URI/URL that represents the reason for the credit Science Live credit has the credit points is awarded by is awarded for is awarded to is a version of is an has the label OWL ontology ontology version has the content index Defining a version of an OWL ontology Ontologies choose content index label of the ontology URI of the ontology across its versions ontology version URI is part of is a has the label Declaring a systematic database search database URL date when search was conducted label of the search exact search string as executed (copy-paste from database interface) number of records retrieved from this database this search choose the search strategy http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/sciencelive/o/terms/SystematicReviewSearchStrategy&searchterm= URI of systematic review http://purl.org/nanopub/api/find_signed_things?type=http://purl.org/spar/fabio/SystematicReview&searchterm= systematic database search follows the search strategy has the database URL has the retrieved record count has the search query has the search date was completed on used the extraction method has the quality assessment includes the study results is part of is a has the label This template documents study characteristics, eligibility criteria, and risk of bias assessment for included studies in systematic reviews following PRISMA 2020 guidelines. It captures eligibility criteria specification (Item 5), risk of bias assessment methods (Item 11), study characteristics (Item 17), and individual study results (Items 18-19), providing structured documentation for transparent study evaluation and data extraction. Declaring a PRISMA study assessment dataset PRISMA Risk of bias assessment tools and methods used (PRISMA Item 11) Date of assessment completion URI where study assessment data is deposited (Zenodo, Figshare, etc.) Detailed inclusion and exclusion criteria (PRISMA Item 5) Data extraction methodology and reviewer processes Label of study assessment dataset Assessment limitations, modifications, and methodological notes Risk of bias assessment results for included studies (PRISMA Item 18) this study assessment dataset Summary of study characteristics across included studies (PRISMA Item 17) Individual study results and effect estimates (PRISMA Item 19) Choose systematic review http://purl.org/nanopub/api/find_signed_things?type=http://purl.org/spar/fabio/SystematicReview&searchterm= study assessment dataset follows the eligibility criteria has the dataset file location has the limitations has the study characteristics used the assessment technique has the source study is a has the label Declaring a study to be included in a systematic review PRISMA source URI, e.g. DOI of paper this study label for the study choose the systematic review http://purl.org/nanopub/api/find_signed_things?type=http://purl.org/spar/fabio/SystematicReview&searchterm= includes was completed on is a part of is a has the label This template documents search execution and initial study selection for systematic reviews following PRISMA 2020 guidelines. It captures verbatim search strategies (Item 7), information source details (Item 6), selection methodology (Item 8), and study flow documentation (Items 16a-16b), providing structured documentation for transparent and reproducible search execution and screening processes. Declaring a PRISMA search execution dataset PRISMA Date of search execution completion URL where complete search results are deposited (Zenodo, Figshare, etc.) select DB search http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/sciencelive/o/terms/SystematicDatabaseSearch&searchterm= Deduplication software and methodology (e.g., EndNote 20: automatic + manual verification) Summary of exclusion reasons with study counts by category has the exclusion breakdown Final number of studies included in review Number of records proceeding to full-text screening Label of this search execution dataset Search limitations, protocol modifications, and additional methodological notes Total records screened Title/abstract and full-text screening methodology this search execution dataset URI of the systematic review search execution dataset has the dataset file location has the final included study count has full-text screened record count has the limitations has the screened record count included the database search used the deduplication methodology Number of reviewers, independence status, disagreement resolution methods used the review methodology used the screening methodology is part of is a has the label is the same as alternative URI Defining a chemical Chemicals URI of chemical label for the chemical ontology URI chemical is part of is a has the label has the end date has the start date This template allows researchers to document their systematic review search strategy following PRISMA 2020 guidelines. It captures search terms, databases, date ranges, and expected results using Dublin Core Terms and RDFS vocabularies. Corresponds to PRISMA 2020 Item 7 (Search) and supports transparent, reproducible literature searches. Defining a systematic review search strategy PRISMA Database URI (PubMed, scopus, etc.) End date for literature search label for the search strategy choose language Metholodogy notes URI of the concept used for the literature search This search strategy Start date for literature search URI of systematic review a time period systematic review search strategy covers the language covers includes as methodology notes searches the database uses the search terms Linking a research question to a systematic review ${systematicReview} targets ${researchQuestion} choose the research question http://purl.org/nanopub/api/find_signed_things?type=http://data.cochrane.org/ontologies/pico/PICO&searchterm= URI of the systematic review targets the research question PICO-based research question has has has has has the description is a has the label Defining a PICO-based research question a comparator group description of the comparator group description of the research question an intervention group description of the intervention group label for the research question an outcome group description of the outcome group short ID used as URI suffix a population description of the population choose the type of research question causation research question - (Does factor X cause outcome Y?) descriptive research question - (What are the characteristics of X?) effectiveness research question - (Does approach X work better than Y?) experience research question - (How do people experience phenomenon X?) prediction research question - (What outcomes can we expect from X?) is a part of nanopublication index is an index that appends is an index that includes as element is an index that includes as sub-index is a has the label nanopublication URI of the index to be appended Defining a nanopublication index as part of a resource ${label} Meta nanopublication URI of the element to be included plain-text label for the index resource of which this index is a part of nanopublication URI of the index to be included as sub-index has the speaker Such a nanopublication declares that somebody is a speaker at a given event. Declaring a speaker of an event ${space} has speaker ${speaker} Spaces choose the event https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Event choose the speaker has the description is a has the label has the alternative ID Alliance - (with focus on bringing units together) Community - (with focus on exchange) Division - (with focus on structuring into sub-units) Group - (with focus on getting work done) Organization - (with focus on formal vessel) Outlet - (with focus on outreach) Program - (with focus on coordination) Space has as admin an admin of the Space alternative URI Such nanopublications defines an open-ended Space, i.e. a group, program, outlet, or community. Defining an open-ended Space Spaces the description of the Space the name of the Space Space identifier https://w3id.org/spaces/ https://w3id.org/spaces/ type of the Space is a - asserts that the thing on the left belongs to the class on the right concept is defined as follows: - connects an identifier (left) to a human-readable definition (right) URI of an equivalent concept is the same as is in scheme has the preferred label is related to - connects two classes that are somehow related Such a nanopublication defines a concept according to the SKOS standard. Defining a new SKOS concept ${label} Terms has the broader concept the URI of a broader concept http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2004/02/skos/core%23Concept&searchterm= short suffix or full URI definition of the concept the label of the concept URI of a related concept http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2004/02/skos/core%23Concept&searchterm= URI of equivalent concept scheme URI http://purl.org/nanopub/api/find_signed_things?type=http://www.w3.org/2004/02/skos/core%23ConceptScheme&searchterm= has the text has the link / further info at is about Publish a plain-text message for a resource ${message} Spaces link your message is about or with additional info your plain-text message choose the resource (e.g. Space) https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/MaintainedResource https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space has the title is a Space query view has the query is for the Space Declare a view that should be shown for a given Space, based on a query. Declare a view for a Space (deprecated) ${space} has view for query: ${query} Spaces choose the query https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/grlc/grlc-query choose the Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space title for the view this view has the title has the name is a has the label space member role has the inverse property has the regular property has the role assignment template Declaring a space member role Spaces inverse property URI (space-to-agent) the label for the role short name, e.g. "member" regular property URI (agent-to-space) short ID suffix choose template https://w3id.org/np/l/nanopub-query-1.1/api/RAvSIHegG4Mb-Q64cWQoghLffvN_2NdDdqxNnOhJSZQfs/search-templates short header title, e.g. "Members" is a - connects to class/type Anchor statement for versioning <p>This template allows you to create Rosetta Statements following the metamodel described in "Rosetta Statements: Simplifying FAIR Knowledge Graph Construction with a User-Centered Approach".</p> <p><strong>Rosetta Statements</strong> model the structure of simple English natural language statements rather than attempting to represent a mind-independent reality. They prioritize:</p> <ul> <li><strong>Cognitive Interoperability:</strong> Easy to understand for domain experts</li> <li><strong>Findability:</strong> Supports search without requiring SPARQL knowledge</li> <li><strong>Semantic Interoperability:</strong> Standardized patterns for each statement type</li> <li><strong>User-Centered Design:</strong> Reflects natural language structure</li> </ul> <p><strong>Key Features:</strong></p> <ul> <li><strong>N-ary Support:</strong> Handle statements with multiple objects (not just binary relations)</li> <li><strong>Dynamic Labels:</strong> Display as natural language sentences in user interfaces</li> <li><strong>Versioning Support:</strong> Track changes and editing history</li> <li><strong>Metadata Rich:</strong> Include confidence levels, negation, context, and provenance</li> <li><strong>Wikidata Integration:</strong> Use Wikidata terms for immediate usability</li> </ul> <p><strong>Statement Structure:</strong></p> <ul> <li><strong>Subject:</strong> The main entity the statement is about</li> <li><strong>Predicate:</strong> Captured by the statement type/class</li> <li><strong>Objects:</strong> Up to 4 object positions (resources or literals)</li> <li><strong>Constraints:</strong> Type restrictions for each position</li> </ul> <p><strong>Example:</strong> "This apple has a weight of 241.68 grams" becomes a 'has-measurement' statement type with subject=apple, object1=weight (quality), object2=241.68 (value), object3=gram (unit).</p> <p>This approach significantly lowers the barrier for domain experts to create FAIR knowledge graphs without requiring expertise in semantics, RDF, or ontology engineering.</p> Creating a Rosetta Statement following the natural language statement metamodel Rosetta Statement: ${dynamicLabelTemplate} Rosetta Statements Confidence level (0.0-1.0) ^(0(\.\d+)?|1(\.0+)?)$ Context (e.g., DOI of scholarly publication) Dynamic label template (e.g., 'SUBJECT has QUALITY of VALUE UNIT') .{10,200} "true" or "false" true|false First object (required or optional) Second object (optional) Third object (optional) Fourth object (optional) Source reference supporting this statement The Rosetta Statement instance Type of Rosetta Statement (predicate-based classification) https://w3id.org/np/l/nanopub-query-1.1/api/find-things?type=https://w3id.org/rosetta/RosettaStatementClass Human-readable label for subject .{1,100} Subject resource (Wikidata URI or ontology term) Version identifier .{1,50} Rosetta Statement - a natural language statement modeled semantically has confidence level - degree of certainty (0-1) has context - scholarly publication or broader context has dynamic label - template for natural language display has source reference - supporting evidence has statement type - connects to Rosetta Statement class has version - links to statement version is negation - whether this statement is negated has subject - connects statement to its subject resource has the text has the link / further info at is about Publish a plain-text message for this Space ${message} Spaces link your message is about or with additional info your plain-text message choose the Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space has the object has the predicate has the subject is a - connects a thing (left) to the class (right) it belongs to web annotation - a web annotation of a document or other thing has as body has as target - connects an annotation to its target highlighting has the purpose of implied relation this annotation Such a nanopublication represents an annotation of a text according to the <a href="https://www.w3.org/ns/oa">Web Annotation Vocabulary</a> in order to highlight an implied relation. Highlighting an implied relation from a resource ${target} implies: ${relationSubj} ${relationPred} ${relationObj} Annotations a relation the object URI or literal the predicate URI the subject URI the URI/URL of the resource that is being annotated has the object has the predicate has the subject is a - connects a thing (left) to the class (right) it belongs to web annotation - a web annotation of a document or other thing text quote selector - a text quote selector describes a range of text by copying it, and including some of the text immediately before (a prefix) and after (a suffix) refers to the text - refers to a copy of the text which is being selected has as body - connects an annotation to its body element has as selector - connects an annotation to its selector has the source - links to the source that is being annotated has as target - connects an annotation to its target highlighting has the purpose of refers to the text right after - refers to a snippet of content that occurs immediately before the content which is being selected refers to the text right before - refers to a snippet of content that occurs immediately after the content which is being selected implied relation this annotation Such a nanopublication represents an annotation of a text according to the <a href="https://www.w3.org/ns/oa">Web Annotation Vocabulary</a> in order to highlight an implied relation. Highlighting an implied relation from a text ${source} implies: ${relationSubj} ${relationPred} ${relationObj} Annotations the copy of the text being selected a snippet of text immediately before the selected text a snippet of text immediately after the selected text a relation the object URI or literal the predicate URI the subject URI a selector the URI/URL of the source that is being annotated a target has the project lead Such a nanopublication declares that somebody is the project lead of a given project Declaring the lead of a project ${space} has lead ${lead} Spaces choose the project lead choose the project https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Project retracts Retracting a nanopublication that I published Retraction of ${nanopubToBeRetracted} Meta optional comment for the retraction The URI of the nanopublication to be retracted has the comment is a member of Such a nanopublication declares that somebody is a member of a given Space. Declaring a membership in a Space ${member} is member of ${space} Spaces choose the member choose the space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space conforms to the profile is a has the label has as part FAIR Digital Object Such a nanopublication declares an FDO that is an aggregation of other given FDOs. Creating an aggregate FDO FDO short ID used as URI suffix short, human-readable label for the FDO select FDO as part http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/fdof/ontology%23FAIRDigitalObject&searchterm= select FDO (or other thing) as source http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/fdof/ontology%23FAIRDigitalObject&searchterm= Aggregate FDO Profile was derived from participated in - Connects a person (left) an event (right) he/she is a participant in. Declaring the participation in Lecture 9 of Knowledge Organization Participation in Lecture 9 of Knowledge Organization Events Lecture 9 of Knowledge Organization has the text has the link / further info at is about Publishing a plain-text message related to KO Lecture 9 ${message} Comments link your message is about or with additional info your plain-text message Lecture 9 of Knowledge Organization has the role Assigning a role to a Space ${space} has role: ${role} Spaces select the role https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/SpaceMemberRole select the space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space has the text has the link / further info at is about Publishing a plain-text message related to Nano Session #24 ${message} Comments link your message is about or with additional info your plain-text message Nano Session #24 has the tag has the pinned template Declare a pinned template for a Space ${space} has pinned template: ${template} Spaces choose the Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space the tag, used as title of common template group choose the template https://w3id.org/np/l/nanopub-query-1.1/api/RARD6qOGIXUvfxmf5CQNEDxPqlTVCqeLdWeSg5h8tUcEA/search-templates participated in - Connects a person (left) an event (right) he/she is a participant in. Declaring the participation in the Nano Session #24 Participation in the Nano Session #24 Events the Nano Session #24 has the tag has the pinned query Declare a pinned query for a Space ${space} has pinned query: ${query} Spaces choose the query https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/grlc/grlc-query choose the Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space the tag, used as title of common query group has the description has the end date has the start date is a has the label has the alternative ID Campaign - (with focus on outreach) Event - (with focus on exchange) Initiative - (with focus on coordination) Project - (with focus on getting work done) Space has as admin an admin of the Space alternative URI Such nanopublications defines a time-limited Space, i.e. a project, initiative, campaign, or event. Defining a time-limited Space Spaces the description of the Space end date (and optionally time) the name of the Space Space identifier https://w3id.org/spaces/ https://w3id.org/spaces/ start date (and optionally time) type of the Space has the description has the end date has the start date is a has the label Campaign - (with focus on outreach) Event - (with focus on exchange) Initiative - (with focus on coordination) Project - (with focus on getting work done) Space has as admin an admin of the Space Such nanopublications defines a time-limited Space, i.e. a project, initiative, campaign, or event. Defining a time-limited Space with existing URI Spaces the description of the Space end date (and optionally time) the name of the Space Space identifier start date (and optionally time) type of the Space has admin an admin of the Space Declaring an admin of a Space ${space} has admin ${admin} Spaces choose a Space https://w3id.org/np/l/nanopub-query-1.1/api/RAyMrQ89RECTi9gZK5q7gjL1wKTiP8StkLy0NIkkCiyew/find-things?type=https://w3id.org/kpxl/gen/terms/Space&searchterm= has the date has the description is about is an has the label has more info at Reporting an HTTP resolution issue Issues date (and time) of issue free-text description This issue the resource this issue is about label of the issue observer of the issue a pointer to a resource with more info HTTP Resolution Error issue occurrence has the encountered error was encountered by has the description is a has the label Nanodash project has as owner has as pinned query has as pinned template Such nanopublications define project pages that are shown on Nanodash. Defining a Nanodash Project Projects the default provenance template the description of the project the name of the project an owner of the project project identifier https://w3id.org/kpxl/custom/project/terms/ project: a query URI to show the results for identifier for template (with tag) tag for the template (used to group them) has the default provenance has the tag - This tag is used to group templates on the project page. has member Declaring a member of a project ${project} has member ${member} Projects a member of the project project URI has organizer Declaring an organizer for an event ${event} has organizer ${organizer} Events URI of event specify organizer participated in - Connects a person (left) an event (right) he/she participated in. WikiCite 2025 With this nanopublication, the creator declares to have participated in WikiCite 2025. Declaring the participation in WikiCite 2025 Participation in WikiCite 2025 Events conforms to (has FDO profile) conforms to the profile is a has the label node shape has the object value has max count has min count has the path has the property has the target class FDO Profile has the shape FAIR Digital Object This template defines a core FDO Profile based on a SHACL shape. Defining a core FDO Profile FDO select property shape from above select property shape from above this node shape object value URI path predicate URI http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/fdoc/o/terms/FdoAttribute&searchterm= the profile of this profile human-readable label of the profile short property shape ID 1 1 select property shape from above conforms to (has FDO profile) conforms to is a has the label node shape has the object value has max count has min count has the path has the property has the target class FDO Profile has the shape FAIR Digital Object This template defines an FDO Profile based on a SHACL shape. Defining an FDO Profile FDO select property shape from above select property shape from above this node shape object value URI path predicate URI http://purl.org/nanopub/api/find_signed_things?type=https://w3id.org/fdoc/o/terms/FdoAttribute&searchterm= human-readable label of the profile short property shape ID 1 1 select property shape from above the basic profile for FDO Profiles simple statement has as object has as predicate has as subject is a is labeled as Defining a publication info template Pubinfo template: ${tlabel} Templates default value of the placeholder short ID of grouped statement label of thing URI/placeholder mentioned above datatype of the literal language tag of the literal [0-9a-zA-Z-]{2,} literal placeholder literal placeholder placeholder mentioned above placeholder restr/guided choice placeholder restr/guided choice placeholder guided choice placeholder short ID of placeholder short ID of placeholder type of placeholder: IRI, literal, restricted, etc. possible value nanopublication with possible values URL prefix for API lookup URL prefix label for URL prefix regular expression short ID of statement type of statement: simple, optional, repeatable template can be marked as unlisted here short ID of grouped statement name of this template URI/literal/placeholder of the object integer value for statement order URI/placeholder of the predicate short ID of simple statement short ID of statement short ID of statement short ID of simple statement URI/placeholder of the subject Agent placeholder External URI placeholder grouped statement Guided choice placeholder Introduced resource Literal placeholder Local resource Long literal placeholder optional statement publication info template repeatable statement Restricted choice placeholder Sequence element placeholder Trusty URI placeholder Unlisted template URI placeholder URI/literal placeholder has the datatype has the default value has the language tag has prefix has prefix label has regular expression includes has as possible value has possible values from has possible values from API has statement order value simple statement has as object has as predicate has as subject is a is labeled as Defining a provenance template ${tlabel} Templates default value of the placeholder short ID of grouped statement label of thing URI/placeholder mentioned above datatype of the literal language tag of the literal [0-9a-zA-Z-]{2,} literal placeholder literal placeholder placeholder mentioned above short ID of placeholder restr/guided choice placeholder restr/guided choice placeholder guided choice placeholder short ID of placeholder short ID of placeholder type of placeholder: IRI, literal, restricted, etc. possible value nanopublication with possible values URL prefix for API lookup URL prefix label for URL prefix regular expression short ID of statement type of statement: simple, optional, repeatable template can be marked as unlisted here short ID of grouped statement name of this template URI/literal/placeholder of the object integer value for statement order URI/placeholder of the predicate short ID of simple statement short ID of statement short ID of statement short ID of simple statement URI/placeholder of the subject Agent placeholder External URI placeholder grouped statement Guided choice placeholder Introduced resource Literal placeholder Local resource Long literal placeholder optional statement provenance template repeatable statement Restricted choice placeholder Sequence element placeholder Trusty URI placeholder Unlisted template URI placeholder URI/literal placeholder has the datatype has the default value has the language tag has prefix has prefix label has regular expression includes has as possible value has possible values from has statement order value has as part Such a nanopublication expresses a part-of relation. Expressing a part-of relation ${thing} has part ${part} General the URI of the part the URI of the thing that has the part Expressing that you know somebody Knowing ${person} Social the person you know know is created by has the part has the preferred namespace prefix has the namespace URI is a - asserts that the thing on the left belongs to the class on the right is called - connects a formal identifier (left) to an informal human-readable name (right) ontology - a set of terms like classes and relations Such a nanopublication defines a new ontology, to which terms like classes and properties can later be added. Defining a new ontology Ontology: ${name} Terms creator/owner of the ontology description of the ontology the name of the ontology short namespace prefix, e.g. "foaf" namespace URI (prefix of all contained IDs) short URI suffix or full URI term or index of term nanopubs has the text has the link / further info at ESWC 2025 is about Publishing a plain-text message related to ESWC 2025 ${message} Comments link your message is about or with additional info your plain-text message has the description has the usage license is a has the name has the endpoint grlc query has the query Defining a grlc query Queries description of the query endpoint URL license URL short ID for query, used as URI suffix SPARQL query template title of the query participated in - Connects a person (left) an event (right) he/she participated in. the nanopub tutorial at ESWC2025 The creator of such a nanopublication declares to have participated in the nanopublication tutorial at ESWC2025. Declaring the participation in the nanopub tutorial at ESWC2025 Participation in ESWC2025 nanopub tutorial Events has the abstract has the submission date includes - links a thing to a part it includes has the title has in-use paper - A scholarly work that describes applied and validated solutions such as software tools, systems or architectures that benefit from the use of the technology of a particular scholarly domain. journal editorial - An editorial published in an issue of a journal. methods paper - A scholarly work detailing a method, procedure or experimental protocol employed in a particular scholarly domain. position paper - A scholarly work that reports a particular intellectual position or viewpoint regarding a particular scholarly topic. preprint research paper - A scholarly work that reports original research contributions addressing theoretical, analytical or experimental aspects of a particular scholarly domain. resource paper - A scholarly work that describes resources developed to provide experimental materials or facilities, support a research hypothesis, to provide answers to a research question, or that have contributed to the generation of novel scientific work. review paper - A scholarly work that surveys the state of the art of topics central to a particular subject or relating to a specific domain (e.g. the scope of a certain journal or conference). scholarly work - A general term that includes all other listed types has the affiliation has the email address is a has the name is a revision of the abstract of the article Select organization from above Select author from above The type of the article Such a nanopublication contains the main high-level metadata about a scholarly preprint, including title, authors, and links to other nanopublications. Describing core preprint metadata Preprint: ${title} Journals ORCID ID of the author (starting with https://orcid.org/...) https://orcid\.org/[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{3}[0-9X] email address of author [A-Za-z0-9._+\-\']+@[A-Za-z0-9.\-]+\.[A-Za-z]{2,} this author list full name of author Select author to specify an email address for date, e.g. "2023-07-21", "2023-07", or "2023" (1[0-9][0-9][0-9]|20[0-2][0-9])(-(1[0-2]|0[1-9])(-(3[0-1]|[1-2][0-9]|0[1-9]))?)? has at position ${number} http://www.w3.org/1999/02/22-rdf-syntax-ns#_ includes as element number [1-9][0-9]* ROR identifier (https://ror.org/...) or short local URI suffix (e.g. "stanford") (https://ror\.org/[0-9a-z]+|[a-zA-Z0-9_\-]+) The name of the organization a part belonging to this article, e.g. a nanopublication URL/ID of the preprint URL/ID of previous revision The title of the article Announcing a paper that I have read Have read: ${paper} Social comment text DOI for the paper starting with '10.' https://doi.org/ the paper with DOI 10.(\d)+/(\S)+ 1 2 have read has my comment has the label This is a minimal template. Minimal template write label text here is a has the label has the FDO profile FAIR Digital Object has the materialization This template allows for defining an FDO according to an FDO Profile for testing. Defining a test FDO FDO short ID used as URI suffix human-readable label of the FDO URL where file can be accessed Simple Test FDO Profile has the description has the usage license is a has the name has the endpoint grlc query has the query Defining a grlc query (testing) Queries description of the query endpoint URL license URL short ID for query, used as URI suffix SPARQL query template title of the query location is a has the label has the bounding box This template is for nanopublications to introduce a spatial location by bounding box. Declaring a spatial location Location bounding box definition in WKT format human-readable name of the location short ID used as URI suffix person has the given name is a This template describes a person based on schema.org vocabulary. Describe a person with schema.org given name of the person short ID suffix for person is a node shape has max count has min count has the path has the property has the target class This template defines a simple SHACL node shape. Defining a simple SHACL node shape Validation maximum property count select property shape mimum property count select property shape short ID suffix of node shape path predicate URI select property shape short ID suffix for property shape target class URI can be described as follows: - gives a thing (left) a human-readable description (right) Introducing a Digital Object Type (new ID) FAIR description of the Digital Object Type or Methodology the source of the description above the identifier of the related resource choose mapping relation the name of the Digital Object Type or a Methodology a URL where more information can be found short name, used as URI suffix - the formal identifier of the Digital Object Type or a Methodology https://w3id.org/gff/rao/terms/ https://w3id.org/gff/rao/terms/ is a - asserts that the given thing (left) belongs to the given class (right) has the name - connects an identifier to a human-readable name for it is further explained at - connects an identifier to a link with further information about it has parent resource can in some situations be considered the same as is (almost) exactly the same as is related to - links this identifier to other related existing identifiers is related to Digital Object Type has the description source dataset has the description is about is a has the label has the URL was derived from gene expression This templates introduces and describes a piece of raw data from gene expressions study. Declaration of a gene expression raw data Science full URL or short URL suffix description of the study label of the study the study this data originates from https://w3id.org/np/l/nanopub-query-1.1/api/RAz6f1v82BCG0SjYMfHUe-m927VTVKdwvsuq1X7j1qcA8/find-things?type=http://semanticscience.org/resource/SIO_001066&query= website URL has the description study is a has the label has the URL has the domain This templates introduces and describes a scientific study with some basic metadata. Declaration of a study Science description of the study domain of the study https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= label of the study full URL or short URL suffix website URL is a has the label FAIR Digital Object (FDO) has the format has the type of has its metadata in is a concrete materialization of Article Dataset Ontology Photograph Declaring a general FAIR Digital Object (experimental) FAIR Digital Object: ${label} FDO object URI/literal predicate URI full URI (e.g. handle.net) or short suffix MIME type, such as "text/csv" or "application/trig" https://iana.org/assignments/media-types/ the MIME type label or name for this FDO materialization URI FDO Type URI https://w3id.org/np/l/nanopub-query-1.1/repo/type/f90cda43071e5afd9dbbd07452380c057c26010dd4e1105cdc108f35fc7280c0?query=prefix%20rdfs%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0Aprefix%20np%3A%20%3Chttp%3A%2F%2Fwww.nanopub.org%2Fnschema%23%3E%0Aprefix%20npa%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fadmin%2F%3E%0Aprefix%20npx%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fx%2F%3E%0A%0Aselect%20%3Fthing%20%3Flabel%20where%20%7B%0A%20%20graph%20npa%3Agraph%20%7B%0A%20%20%20%20%3Fnp%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%0A%20%20%20%20filter%20not%20exists%20%7B%20%3Fnpx%20npx%3Ainvalidates%20%3Fnp%20%3B%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%20%7D%0A%20%20%20%20%3Fnp%20npx%3Aintroduces%20%3Fthing%20.%0A%20%20%20%20%3Fnp%20np%3AhasAssertion%20%3Fa%20.%0A%20%20%7D%0A%20%20graph%20%3Fa%20%7B%0A%20%20%20%20%3Fthing%20rdfs%3Alabel%20%3Flabel%20.%0A%20%20%20%20filter%28contains%28lcase%28str%28%3Flabel%29%29%2C%20lcase%28%22 %22%29%29%29%0A%20%20%7D%0A%7D%0Alimit%2010 nanopub service is a has label grlc-based Nanopub API Nanopub LDF Server grlc-based Signed Nanopub API Signed Nanopub LDF Server Signed Nanopub SPARQL API Nanopub Monitor Nanopub Server Announcing a nanopub service Nanopub service: ${label} Infrastructure the URI of the nanopub service class short label or comment for the service the URL of the nanopub service Nanodash version 2.x Nanopub Query 1.0 Nanopub Query 1.1 Nanopub Registry 1.0 is declared by has algorithm has key location has public key Introducing a user User: ${name} Meta short id of key declaration URL where the private key is stored name of the user public key RSA identifier of the user to be introduced has the name claims discusses hypothesizes investigates refutes reviews Such a nanopublication declares a relation like claiming or refuting between a work or person and a statement. Asserting a relation between a work/person and a statement Claims AIDA URI (starting with "http://purl.org/aida/") http://purl\.org/aida/.+\. URI of work (e.g. DOI) or person (e.g. ORCID) AIDA sentence - an English sentence that is Atomic, Independent, Declarative, and Absolute is about - connects a thing (left) to a subject matter that this thing is about (right) is an - connects a thing (left) to a class it belongs to (right) Type your AIDA sentence here (ending with a full stop) http://purl.org/aida/ The sentence [\S ]{5,500}\. <p>Such nanopublications use the concept of an AIDA sentence to express a (scientific) statement in an informal or semi-formal manner, which can be formally linked.</p> <p>AIDA sentences are:<p> <ul> <li><strong>Atomic:</strong> a sentence describing one thought that cannot be further broken down in a practical way</li> <li><strong>Independent:</strong> a sentence that can stand on its own, without external references like "this effect" or "we"</li> <li><strong>Declarative:</strong> a complete sentence ending with a full stop that could in theory be either true or false</li> <li><strong>Absolute:</strong> a sentence describing the core of a claim ignoring the (un)certainty about its truth and ignoring how it was discovered (no "probably" or "evaluation showed that"); typically in present tense</li> </ul> <p>You can find more information about AIDA sentences <a href="https://github.com/tkuhn/aida" target="_blank">here</a>.</p> Expressing a statement as an AIDA sentence AIDA sentence: ${aida} Claims identifier of concept or topic the sentence is about http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= has a conflicting meaning with has a consistent meaning with has a different meaning than has a more general meaning than has a more specific meaning than has a non-opposite meaning of has the opposite meaning of has a related meaning as has the same meaning as has a unrelated meaning as is a improved version of Asserting a relation between two statements Claims First AIDA URI (starting with "http://purl.org/aida/") http://purl\.org/aida/.+\. Second AIDA URI (starting with "http://purl.org/aida/") http://purl\.org/aida/.+\. is a - asserts that the thing on the left belongs to the class on the right Such a nanopublication assigns an individual to a class. Assigning an individual to a class ${individual} is a ${class} General the URI of the class http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= the URI of the individual http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23NamedIndividual&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= is a has the label FAIR Digital Object (FDO) has the format has the type of has its metadata in is a concrete materialization of Article Dataset Ontology Photograph Declaring a FAIR Digital Object (extended) FAIR Digital Object: ${label} FDO object URI/literal predicate URI short ID suffix for this FDO MIME type, such as "text/csv" or "application/trig" https://iana.org/assignments/media-types/ the MIME type label or name for this FDO URL of concrete file FDO Type URI https://w3id.org/np/l/nanopub-query-1.1/repo/type/f90cda43071e5afd9dbbd07452380c057c26010dd4e1105cdc108f35fc7280c0?query=prefix%20rdfs%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0Aprefix%20np%3A%20%3Chttp%3A%2F%2Fwww.nanopub.org%2Fnschema%23%3E%0Aprefix%20npa%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fadmin%2F%3E%0Aprefix%20npx%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fx%2F%3E%0A%0Aselect%20%3Fthing%20%3Flabel%20where%20%7B%0A%20%20graph%20npa%3Agraph%20%7B%0A%20%20%20%20%3Fnp%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%0A%20%20%20%20filter%20not%20exists%20%7B%20%3Fnpx%20npx%3Ainvalidates%20%3Fnp%20%3B%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%20%7D%0A%20%20%20%20%3Fnp%20npx%3Aintroduces%20%3Fthing%20.%0A%20%20%20%20%3Fnp%20np%3AhasAssertion%20%3Fa%20.%0A%20%20%7D%0A%20%20graph%20%3Fa%20%7B%0A%20%20%20%20%3Fthing%20rdfs%3Alabel%20%3Flabel%20.%0A%20%20%20%20filter%28contains%28lcase%28str%28%3Flabel%29%29%2C%20lcase%28%22 %22%29%29%29%0A%20%20%7D%0A%7D%0Alimit%2010 has as part is a has the label FAIR Digital Object (FDO) has the type of has its metadata in Article Dataset Ontology Photograph Declaring a FAIR Digital Object FAIR Digital Object: ${label} FDO identifier of contained FDO http://purl.org/nanopub/api/find_signed_things?type=https%3A%2F%2Fw3id.org%2Ffdof%2Fontology%23FAIRDigitalObject&searchterm= short ID suffix for this FDO label or name for this FDO FDO Type URI https://w3id.org/np/l/nanopub-query-1.1/repo/type/f90cda43071e5afd9dbbd07452380c057c26010dd4e1105cdc108f35fc7280c0?query=prefix%20rdfs%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0Aprefix%20np%3A%20%3Chttp%3A%2F%2Fwww.nanopub.org%2Fnschema%23%3E%0Aprefix%20npa%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fadmin%2F%3E%0Aprefix%20npx%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fx%2F%3E%0A%0Aselect%20%3Fthing%20%3Flabel%20where%20%7B%0A%20%20graph%20npa%3Agraph%20%7B%0A%20%20%20%20%3Fnp%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%0A%20%20%20%20filter%20not%20exists%20%7B%20%3Fnpx%20npx%3Ainvalidates%20%3Fnp%20%3B%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%20%7D%0A%20%20%20%20%3Fnp%20npx%3Aintroduces%20%3Fthing%20.%0A%20%20%20%20%3Fnp%20np%3AhasAssertion%20%3Fa%20.%0A%20%20%7D%0A%20%20graph%20%3Fa%20%7B%0A%20%20%20%20%3Fthing%20rdfs%3Alabel%20%3Flabel%20.%0A%20%20%20%20filter%28contains%28lcase%28str%28%3Flabel%29%29%2C%20lcase%28%22 %22%29%29%29%0A%20%20%7D%0A%7D%0Alimit%2010 is a has the label FAIR Digital Object (FDO) has the format has the type of has its metadata in is a concrete materialization of Article Dataset Ontology Photograph Declaring a FAIR Digital Object FAIR Digital Object: ${label} FDO short ID suffix for this FDO MIME type, such as "text/csv" or "application/trig" https://iana.org/assignments/media-types/ the MIME type label or name for this FDO URL of concrete file FDO Type URI https://w3id.org/np/l/nanopub-query-1.1/repo/type/f90cda43071e5afd9dbbd07452380c057c26010dd4e1105cdc108f35fc7280c0?query=prefix%20rdfs%3A%20%3Chttp%3A%2F%2Fwww.w3.org%2F2000%2F01%2Frdf-schema%23%3E%0Aprefix%20np%3A%20%3Chttp%3A%2F%2Fwww.nanopub.org%2Fnschema%23%3E%0Aprefix%20npa%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fadmin%2F%3E%0Aprefix%20npx%3A%20%3Chttp%3A%2F%2Fpurl.org%2Fnanopub%2Fx%2F%3E%0A%0Aselect%20%3Fthing%20%3Flabel%20where%20%7B%0A%20%20graph%20npa%3Agraph%20%7B%0A%20%20%20%20%3Fnp%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%0A%20%20%20%20filter%20not%20exists%20%7B%20%3Fnpx%20npx%3Ainvalidates%20%3Fnp%20%3B%20npa%3AhasValidSignatureForPublicKey%20%3Fpubkey%20.%20%7D%0A%20%20%20%20%3Fnp%20npx%3Aintroduces%20%3Fthing%20.%0A%20%20%20%20%3Fnp%20np%3AhasAssertion%20%3Fa%20.%0A%20%20%7D%0A%20%20graph%20%3Fa%20%7B%0A%20%20%20%20%3Fthing%20rdfs%3Alabel%20%3Flabel%20.%0A%20%20%20%20filter%28contains%28lcase%28str%28%3Flabel%29%29%2C%20lcase%28%22 %22%29%29%29%0A%20%20%7D%0A%7D%0Alimit%2010 is called - connects a formal identifier (left) to an informal human-readable name (right) is a subclass of - states that all instances of the class/type to the left are also instances of the class/type to the right is exactly the same as is defined as follows: - connects an identifier (left) to a human-readable definition (right) is related to - connects two things that are somehow related FAIR Information Object Such a nanopublication defines a new FDO type to be used to classify FAIR Digital Objects (FDOs). Defining an FDO type FDO Type: ${name} FDO short name, used as URI suffix definition of the FDO type the name of the FDO type URI of a related entity http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= URI of a class/type that should be treated as fully synonymous can be described as follows: - gives a thing (left) a human-readable description (right) <p>Such nanopublications define a new named individual. Such a named individual represets a single concrete or abstract thing that is in some way relevant. Examples are the planet Mars, Marie Curie, or the Universal Declaration of Human Rights.</p> <p>Such individuals do <strong>not</strong> represent sets of things, like humans, diseases, or ideas. Such concepts representing sets should be defined with the template for classes.</p> Defining a new individual in the namespace of the journal Data Science ${name} Terms the URI of the class this individual belongs to http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= description of the individual URI starting with 'https://w3id.org/kpxl/ios/ds/terms/' - the formal identifier of the individual https://w3id\.org/kpxl/ios/ds/terms/.* the name of the individual another URI of exactly the same individual a URL where more information about this individual can be found is a - asserts that the given thing (left) belongs to the given class (right) is called - connects an identifier to a human-readable name for it is further explained at - connects an identifier to a link with further information about it named invididual - a concrete or abstract thing that is given an identifier and a name thing - the class representing everything is exactly the same as has the description is a is called has the website research project has the research domain Template for defining a research project Defining a research project Projects description of the research project the name of your research project short URI suffix or full URI a link to the research project's website is a - asserts that the thing on the left belongs to the class on the right has the name - connects a formal identifier (left) to an informal human-readable name (right) is a sub-taxon of - states that all instances of the taxon to the left are also instances of the taxon to the right is defined as follows: - connects an identifier (left) to a human-readable definition (right) is related to - connects two taxons that are somehow related Such a nanopublication defines a new biological taxon, such as a species or a family. Defining a new biological taxon New ${taxonType}: ${name} Biodiversity free-text definition of the taxon the name of the taxon URI of a related entity http://purl.org/nanopub/api/find_signed_things?type=http%3A%2F%2Fwww.w3.org%2F2002%2F07%2Fowl%23Class&searchterm= https://vodex.petapico.org/nidx/query?rows=100&q=label: https://www.wikidata.org/w/api.php?action=wbsearchentities&language=en&format=json&limit=5&search= the URI of the supertaxon https://vodex.petapico.org/nidx/query?rows=100&q=label: existing taxon identifier, e.g. from ZooBank is a has the description is called has data policy document at can in some situations be considered the same as is (almost) exactly the same as is related to available FAIR Enabling Resource FAIR Enabling Resource to be developed Metadata preservation policy declares minimum metadata preservation in years as Defining a metadata preservation policy FAIR FAIR Enabling Resource that is available or to be developed description of the metadata preservation policy link to data policy document the identifier of the related resource select equivalence relation the name of the metadata preservation policy short name, used as URI suffix number of years [0-9]+ specimen - A material entity that has the specimen role. cites discusses publication - any kind of scholarly work, such as an article, book, etc. is a Such a nanopublication states that a given specimen was discussed in a given publication. Declaring a specimen being discussed in a publication (in unpublished manuscript) Manuscript ${relation} ${specimen} Biodiversity The manuscript select the relation type DOI (https://doi.org/10...) or other URL of the specimen specimen - A material entity that has the specimen role. cites discusses publication - any kind of scholarly work, such as an article, book, etc. is a Such a nanopublication states that a given specimen was discussed in a given publication. Declaring a specimen being discussed in a publication ${pub} ${relation} ${specimen} Biodiversity DOI (https://doi.org/10...) or other URL of the citing paper select the relation type DOI (https://doi.org/10...) or other URL of the specimen is an instance of - indicates that the individual to the left is an instance of the class to the right is used as defined in has the name - links a taxon concept to a taxon name represents - indicates that the individual to the left is a representative instance of the class to the right Such a nanopublication expresses an identification of a given specimen, thereby assigning it to a taxon name. Expressing an identification of a specimen with a taxon name ${specimen} is identified as ${taxonname} Biodiversity DOI (https://doi.org/10...) or other URL of the specimen the taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: value field selector refers to the field is a - connects a thing (left) to the class (right) it belongs to is - links an identifier to its value web annotation - a web annotation of a document or other thing contributes - connects an annotation to its body element is defined by - connects an annotation to its selector refers to the digital specimen targets - connects an annotation to its target this annotation Adding information to a digital specimen Adding info to ${source}: ${selector-field} '${body-value}' Annotations a field value the new suggested value a selector the field this annotation refers to the URI of the specimen being annotated a digital specimen aspect has the title Sharing a web link "${title}" Social the link URL the title of the document (possibly edited) has the description - attaches a human-readable description (right) to a formal identifier of a thing (left) is version of nanopublication service has the name - attaches a human-readable name (right) to a formal identifier of a thing (left) is a subclass of Defining a nanopublication service type Nanopublication service type: ${servicetype} Infrastructure a textual description of the service type the higher-level entity of which this is a more specific version of short ID of service type - this is the identifier of the service type https://w3id.org/np/o/service/terms/ the nanopublication service type [A-Za-z0-9\-_.]{3,20} is an has the free-text comment association between two organism taxa refers to - links an association to its object refers to the relation (between subject taxon and object taxon) refers to - links an association to its subject refers to the object taxon's life cycle stage refers to the subject taxon's life cycle stage is used as defined in has the name - links a taxon usage to a taxon name <p>Such a nanopublication expresses an association between classes of organisms (taxa), a subject taxon and an object taxon, for example expressing that the organisms of the subject taxon prey on organisms of the object taxon.</p> <p>For expressing observations of interactions between individual organisms, please use the alternative template "Associations between organisms".</p> Expressing an association between two organism taxa ${subjtaxonname} - ${relation} - ${objtaxonname} Biodiversity this association short explanation related to the above statement the life cycle stage of the object taxon the object taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, you may paste URL from IPNI, MycoBank, Index Fungorum, or ZooBank) https://vodex.petapico.org/nidx/query?rows=100&q=label: the type of relation between the two taxa the life cycle stage of the subject taxon the subject taxon concept publication DOI (https://doi.org/...) or taxon treatment ID (https://treatment.plazi.org/id/...) (https://doi.org/|https://treatment.plazi.org/id/).+ search and select from list (if not found, paste identifying URI from IPNI, MycoBank, Index Fungorum, or Zoobank) https://vodex.petapico.org/nidx/query?rows=100&q=label: scholarly paper - any kind of scholarly work, such as an article, book, etc. is a DOI (https://doi.org/10...) or other URL of the citing article Such a nanopublication expresses citation relations of a given article based on the CiTO relation types. Declare citations with CiTO Citations for: ${article} Journals DOI (https://doi.org/10...) or other URL of the cited article select the citation type has the title scholarly manuscript is a has as first author was conducted at Making a manuscript declaration Declaration of ${manuscript}: ${title} Journals short ID of manuscript (e.g. 'alpha-paper') or URI/DOI select the organization where this work was conducted https://api.ror.org/organizations?query.advanced=name: the title of the manuscript is a genuinely written paper paper with confirmed first author paper without obvious signs of misconduct Positively flagging a paper/manuscript ${paper} is a ${class} (...) Journals select the appropriate class for the paper URL/DOI of the paper This query allows for searching for resources (FERs etc.) together with the info about whether GO FAIR qualified them. Find GO FAIR qualified things (only valid entries) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?thing ?label ?description ?np ?date ?pubkey ?qualifier ?qualification_np (group_concat(distinct ?recommender; separator=" ") as ?recommenders) (group_concat(distinct ?recommendation_np; separator=" ") as ?recommendation_nps) (count(distinct ?recommender) as ?recommender_count) (sample(?fairAssessmentLevel) as ?fairAssessmentLevel) (sample(?fairAssessmentLevelNp) as ?fairAssessmentLevelNp) where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?retraction npx:retracts ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?newversion npx:supersedes ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np (npx:introduces|npx:describes) ?thing . ?np rdfs:label ?label . ?np dct:description ?description . ?np dct:created ?date . filter(str(?date) > "2022") } bind(concat(" ",lcase(str(?label))," ",lcase(str(?description))," ") as ?text) filter( contains(?text, lcase(str(?_searchterm))) ) optional { graph npa:graph { ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . } graph ?latest_curators_assertion { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph npa:graph { filter not exists { ?disapproval_x npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } ?disapproval np:hasAssertion ?da . } graph ?da { ?dsomebody ( npx:disapproves-of | npx:disapprovesOf ) ?np . } } filter(!bound(?disapproval)) # Faster than "filter not exists" for some reason optional { graph npa:graph { ?recommendation_np npx:hasNanopubType fip:recommended-by . ?recommendation_np npa:hasValidSignatureForPublicKey ?rpubkey . filter not exists { ?recommendation_np_x npx:invalidates ?recommendation_np ; npa:hasValidSignatureForPublicKey ?rpubkey . } ?recommendation_np np:hasAssertion ?ra . ?recommendation_np np:hasProvenance ?rp . } graph ?ra { ?thing fip:recommended-by ?recommender . } graph ?rp { ?ra prov:wasDerivedFrom ?rfip_np . } graph npa:graph { ?rfip_np npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . ?latest_rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . filter not exists { ?latest_rfip_npx npx:invalidates ?latest_rfip_np ; npa:hasValidSignatureForPublicKey ?rfip_pubkey . } } graph npa:networkGraph { ?latest_rfip_np (npx:supersedes)* ?rfip_np . } graph ?rfip_qa { ?rfip_qualifier npx:qualifies ?latest_rfip_np . } graph npa:graph { ?rfip_qualification_np np:hasAssertion ?rfip_qa . ?rfip_qualification_np npx:hasNanopubType npx:qualifies . ?rfip_qualification_np npa:hasValidSignatureForPublicKey ?rfip_qpubkey . filter not exists { ?rfip_qualification_np_x npx:invalidates ?rfip_qualification_np ; npa:hasValidSignatureForPublicKey ?rfip_qpubkey . } } graph ?latest_curators_assertion { ?rfip_qpubkeys npx:hasPublicKey ?rfip_qpubkey . } } optional { graph npa:graph { ?qualification_np npx:hasNanopubType npx:qualifies . ?qualification_np npa:hasValidSignatureForPublicKey ?qpubkey . } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph npa:graph { filter not exists { ?qualification_np_x npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } ?qualification_np np:hasAssertion ?qa . } graph ?qa { ?qualifier npx:qualifies ?np . } } optional { graph npa:graph { ?fairAssessmentLevelNp npx:hasNanopubType fip:has-FAIR-assessment . ?fairAssessmentLevelNp npa:hasValidSignatureForPublicKey ?lpubkey . } graph ?latest_curators_assertion { ?lpubkeys npx:hasPublicKey ?lpubkey . } graph npa:graph { filter not exists { ?fairAssessmentLevelNp_x npx:invalidates ?fairAssessmentLevelNp ; npa:hasValidSignatureForPublicKey ?lpubkey . } ?fairAssessmentLevelNp np:hasAssertion ?la . } graph ?la { ?thing fip:has-FAIR-assessment ?fairAssessmentLevel . } } filter(!bound(?levelNp)) # Faster than "filter not exists" for some reason } group by ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np order by desc(?recommender_count) asc(?label) This query returns the FAQ entries (questions and answers) of an entity, including source nanopub and date. When several nanopubs declare the same FAQ entry, only the most recent one is returned. Get FAQ entries of an entity prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <http://schema.org/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?title ?content ?date ?faq ?np where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?faq rdf:type schema:Question . ?faq rdfs:label ?title . ?faq gen:hasContent ?content . values ?_resource_multi_iri {} ?faq dct:isPartOf ?_resource_multi_iri . optional { ?faq gen:hasPositionString ?position } } filter not exists { graph npa:graph { ?np2 npa:hasValidSignatureForPublicKeyHash ?pubkey2 . filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . } ?np2 dct:created ?date2 . ?np2 np:hasAssertion ?a2 . filter (?date2 > ?date) } graph ?a2 { ?faq rdf:type schema:Question . } } } order by ?position ?title This query returns all FIP declarations that are part of the most recent versions of the FIP indexes, as these nanopubs are produced by the FIP Wizard. Get FIP declarations in indexes prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix fip: <https://w3id.org/fair/fip/terms/> prefix dct: <http://purl.org/dc/terms/> prefix dce: <http://purl.org/dc/elements/1.1/> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix np: <http://www.nanopub.org/nschema#> prefix prov: <http://www.w3.org/ns/prov#> select ?fip_index ?fip_title ?fip_source ?decl_np where { graph npa:graph { ?fip_index npx:hasNanopubType npx:NanopubIndex . ?fip_index npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?index_np_x npx:invalidates ?fip_index ; npa:hasValidSignatureForPublicKey ?pubkey . } ?fip_index np:hasAssertion ?index_a . ?fip_index np:hasPublicationInfo ?index_i . ?fip_index rdfs:label ?fip_title . ?fip_index dct:created ?index_date . ?decl_np npa:hasValidSignatureForPublicKey ?decl_pubkey . filter not exists { ?decl_np_x npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?decl_pubkey . } ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np dct:created ?date . } graph ?index_a { ?fip_index npx:includesElement ?decl_np . } graph ?index_i { ?fip_index prov:wasDerivedFrom ?fip_source . } filter not exists { graph npa:graph { # Moving this to a separate graph for performance reasons with RDF4J LMDB engine # Matching on the title string is an ugly hack: ?fip_newer_index rdfs:label ?fip_title . } graph npa:graph { ?fip_newer_index npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?fip_newer_index_x npx:invalidates ?fip_newer_index ; npa:hasValidSignatureForPublicKey ?pubkey . } ?fip_newer_index dct:created ?newer_date . } filter(?newer_date > ?index_date). } } Lists all entities that have been annotated by nanopubs containing oa:Annotation, ordered by the number of annotation nanopubs targeting each entity. Get annotated entities prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix oa: <http://www.w3.org/ns/oa#> select ?entity (count(?np) as ?annotation_count) (group_concat(str(?np); separator=" ") as ?nps_multi_iri) (group_concat("^"; separator="\n") as ?nps_label_multi) where { { select distinct ?entity ?np where { graph npa:graph { ?np np:hasAssertion ?a . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } } graph ?a { ?annotation a oa:Annotation ; oa:hasTarget ?target . ?target oa:hasSource ?entity . } } } } group by ?entity order by desc(?annotation_count) This query returns the papers co-authored by team members of a given Space. Get papers for team prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fabio: <http://purl.org/spar/fabio/> prefix bibo: <http://purl.org/ontology/bibo/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?paper ?paper_label ?journal ?journal_label ?publication_date ?np ("^" as ?np_label) where { values ?_space_multi_iri {} graph npa:graph { ?mnp npa:hasValidSignatureForPublicKeyHash ?mpubkey . filter not exists { ?mnpx npx:invalidates ?mnp ; npa:hasValidSignatureForPublicKeyHash ?mpubkey . } ?mnp np:hasAssertion ?ma . } graph ?ma { ?_space_multi_iri gen:hasTeamMember ?author . } graph npa:graph { ?np npx:hasNanopubType fabio:ScholarlyWork . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?paper . } graph ?a { ?paper dct:title ?paper_label . ?paper bibo:authorList ?author_list . ?paper dct:date ?publication_date . ?author_list ?rdfseqpred ?author . filter(strstarts(str(?rdfseqpred), "http://www.w3.org/1999/02/22-rdf-syntax-ns#_")) optional { ?paper dct:isPartOf ?journal . ?journal dct:title ?journal_label . } } } order by desc(?publication_date) Returns a list of all events related to the Three Point FAIRification Framework (3PFF), with multi-value fields pre-rendered as HTML anchor strings. Variant of get-3pff-events intended for consumption by clients (e.g. nanopub-table with data-bind-html) that cannot split space-separated URI lists on their own. Get 3PFF Events (HTML) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix tpff: <https://w3id.org/fair/3pff/> prefix schema: <http://schema.org/> select (?event as ?Event_ID) (?eventShortName as ?Event_ID__label) (?eventLongName as ?Event_Name) (?eventDate as ?Date) (group_concat(distinct concat( "<a href=\"", str(?eventOrganizer), "\">", replace(str(?eventOrganizer), "^.*[/#]", ""), "</a>" ); separator=", ") as ?Organizers) (group_concat(distinct concat( "<a href=\"", str(?eventFacilitator), "\">", replace(str(?eventFacilitator), "^.*[/#]", ""), "</a>" ); separator=", ") as ?Facilitators) (group_concat(distinct concat( "<a href=\"", str(?eventMoreInfoLink), "\">", replace(str(?eventMoreInfoLink), "^.*[/#]", ""), "</a>" ); separator=", ") as ?More_Info) (?np as ?Source) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?npDate . ?np dct:creator ?npCreator . ?np np:hasAssertion ?assertion . ?np npx:introduces ?event . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?assertion { ?event a tpff:3PFF-event . ?event rdfs:label ?eventName . # Date Handling: Check for both predicates optional { ?event dct:date ?dateDct . } optional { ?event schema:startDate ?dateSchema . } bind(coalesce(?dateDct, strBefore(str(?dateSchema), "T")) as ?eventDate) bind(replace(str(?eventName), ' ?\\|.*$', '') as ?eventShortName) bind(replace(str(?eventName), '^([A-Z0-9]{2,3}).*$', '$1') as ?eventSeries) bind(replace(str(?eventName), '^.*\\| ?(.*)$', '$1') as ?eventLongName) optional { ?event tpff:has-event-organizer ?eventOrganizer . } optional { ?event tpff:has-event-facilitator ?eventFacilitator . } optional { ?event rdfs:seeAlso ?eventMoreInfoLink . } } } group by ?event ?eventShortName ?eventLongName ?eventDate ?np order by desc(?eventDate) Full-text search over classes that have been declared as FAIR Digital Object (FDO) subclasses in nanopublications. Suitable as an autocomplete lookup source in Nanodash guided-choice placeholders. Full-text search on FDO subclasses prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix fdof: <https://w3id.org/fdof/ontology#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces|npx:describes|npx:embeds ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } graph ?a { ?thing rdfs:subClassOf fdof:FAIRDigitalObject . } filter(contains(lcase(str(?label)), lcase(?_query))) } order by desc(?date) limit 10 Returns the pinned templates for the given resource (Space, agent, or other resource), formatted for list display. Get pinned templates for resource prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?label ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:hasNanopubType gen:hasPinnedTemplate . ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?pi . } graph ?a { values ?_resource_multi_iri {} ?_resource_multi_iri gen:hasPinnedTemplate ?template . } optional { graph ?pi { ?template nt:hasLabelFromApi ?api_label } } bind(if(bound(?api_label), if(contains(?api_label, " - "), strbefore(?api_label, " - "), ?api_label), str(?template)) as ?rawlabel) bind(concat("<span><a href=\"/publish?template=", encode_for_uri(str(?template)), "\">", ?rawlabel, "</a></span>") as ?label) } order by desc(?date) Returns the pinned queries for the given resource (Space, agent, or other resource), formatted for list display. Get pinned queries for resource prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?label ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:hasNanopubType gen:hasPinnedQuery . ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?pi . } graph ?a { values ?_resource_multi_iri {} ?_resource_multi_iri gen:hasPinnedQuery ?query . } optional { graph ?pi { ?query nt:hasLabelFromApi ?api_label } } bind(if(bound(?api_label), if(contains(?api_label, " - "), strbefore(?api_label, " - "), ?api_label), str(?query)) as ?rawlabel) bind(replace(str(?query), "https://w3id.org/np/", "") as ?spec_path) bind(concat("<span><a href=\"/query?id=", ?spec_path, "\">", ?rawlabel, "</a></span>") as ?label) } order by desc(?date) Returns the grlc query nanopublications created by the given user. Get queries by given user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix grlc: <https://w3id.org/kpxl/grlc/> select ?label ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:signedBy ?_user_iri . ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . } ?np npx:hasNanopubType grlc:grlc-query . ?np npx:introduces|npx:embeds ?query . ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?query grlc:endpoint ?endpoint . filter(strstarts(str(?endpoint), "https://w3id.org/np/l/nanopub-query")) optional { ?query rdfs:label ?rawlabel } } bind(replace(str(?query), "https://w3id.org/np/", "") as ?spec_path) bind(concat("<span><a href=\"/query?id=", ?spec_path, "\">", coalesce(?rawlabel, str(?query)), "</a></span>") as ?label) } order by desc(?date) Returns the assertion templates created by the given user. Get templates by given user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?label ?tag ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:signedBy ?_user_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType nt:AssertionTemplate . ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?rawlabel . optional { ?a nt:hasTag ?tag . } filter not exists { ?a a nt:UnlistedTemplate } } bind(concat("<span><a href=\"/publish?template=", encode_for_uri(str(?np)), "\">", ?rawlabel, "</a></span>") as ?label) } order by desc(?date) This query returns the testimonials (about any entity) authored by any of the project leads of the given project. Get testimonials by project leads prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?author ?author_label ?about ?about_label ?text ?date ?np ("^" as ?np_label) where { graph npa:graph { ?lead_np np:hasAssertion ?lead_a . ?lead_np npa:hasValidSignatureForPublicKeyHash ?lead_pubkey . filter not exists { ?lead_npx npx:invalidates ?lead_np ; npa:hasValidSignatureForPublicKeyHash ?lead_pubkey . } } graph ?lead_a { ?_project_iri gen:hasProjectLead ?author . } graph npa:graph { ?np npx:hasNanopubType gen:Testimonial . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx2 npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:introduces ?testimonial . ?np np:hasAssertion ?a . ?np dct:created ?date . } graph ?a { ?testimonial dct:description ?text . ?testimonial schema:author ?author . optional { ?testimonial schema:about ?about . } optional { ?author rdfs:label ?author_label . } optional { ?about rdfs:label ?about_label . } } } order by desc(?date) This query returns all classes that specify to be part of a given ontology. Get the classes of an ontology prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?class ?class_label (?definition as ?description) (group_concat(distinct str(?superclass); separator=" ") as ?superclasses_multi_iri) (group_concat(distinct replace(replace(coalesce(?superclass_lbl, str(?superclass)), "\\\\", "\\\\\\\\"), "[\r\n]+", "\\\\n"); separator="\n") as ?superclasses_label_multi) ?np ("^" as ?np_label) where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType owl:Class . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?class . ?np np:hasAssertion ?a . } graph ?a { ?class dct:partOf ?_ontology_multi_iri . optional { ?class rdfs:label ?class_label . } optional { ?class skos:definition ?definition . } optional { ?class rdfs:subClassOf ?superclass . filter(isIRI(?superclass)) optional { ?superclass rdfs:label ?superclass_lbl . } } } } group by ?class ?class_label ?definition ?np order by ?class_label This query returns all classes that specify to be part of a given ontology. Get the classes of an ontology prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?class ?class_label (?definition as ?description) (group_concat(distinct str(?superclass); separator=" ") as ?superclasses_multi_iri) (group_concat(distinct replace(replace(coalesce(?superclass_lbl, str(?superclass)), "\\\\", "\\\\\\\\"), "[\r\n]+", "\\\\n"); separator="\n") as ?superclasses_label_multi) ?np ("^" as ?np_label) where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType owl:Class . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?class . ?np np:hasAssertion ?a . } graph ?a { ?class dct:partOf ?_ontology_multi_iri . optional { ?class rdfs:label ?class_label . } optional { ?class skos:definition ?definition . } optional { ?class rdfs:subClassOf ?superclass . filter(isIRI(?superclass)) optional { ?superclass rdfs:label ?superclass_lbl . } } } } group by ?class ?class_label ?definition ?np order by ?class_label Returns all assertion templates with their label, tag, creator and date, ordered by descending date Get all templates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?template_iri ?template_iri_label ?tag ?creator ?date where { graph npa:graph { ?template_iri npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?template_iri ; npa:hasValidSignatureForPublicKey ?pubkey . } ?template_iri npx:hasNanopubType nt:AssertionTemplate . ?template_iri dct:created ?date . ?template_iri np:hasAssertion ?a . optional { ?template_iri npx:signedBy ?creator . } } optional { graph ?a { ?a rdfs:label ?template_iri_label } } optional { graph ?a { ?a nt:hasTag ?tag . } } filter not exists { graph ?a { ?a a nt:UnlistedTemplate } } } order by desc(?date) This query returns the most used assertion templates of the last 30 days, considering the latest versions of these templates. Get the most used templates of the last 30 days prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix dct: <http://purl.org/dc/terms/> select ?template_np ?template_np_label (sum(?npcount) as ?overallcount) { { select ?used_template_np (count(distinct ?np) as ?npcount) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np np:hasPublicationInfo ?i . } graph ?i { ?np nt:wasCreatedFromTemplate ?used_template_np . } } group by ?used_template_np } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(nt:AssertionTemplate)))) as ?atservice) { service ?atservice { graph npa:networkGraph { ?template_np npx:supersedes* ?used_template_np . } graph npa:graph { ?used_template_np npa:hasValidSignatureForPublicKey ?pubkey . ?template_np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?template_npx npx:invalidates ?template_np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?used_template_np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?template_np_label . } } } } group by ?template_np ?template_np_label order by desc(?overallcount) limit 10 Returns the latest nanopublications signed by or created by a given user (signed via npx:signedBy, or created via dct:creator if no npx:signedBy is present). Get latest nanopublications by user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } { graph npa:graph { ?np npx:signedBy ?_userid_iri . } } union { filter not exists { graph npa:graph { ?np npx:signedBy ?anyuser . } } graph npa:graph { ?np dct:creator ?_userid_iri . } } } order by desc(?date) limit 100 Returns the latest nanopublications signed by or created by a given user (signed via npx:signedBy, or created via dct:creator if no npx:signedBy is present). Get latest nanopublications by user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } { graph npa:graph { ?np npx:signedBy ?_userid_iri . } } union { filter not exists { graph npa:graph { ?np npx:signedBy ?_userid_iri . } } graph npa:graph { ?np dct:creator ?_userid_iri . } } } order by desc(?date) limit 100 This query returns a list of suggested templates to get started, so it can be shown e.g. on Nanodash. Get suggested templates to get started prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?template_iri ?template_iri_label where { graph npa:graph { ?np npx:hasNanopubType <https://w3id.org/kpxl/gen/terms/SuggestedTemplateToGetStarted> . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter(?pubkey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD4Wj537OijfOWVtsHMznuXKISqBhtGDQZfdO6pbb4hg9EHMcUFGTLbWaPrP783PHv8HMAAPjvEkHLaOHMIknqhaIa5236lfBO3r+ljVdYBElBcLvROmwG+ZGtmPNZf7lMhI15xf5TfoaSa84AFRd5J2EXekK6PhaFQhRm1IpSYtwIDAQAB") filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?template_iri a <https://w3id.org/kpxl/gen/terms/SuggestedTemplateToGetStarted> . } optional { graph npa:graph { ?template_iri rdfs:label ?raw_label . } bind(replace(str(?raw_label), "^Template: ", "") as ?template_iri_label) } } order by desc(?date) Returns the latest users who have introduced themselves, with the user IRI in the user_iri column for display. Get latest users v2 prefix np: <http://www.nanopub.org/nschema#> prefix npx: <http://purl.org/nanopub/x/> prefix npa: <http://purl.org/nanopub/admin/> prefix dct: <http://purl.org/dc/terms/> select ?user_iri where { { select ?user_iri (min(?date) as ?mindate) where { graph npa:graph { ?intronp npa:hasValidSignatureForPublicKey ?introPubkey . filter not exists { ?intronpx npx:retracts ?intronp ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?intronp npx:supersedes ?intronpx . } ?intronp dct:created ?date . ?intronp np:hasAssertion ?a . } graph ?a { ?keydeclaration npx:declaredBy ?user_iri . ?keydeclaration npx:hasPublicKey ?pubkey . } } group by ?user_iri } } order by desc(?mindate) limit 100 This query returns a list of suggested templates to get started, so it can be shown e.g. on Nanodash. Get suggested templates to get started prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?template_iri ?template_iri_label where { graph npa:graph { ?np npx:hasNanopubType <https://w3id.org/kpxl/gen/terms/SuggestedTemplateToGetStarted> . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?template_iri a <https://w3id.org/kpxl/gen/terms/SuggestedTemplateToGetStarted> . optional { ?template_iri rdfs:label ?template_iri_label . } } } order by desc(?date) This query returns the 10 creators who created most nanopublications during the last 30 days. Get the top-10 creators of the last 30 days prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?user_iri where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?user_iri . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . } graph ?prov { ?assertion prov:wasAttributedTo ?user_iri . } } filter(?user_iri != <https://orcid.org/1234-1234-1234-1234>) filter(?user_iri != <https://orcid.org/0000-0000-0000-0000>) filter(!regex(str(?user_iri), '[^A-Za-z0-9-_]RA[A-Za-z0-9-_]{43}$')) } group by ?user_iri order by desc(count(distinct ?np)) limit 10 This query returns the testimonials about the given entity. Get testimonials about entity prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?author ?author_label ?text ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType gen:Testimonial . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:introduces ?testimonial . ?np np:hasAssertion ?a . ?np dct:created ?date . } graph ?a { ?testimonial dct:description ?text . values ?_subject_multi_iri {} ?testimonial schema:about ?_subject_multi_iri . ?testimonial schema:author ?author . optional { ?author rdfs:label ?author_label . } } } order by desc(?date) This query returns the testimonials by the given author. Get testimonials by author prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?about ?text ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType gen:Testimonial . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:introduces ?testimonial . ?np np:hasAssertion ?a . ?np dct:created ?date . } graph ?a { ?testimonial dct:description ?text . ?testimonial schema:author ?_author_iri . optional { ?testimonial schema:about ?about . } } } order by desc(?date) Returns R-FIP declarations: FIP declarations whose community has a Reference-FAIR-Implementation-Profile, matched with the latest R-FIP profile for that community. Get R-FIP declarations in context prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix fip: <https://w3id.org/fair/fip/terms/> prefix dct: <http://purl.org/dc/terms/> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix np: <http://www.nanopub.org/nschema#> prefix schema: <https://schema.org/> select ?fip_index ?fip_title ?decl_np where { # Find R-FIP profiles (latest per community) graph npa:graph { ?fip_index npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?fip_index npa:hasValidSignatureForPublicKeyHash ?pkh . filter not exists { ?inv npx:invalidates ?fip_index ; npa:hasValidSignatureForPublicKeyHash ?pkh . } ?fip_index np:hasAssertion ?rfip_a . ?fip_index npx:introduces ?rfip . ?fip_index dct:created ?rfip_date . } graph ?rfip_a { ?rfip rdfs:label ?fip_title . ?rfip fip:declared-by ?community . } # Keep only the latest R-FIP profile per community filter not exists { graph npa:graph { ?newer_rfip npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?newer_rfip npa:hasValidSignatureForPublicKeyHash ?nkh . filter not exists { ?ninv npx:invalidates ?newer_rfip ; npa:hasValidSignatureForPublicKeyHash ?nkh . } ?newer_rfip np:hasAssertion ?nra . ?newer_rfip dct:created ?newer_date . } graph ?nra { ?nrfip fip:declared-by ?community . } filter(?newer_date > ?rfip_date) } # Find FIP declarations from these R-FIP communities that have schema:version graph npa:graph { ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np npa:hasValidSignatureForPublicKey ?dpk . filter not exists { ?dinv npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?dpk . } ?decl_np np:hasAssertion ?decl_a . } graph ?decl_a { ?decl fip:declared-by ?community . ?decl schema:version ?version . } } This query returns the details of all FIP declarations, including schema:version for R-FIP declarations. Get FIP declaration details prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix fip: <https://w3id.org/fair/fip/terms/> prefix dct: <http://purl.org/dc/terms/> prefix dce: <http://purl.org/dc/elements/1.1/> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix np: <http://www.nanopub.org/nschema#> prefix dcat: <https://www.w3.org/ns/dcat#> prefix schema: <https://schema.org/> select ?decl_np ?community ?c ?question ?q ?sort ?nochoice ?decl ?rel ?resource_id_used ?startdate ?enddate ?date ?version where { graph npa:graph { ?decl_np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?decl_np_x npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np dct:created ?date . ?decl_np np:hasAssertion ?assertion . } graph ?assertion { ?decl a fip:FIP-Declaration . ?decl fip:refers-to-question ?question . { { ?decl fip:declares-current-use-of ?resource_id_used . bind(fip:declares-current-use-of as ?rel) } union { ?decl fip:declares-planned-use-of ?resource_id_used . bind(fip:declares-planned-use-of as ?rel) } union { ?decl fip:declares-planned-replacement-of ?resource_id_used . bind(fip:declares-planned-replacement-of as ?rel) } union { ?decl fip:declares-replacement-from ?resource_id_used . bind(fip:declares-replacement-from as ?rel) } union { ?decl fip:declares-replacement-to ?resource_id_used . bind(fip:declares-replacement-to as ?rel) } } # grlc gives an error for some reason if these two optional statements are at the end of the graph block: optional { ?decl dcat:startDate ?startdate . } optional { ?decl dcat:endDate ?enddate . } ?decl fip:declared-by ?community . optional { ?decl schema:version ?version . } } bind (replace(str(?community), ".*#", "") as ?c) bind (replace(str(?supercommunity), ".*#", "") as ?sc) bind (replace(str(?question), "^.*-([^-MD]+(-[MD]+)?)$", "$1") as ?q) bind (concat(replace(?q, "F|M", "0"), "x") as ?sort) bind ("" as ?nochoice) } This query returns the relevant resources for a given entity (e.g. a Space). Get relevant resources prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?resource ?resource_label ?comment ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType gen:isRelevantFor . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } values ?_entity_multi_iri {} graph ?a { ?resource gen:isRelevantFor ?_entity_multi_iri . optional { ?resource rdfs:label ?resource_label . } optional { ?resource rdfs:comment ?comment . } } } This query returns the paragraphs of an entity (e.g. a space) with their title and content, including source nanopub and date. Get paragraphs of an entity prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <http://schema.org/> prefix schemas: <https://schema.org/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?title ?content ?date ?np where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?user . ?np np:hasAssertion ?a . } graph ?a { ?paragraph schema:title|schemas:title ?title . ?paragraph rdf:type gen:Paragraph . ?paragraph gen:hasContent ?content . values ?_resource_multi_iri {} ?paragraph schema:isPartOf|schemas:isPartOf|schema:about|schemas:about ?_resource_multi_iri . optional { ?paragraph gen:hasPositionString ?position } } } order by ?position ?title This query returns all newer versions of a given nanopublication, including those that since have been superseded or retracted. Get all newer versions of this nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?newerVersion ?date ?retractedBy ?supersededBy where { graph npa:graph { ?_np_iri npa:hasValidSignatureForPublicKey ?pubkey . } graph npa:networkGraph { ?newerVersion (npx:supersedes)* ?_np_iri . } graph npa:graph { ?newerVersion npa:hasValidSignatureForPublicKey ?pubkey . } optional { graph npa:graph { ?newerVersion dct:created ?date . } } optional { graph npa:graph { ?retractedBy npx:retracts ?newerVersion ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { graph npa:graph { ?supersededBy npx:supersedes ?newerVersion ; npa:hasValidSignatureForPublicKey ?pubkey . } } } order by desc(?date) ?newerVersion This query returns the items a given user has read, covering both schema:ReadAction and paperclub:hasRead nanopubs. Get reads by reader prefix schema: <http://schema.org/> prefix pc: <http://purl.org/petapico/o/paperclub#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> select distinct ?item ?item_label ?date ?comment ?np ("^" as ?np_label) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np dct:created ?created . } graph ?a { ?ra a schema:ReadAction ; schema:agent ?_reader_iri ; schema:object ?item . optional { ?item rdfs:label ?item_label } optional { ?ra schema:endTime ?d } optional { ?ra rdfs:comment ?comment } } bind(coalesce(?d, substr(str(?created), 1, 10)) as ?date) } union { bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(pc:hasRead)))) as ?hasread_repo) service ?hasread_repo { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:signedBy ?_reader_iri . ?np dct:created ?created . } graph ?a { ?_reader_iri pc:hasRead ?item . optional { ?item rdfs:comment ?comment } } } bind(substr(str(?created), 1, 10) as ?date) } } order by desc(?date) This query returns all thanks, possibly restricted by thanker, thanked, and/or thank reason. Get thanks prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix thank: <https://w3id.org/spaces/nanopub/r/thank/> select (?__thanker_iri as ?thanker) (?__thanked_iri as ?thanked) (?__thankReason_iri as ?thank_reason) ?comment ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?__thanker_iri . ?np np:hasAssertion ?a . } graph ?a { ?thanks a thank:Thanks . ?thanks thank:hasThanked ?__thanked_iri . ?thanks thank:hasThanker ?__thanker_iri . ?thanks thank:thanksFor ?__thankReason_iri . optional { ?thanks rdfs:comment ?comment . } } } order by desc(?date) Returns all 3PFF events for a given user, including the role they had in each event. Get 3PFF events for user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix tpff: <https://w3id.org/fair/3pff/> prefix schema: <http://schema.org/> select ?event ?event_label (sample(?ev_name) as ?event_name) (sample(?ev_date) as ?event_date) ?roles_multi_iri ?roles_label_multi ?np_multi_iri ?np_label_multi where { { select ?event (replace(str(?event), "^.*/", "") as ?event_label) (group_concat(str(?role); separator=" ") as ?roles_multi_iri) (group_concat(?role_label; separator="\n") as ?roles_label_multi) (group_concat(str(?latest_np); separator=" ") as ?np_multi_iri) (group_concat("^"; separator="\n") as ?np_label_multi) where { { select ?event ?role ?role_label (sample(?np) as ?latest_np) where { values (?role ?role_label) { (tpff:participatedAsParticipantIn "Participant") (tpff:participatedAsFacilitatorIn "Facilitator") (tpff:participatedAsTrainerIn "Trainer") (tpff:participatedAsFacilitatorAssistantIn "Facilitator Assistant") (tpff:participatedAsTrainerAssistantIn "Trainer Assistant") (tpff:participatedAsImplementerIn "Implementer") (tpff:participatedAsImplementerAspirantIn "Implementer Aspirant") } graph npa:graph { ?np npx:hasNanopubType ?role . ?np dct:creator ?_user_iri . ?np npa:hasValidSignatureForPublicKeyHash ?pk . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pk . } ?np np:hasAssertion ?a . ?np dct:created ?date . } graph ?a { ?_user_iri ?role ?event . } filter not exists { graph npa:graph { ?np2 npx:hasNanopubType ?role . ?np2 dct:creator ?_user_iri . ?np2 npa:hasValidSignatureForPublicKeyHash ?pk2 . filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pk2 . } ?np2 np:hasAssertion ?a2 . ?np2 dct:created ?date2 . filter(?date2 > ?date) } graph ?a2 { ?_user_iri ?role ?event . } } } group by ?event ?role ?role_label } } group by ?event } graph npa:graph { ?enp npx:introduces ?event . ?enp npa:hasValidSignatureForPublicKeyHash ?epk . filter not exists { ?enpx npx:invalidates ?enp ; npa:hasValidSignatureForPublicKeyHash ?epk . } ?enp np:hasAssertion ?ea . } graph ?ea { ?event a tpff:3PFF-event . ?event rdfs:label ?ename . optional { ?event dct:date ?dateDct . } optional { ?event schema:startDate ?dateSchema . } } bind(coalesce(?dateDct, strBefore(str(?dateSchema), "T")) as ?ev_date) bind(replace(?ename, "^[^|]*\\| ?", "") as ?ev_name) } group by ?event ?event_label ?roles_multi_iri ?roles_label_multi ?np_multi_iri ?np_label_multi order by desc(sample(?ev_date)) This query returns the past events the given user has participated in. Get past event participations prefix wd: <http://www.wikidata.org/entity/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> select distinct ?event ?event_label ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . } graph ?a { ?_user_iri wd:P1344 ?event . } optional { bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(gen:Space)))) as ?space_repo) service ?space_repo { graph npa:graph { ?nps npx:introduces ?event . ?nps npa:hasValidSignatureForPublicKeyHash ?pks . filter not exists { ?npsx npx:invalidates ?nps ; npa:hasValidSignatureForPublicKeyHash ?pks . } ?nps np:hasAssertion ?as . } graph ?as { ?event rdfs:label ?el . optional { ?event schema:startDate ?datetime . } } } } bind(xsd:date(substr(str(?datetime), 0, 11)) as ?date) bind(?el as ?event_label) filter(?date < xsd:date(substr(str(now()), 0, 11))) } order by desc(?date) This query returns the papers for a given author. Get papers for author prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fabio: <http://purl.org/spar/fabio/> prefix bibo: <http://purl.org/ontology/bibo/> select ?paper ?paper_label ?journal ?journal_label ?publication_date ?np ("^" as ?np_label) where { values ?_author_multi_iri {} graph npa:graph { ?np npx:hasNanopubType fabio:ScholarlyWork . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?paper . } graph ?a { ?paper dct:title ?paper_label . ?paper bibo:authorList ?author_list . ?paper dct:date ?publication_date . ?author_list ?rdfseqpred ?_author_multi_iri . filter(strstarts(str(?rdfseqpred), "http://www.w3.org/1999/02/22-rdf-syntax-ns#_")) optional { ?paper dct:isPartOf ?journal . ?journal dct:title ?journal_label . } } } order by desc(?publication_date) This query returns the personal URLs for a given user. Get personal URLs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?urllink ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType rdfs:seeAlso . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . } graph ?a { ?_user_iri rdfs:seeAlso ?url . ?url rdfs:label ?url_label . } bind(concat("<span><a target=\"_blank\" href=\"", str(?url), "\">", ?url_label, "</a></span>") as ?urllink) } order by ?url_label This query returns resources (FERs etc.) together with the info about whether GO FAIR qualified them. Get GO FAIR qualified things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?thing ?label ?np ?date ?qualification_np where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np (npx:introduces|npx:describes) ?thing . ?np rdfs:label ?label . ?np dct:description ?description . ?np dct:created ?date . filter(str(?date) > "2022") } optional { graph npa:graph { ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . } graph ?latest_curators_assertion { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph npa:graph { filter not exists { ?disapproval_x npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } ?disapproval np:hasAssertion ?da . } graph ?da { ?dsomebody ( npx:disapproves-of | npx:disapprovesOf ) ?np . } } filter(!bound(?disapproval)) # Faster than "filter not exists" for some reason optional { optional { graph npa:graph { ?recommendation_np npx:hasNanopubType fip:recommended-by . ?recommendation_np npa:hasValidSignatureForPublicKey ?rpubkey . filter not exists { ?recommendation_np_x npx:invalidates ?recommendation_np ; npa:hasValidSignatureForPublicKey ?rpubkey . } ?recommendation_np np:hasAssertion ?ra . ?recommendation_np np:hasProvenance ?rp . } graph ?ra { ?thing fip:recommended-by ?recommender . } graph ?rp { ?ra prov:wasDerivedFrom ?rfip_np . } graph npa:graph { ?rfip_np npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . ?latest_rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . filter not exists { ?latest_rfip_npx npx:invalidates ?latest_rfip_np ; npa:hasValidSignatureForPublicKey ?rfip_pubkey . } } graph npa:networkGraph { ?latest_rfip_np (npx:supersedes)* ?rfip_np . } graph ?rfip_qa { ?rfip_qualifier npx:qualifies ?latest_rfip_np . } graph npa:graph { ?rfip_qualification_np np:hasAssertion ?rfip_qa . ?rfip_qualification_np npx:hasNanopubType npx:qualifies . ?rfip_qualification_np npa:hasValidSignatureForPublicKey ?rfip_qpubkey . filter not exists { ?rfip_qualification_np_x npx:invalidates ?rfip_qualification_np ; npa:hasValidSignatureForPublicKey ?rfip_qpubkey . } } graph ?latest_curators_assertion { ?rfip_qpubkeys npx:hasPublicKey ?rfip_qpubkey . } } graph npa:graph { ?qualification_np npx:hasNanopubType npx:qualifies . ?qualification_np npa:hasValidSignatureForPublicKey ?qpubkey . } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph npa:graph { filter not exists { ?qualification_np_x npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } ?qualification_np np:hasAssertion ?qa . } graph ?qa { ?qualifier npx:qualifies ?np . } } optional { graph npa:graph { ?fairAssessmentLevelNp npx:hasNanopubType fip:has-FAIR-assessment . ?fairAssessmentLevelNp npa:hasValidSignatureForPublicKey ?lpubkey . } graph ?latest_curators_assertion { ?lpubkeys npx:hasPublicKey ?lpubkey . } graph npa:graph { filter not exists { ?fairAssessmentLevelNp_x npx:invalidates ?fairAssessmentLevelNp ; npa:hasValidSignatureForPublicKey ?lpubkey . } ?fairAssessmentLevelNp np:hasAssertion ?la . } graph ?la { ?thing fip:has-FAIR-assessment ?fairAssessmentLevel . } } filter(!bound(?levelNp)) # Faster than "filter not exists" for some reason } group by ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np order by desc(?recommender_count) asc(?label) This query returns the number of nanopubs per type. Get nanopub type counts prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select (count(?np) as ?count) ?type where { graph npa:graph { ?np npx:hasNanopubType ?type . } } group by ?type order by desc(?count) Returns the number of nanopublications published per week (Mon-Sun). Get weekly nanopub count prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?week (substr(str(min(?date)), 0, 11) as ?firstday) (count(?np) as ?nanopubcount) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . } bind(if(month(?date) <= 2, year(?date) - 1, year(?date)) as ?y) bind(if(month(?date) <= 2, month(?date) + 9, month(?date) - 3) as ?m) bind(365*?y + xsd:integer(?y/4) - xsd:integer(?y/100) + xsd:integer(?y/400) + xsd:integer((153*?m + 2)/5) + day(?date) as ?daynum) bind(?daynum + 1 - xsd:integer((?daynum + 1) / 7) * 7 as ?dow) bind(xsd:integer((?daynum - ?dow) / 7) as ?week) } group by ?week order by desc(?week) This query returns the content (body) of the news entries. Get news content prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <http://schema.org/> prefix schemas: <https://schema.org/> select ?headline ?body ?datePublished ?link ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?user . ?np np:hasAssertion ?a . } values ?_resource_multi_iri {} { graph ?a { ?newsItem schema:headline ?headline . ?newsItem rdf:type schema:NewsArticle . ?newsItem schema:articleBody ?body . optional { ?newsItem schema:datePublished ?datePublished . } optional { ?newsItem schema:url ?link . } ?newsItem schema:isPartOf ?_resource_multi_iri . } } union { graph ?a { ?newsItem schemas:headline ?headline . ?newsItem rdf:type schemas:NewsArticle . ?newsItem schemas:articleBody ?body . optional { ?newsItem schemas:datePublished ?datePublished . } optional { ?newsItem schemas:url ?link . } ?newsItem schemas:isPartOf ?_resource_multi_iri . } } } order by desc(?datePublished) This query returns all users who have set up their profile by declaring at least one view to be displayed on their profile page, sorted by date of first view display publication (most recent first). Get users with profile prefix np: <http://www.nanopub.org/nschema#> prefix npx: <http://purl.org/nanopub/x/> prefix npa: <http://purl.org/nanopub/admin/> prefix dct: <http://purl.org/dc/terms/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?user (sample(?name) as ?user_label) (min(?date) as ?date) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?display a gen:ViewDisplay . ?display gen:isDisplayFor ?user . } graph npa:graph { ?intronp npa:hasValidSignatureForPublicKeyHash ?intropubkey . filter not exists { ?intronpx npx:invalidates ?intronp ; npa:hasValidSignatureForPublicKeyHash ?intropubkey . } ?intronp np:hasAssertion ?introa . } graph ?introa { ?keydecl npx:declaredBy ?user . optional { ?user foaf:name ?name . } } } group by ?user order by desc(?date) This query returns the definition relations of a replication study. Get replication study definition prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?relation ?relation_label (group_concat(replace(replace(str(?value), "\\\\", "\\\\\\\\"), "[\r\n]{1,2}", "\\\\n"); separator="\n") as ?value_multi_val) (group_concat(replace(replace(coalesce(?valueLabel, ""), "\\\\", "\\\\\\\\"), "[\r\n]{1,2}", "\\\\n"); separator="\n") as ?value_label_multi) ?np ("^" as ?np_label) where { values ?_resource_multi_iri {} graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:introduces ?_resource_multi_iri . } values (?relation ?relation_label ?order) { (<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> "Type:" 1) (<http://www.w3.org/2000/01/rdf-schema#label> "Label:" 2) (<https://w3id.org/sciencelive/o/terms/targetsClaim> "Target claim:" 3) (<https://w3id.org/sciencelive/o/terms/hasScopeDescription> "Scope:" 4) (<https://w3id.org/sciencelive/o/terms/hasMethodologyDescription> "Methodology:" 5) (<https://w3id.org/sciencelive/o/terms/hasDeviationDescription> "Deviation:" 6) (<http://www.w3.org/2004/02/skos/core#related> "Related:" 7) (<https://w3id.org/sciencelive/o/terms/hasDiscipline> "Discipline:" 8) } graph ?a { ?_resource_multi_iri ?relation ?value . } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/29ca2b209f9afb89e9c2c7b61c9c6aa447fb7b941c1db2fd26099346cc4fed29> { graph npa:graph { ?vnp np:hasAssertion ?va . ?vnp npx:introduces ?value . ?vnp npa:hasValidSignatureForPublicKeyHash ?vpubkey . filter not exists { ?vnpx npx:invalidates ?vnp ; npa:hasValidSignatureForPublicKeyHash ?vpubkey . } } graph ?va { ?value rdfs:label ?valueLabel . } } } } group by ?relation ?relation_label ?order ?np order by ?order This query returns the outcome relations of a replication study. Get replication study outcome prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?relation ?relation_label (group_concat(replace(replace(str(?value), "\\\\", "\\\\\\\\"), "[\r\n]{1,2}", "\\\\n"); separator="\n") as ?value_multi_val) ?np ("^" as ?np_label) where { { select * { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:introduces ?outcome . } values ?_replicationStudy_multi_iri {} graph ?a { ?outcome sl:isOutcomeOf ?_replicationStudy_multi_iri . } } order by desc(?date) limit 1 } values (?relation ?relation_label ?order) { (<http://www.w3.org/2000/01/rdf-schema#label> "Label:" 1) (<https://w3id.org/sciencelive/o/terms/hasOutcomeRepository> "Outcome repository:" 2) (<http://schema.org/endDate> "End date:" 3) (<https://w3id.org/sciencelive/o/terms/hasValidationStatus> "Validation status:" 4) (<https://w3id.org/sciencelive/o/terms/hasConclusionDescription> "Conclusion:" 5) (<https://w3id.org/sciencelive/o/terms/hasEvidenceDescription> "Evidence:" 6) (<https://w3id.org/sciencelive/o/terms/hasConfidenceLevel> "Confidence level:" 7) (<https://w3id.org/sciencelive/o/terms/hasLimitationsDescription> "Limitations:" 8) } graph ?a { ?outcome ?relation ?value . } } group by ?relation ?relation_label ?order ?np order by ?order This query returns the outcome relations of a replication study. Get replication study outcome prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?relation ?relation_label (group_concat(replace(replace(str(?value), "\\\\", "\\\\\\\\"), "[\r\n]{1,2}", "\\\\n")); separator="\n") as ?value_multi_val) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:introduces ?outcome . } values ?_replicationStudy_multi_iri {} graph ?a { ?outcome sl:isOutcomeOf ?_replicationStudy_multi_iri . } values (?relation ?relation_label ?order) { (<http://www.w3.org/2000/01/rdf-schema#label> "Label:" 1) (<https://w3id.org/sciencelive/o/terms/hasOutcomeRepository> "Outcome repository:" 2) (<http://schema.org/endDate> "End date:" 3) (<https://w3id.org/sciencelive/o/terms/hasValidationStatus> "Validation status:" 4) (<https://w3id.org/sciencelive/o/terms/hasConclusionDescription> "Conclusion:" 5) (<https://w3id.org/sciencelive/o/terms/hasEvidenceDescription> "Evidence:" 6) (<https://w3id.org/sciencelive/o/terms/hasConfidenceLevel> "Confidence level:" 7) (<https://w3id.org/sciencelive/o/terms/hasLimitationsDescription> "Limitations:" 8) } graph ?a { ?outcome ?relation ?value . } } group by ?relation ?relation_label ?order order by ?order Returns a summary of 3PFF event participation for a given user, with the number of events per role. Get 3PFF participation summary for user prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix tpff: <https://w3id.org/fair/3pff/> select ?role ?role_label (count(distinct ?event) as ?event_count) where { values (?role ?role_label) { (tpff:participatedAsParticipantIn "Participant") (tpff:participatedAsFacilitatorIn "Facilitator") (tpff:participatedAsTrainerIn "Trainer") (tpff:participatedAsFacilitatorAssistantIn "Facilitator Assistant") (tpff:participatedAsTrainerAssistantIn "Trainer Assistant") (tpff:participatedAsImplementerIn "Implementer") (tpff:participatedAsImplementerAspirantIn "Implementer Aspirant") } graph npa:graph { ?np npx:hasNanopubType ?role . ?np npa:hasValidSignatureForPublicKeyHash ?pk . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pk . } ?np np:hasAssertion ?a . } graph ?a { ?_user_iri ?role ?event . } graph npa:graph { ?enp npx:introduces ?event . ?enp npa:hasValidSignatureForPublicKeyHash ?epk . filter not exists { ?enpx npx:invalidates ?enp ; npa:hasValidSignatureForPublicKeyHash ?epk . } ?enp np:hasAssertion ?ea . } graph ?ea { ?event a tpff:3PFF-event . } } group by ?role ?role_label having(count(distinct ?event) > 0) order by desc(?event_count) Returns all 3PFF events with participant counts per role (Participants, Facilitators, Trainers, etc.). Get 3PFF event participation stats prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix tpff: <https://w3id.org/fair/3pff/> prefix schema: <http://schema.org/> select ?event ?event_label (sample(?ev_name) as ?event_name) (sample(?ev_date) as ?event_date) (sum(if(?role = tpff:participatedAsParticipantIn, 1, 0)) as ?Participants) (sum(if(?role = tpff:participatedAsFacilitatorIn, 1, 0)) as ?Facilitators) (sum(if(?role = tpff:participatedAsTrainerIn, 1, 0)) as ?Trainers) (sum(if(?role = tpff:participatedAsFacilitatorAssistantIn, 1, 0)) as ?Facilitator_Assistants) (sum(if(?role = tpff:participatedAsTrainerAssistantIn, 1, 0)) as ?Trainer_Assistants) (sum(if(?role = tpff:participatedAsImplementerIn, 1, 0)) as ?Implementers) (sum(if(?role = tpff:participatedAsImplementerAspirantIn, 1, 0)) as ?Implementer_Aspirants) where { { select distinct ?event ?role ?user where { values ?role { tpff:participatedAsParticipantIn tpff:participatedAsFacilitatorIn tpff:participatedAsTrainerIn tpff:participatedAsFacilitatorAssistantIn tpff:participatedAsTrainerAssistantIn tpff:participatedAsImplementerIn tpff:participatedAsImplementerAspirantIn } graph npa:graph { ?np npx:hasNanopubType ?role . ?np npa:hasValidSignatureForPublicKeyHash ?pk . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pk . } ?np np:hasAssertion ?a . } graph ?a { ?user ?role ?event . } } } graph npa:graph { ?enp npx:introduces ?event . ?enp npa:hasValidSignatureForPublicKeyHash ?epk . filter not exists { ?enpx npx:invalidates ?enp ; npa:hasValidSignatureForPublicKeyHash ?epk . } ?enp np:hasAssertion ?ea . } graph ?ea { ?event a tpff:3PFF-event . ?event rdfs:label ?ename . optional { ?event dct:date ?dateDct . } optional { ?event schema:startDate ?dateSchema . } } bind(replace(str(?event), "^.*/", "") as ?event_label) bind(coalesce(?dateDct, strBefore(str(?dateSchema), "T")) as ?ev_date) bind(replace(?ename, "^[^|]*\\| ?", "") as ?ev_name) } group by ?event ?event_label order by desc(sample(?ev_date)) Returns all 3PFF qualifications issued to a given user, including qualification type, issuer, and validity period. Get 3PFF qualifications for user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix tpff: <https://w3id.org/fair/3pff/> prefix schema: <https://schema.org/> prefix dcat: <https://www.w3.org/ns/dcat#> select ?qualification ?qualification_label ?issuer ?issuer_label ?startDate ?endDate ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType tpff:3PFF-Qualification . ?np npa:hasValidSignatureForPublicKeyHash ?pk . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pk . } ?np np:hasAssertion ?a . } graph ?a { ?np tpff:issued-to ?_user_iri . ?np npx:qualifies ?qualification . optional { ?np schema:issuedBy ?issuer . } optional { ?np dcat:startDate ?startDate . } optional { ?np dcat:endDate ?endDate . } } bind(replace(str(?qualification), "^.*/", "") as ?qualification_label) bind(if(?issuer = <https://ror.org/056j50v04>, "GO FAIR Foundation", replace(str(?issuer), "^.*/", "")) as ?issuer_label) } order by desc(?startDate) Returns all 3PFF qualifications issued to a given user, including qualification type, issuer, and validity period. Get 3PFF qualifications for user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix tpff: <https://w3id.org/fair/3pff/> prefix schema: <https://schema.org/> prefix dcat: <https://www.w3.org/ns/dcat#> select ?qualification ?qualification_label ?issuer ?startDate ?endDate ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType tpff:3PFF-Qualification . ?np npa:hasValidSignatureForPublicKeyHash ?pk . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pk . } ?np np:hasAssertion ?a . } graph ?a { ?np tpff:issued-to ?_user_iri . ?np npx:qualifies ?qualification . optional { ?np schema:issuedBy ?issuer . } optional { ?np dcat:startDate ?startDate . } optional { ?np dcat:endDate ?endDate . } } bind(replace(str(?qualification), "^.*/", "") as ?qualification_label) } order by desc(?startDate) This query returns all FDOs that have the given search string in their labels. Find FDOs by label search prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <http://schema.org/> prefix fdof: <https://w3id.org/fdof/ontology#> select ?fdo ?profile ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . values ?type { fdof:FAIRDigitalObject npx:RoCrateNanopub } ?np npx:hasNanopubType ?type . ?np npx:introduces ?fdo . ?np np:hasAssertion ?assertion . ?np rdfs:label ?label . filter(contains(lcase(?label), ?_query)) } graph ?assertion { { ?fdo dct:conformsTo ?profile . } union { ?metadata dct:conformsTo ?profile . ?metadata schema:about ?fdo . } } } order by desc(?date) Returns all the spaces a given user belongs to, together with the role names the user has in each space. Get Spaces and roles for user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> select ?space ?space_label (group_concat(distinct str(?role); separator=" ") as ?roles_multi_iri) (group_concat(distinct ?roleName; separator="\n") as ?roles_label_multi) where { { { graph npa:graph { ?spaceRole_np npx:hasNanopubType gen:SpaceMemberRole . ?spaceRole_np npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . filter not exists { ?spaceRole_npx npx:invalidates ?spaceRole_np ; npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . } ?spaceRole_np np:hasAssertion ?spaceRole_a . } graph ?spaceRole_a { ?space gen:hasRole ?role . } } union { bind(<https://w3id.org/np/RA_eEJjQbxzSqYSwPzfjzOZi5sMPpUmHskFNsgJYSws8I/adminRole> as ?role) } } graph ?role_a { ?role a gen:SpaceMemberRole . ?role rdfs:label ?roleLabel . ?role dct:title ?roleTitle . ?role schema:name ?roleName . } graph npa:graph { ?role_np npx:embeds ?role . ?role_np np:hasAssertion ?role_a . } { { graph ?role_a { ?role gen:hasRegularProperty ?reg . } graph ?link_a { ?_agent_iri ?reg ?space . } } union { graph ?role_a { ?role gen:hasInverseProperty ?inv . } graph ?link_a { ?space ?inv ?_agent_iri . } } } graph npa:graph { ?link_np np:hasAssertion ?link_a . ?link_np npa:hasValidSignatureForPublicKeyHash ?link_pubkey . filter not exists { ?link_npx npx:invalidates ?link_np ; npa:hasValidSignatureForPublicKeyHash ?link_pubkey . } } optional { graph npa:graph { ?space_np npx:introduces ?space . ?space_np npa:hasValidSignatureForPublicKeyHash ?space_pubkey . filter not exists { ?space_npx npx:invalidates ?space_np ; npa:hasValidSignatureForPublicKeyHash ?space_pubkey . } ?space_np rdfs:label ?space_label . } } } group by ?space ?space_label order by ?space_label Returns the properties of an introduced presentation or poster, with human-readable labels for recognized predicates. Known properties are shown first. Get presentation details prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix wd: <http://www.wikidata.org/entity/> prefix schema: <https://schema.org/> select ?property ?property_label ?value ?value_label where { bind(?_resourceNp_iri as ?np) graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:introduces ?_resource_iri . } graph ?a { ?_resource_iri ?pred ?value . optional { ?value rdfs:label ?value_label_raw . } } bind(?pred as ?property) bind( if(?pred = rdf:type && ?value = wd:Q604733, "Presentation", if(?pred = rdf:type && ?value = <https://w3id.org/kpxl/gen/terms/PosterPresentation>, "Poster presentation", ?value_label_raw)) as ?value_label) bind( if(?pred = rdf:type, "Type", if(?pred = rdfs:label, "Title", if(?pred = dct:date, "Date", if(?pred = wd:P823, "Speaker", if(?pred = dct:creator, "Author", if(?pred = dct:isPartOf, "Part of", if(?pred = dct:description, "Description", if(?pred = rdfs:seeAlso, "Link", if(?pred = schema:about, "Topic", str(?pred)))))))))) as ?property_label) bind( if(?pred = rdf:type, 0, if(?pred = rdfs:label, 1, if(?pred = dct:date, 2, if(?pred = wd:P823, 3, if(?pred = dct:creator, 4, if(?pred = dct:isPartOf, 5, if(?pred = dct:description, 6, if(?pred = rdfs:seeAlso, 7, if(?pred = schema:about, 8, 99))))))))) as ?sort) } order by ?sort Returns all poster presentations for a given event, with title, date, authors, and nanopub link. Get poster presentations for event prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?poster ?poster_label ?date (group_concat(str(?author); separator=" ") as ?authors_multi_iri) (group_concat(replace(replace(?authorname, "\\\\", "\\\\\\\\"), "\\n", "\\\\n"); separator="\n") as ?authors_label_multi) ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np dct:created ?npdate . ?np np:hasAssertion ?a . ?np npx:introduces ?poster . } values ?_event_multi_iri {} graph ?a { ?poster a gen:PosterPresentation . ?poster dct:isPartOf ?_event_multi_iri . ?poster dct:creator ?author . optional { ?author rdfs:label ?authorname . } optional { ?poster rdfs:label ?poster_label . } optional { ?poster dct:date ?date . } } } group by ?poster ?poster_label ?date ?np order by desc(?date) This query returns plain-text messages about the given resource, including messages about things that are declared to be part of it (recursively up to 2 levels) or whose URI starts with the resource URI. Get messages about resource and its parts prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?about ?text (group_concat(concat('<span><a href="', str(?link), '">link</a></span>'); separator=", ") as ?link) ?user ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?user . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?text . ?a schema:about ?about . values ?_resource_multi_iri {} filter( strstarts(str(?about), str(?_resource_multi_iri)) || exists { graph npa:graph { ?np2 npa:hasValidSignatureForPublicKeyHash ?pubkey2 . filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . } ?np2 np:hasAssertion ?a2 . } graph ?a2 { { ?about dct:isPartOf ?_resource_multi_iri . } union { ?_resource_multi_iri dct:hasPart ?about . } } } || exists { graph npa:graph { ?np3 npa:hasValidSignatureForPublicKeyHash ?pubkey3 . filter not exists { ?npx3 npx:invalidates ?np3 ; npa:hasValidSignatureForPublicKeyHash ?pubkey3 . } ?np3 np:hasAssertion ?a3 . } graph ?a3 { ?about dct:isPartOf ?mid . } filter( strstarts(str(?mid), str(?_resource_multi_iri)) || exists { graph npa:graph { ?np4 npa:hasValidSignatureForPublicKeyHash ?pubkey4 . filter not exists { ?npx4 npx:invalidates ?np4 ; npa:hasValidSignatureForPublicKeyHash ?pubkey4 . } ?np4 np:hasAssertion ?a4 . } graph ?a4 { { ?mid dct:isPartOf ?_resource_multi_iri . } union { ?_resource_multi_iri dct:hasPart ?mid . } } } ) } ) optional { ?a rdfs:seeAlso ?link . } } } group by ?about ?text ?user ?date ?np order by desc(?date) This query returns all publications with their authors, returning author IDs concatenated by spaces and author names concatenated by newlines (with backslashes and newlines escaped). Get all publications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fabio: <http://purl.org/spar/fabio/> prefix bibo: <http://purl.org/ontology/bibo/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?paper ?paper_label ?journal ?journal_label ?publication_date (group_concat(str(?author_id); separator=" ") as ?authors_multi_iri) (group_concat(replace(replace(?author_name, "\\\\", "\\\\\\\\"), "\\n", "\\\\n"); separator="\n") as ?authors_label_multi) ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType fabio:ScholarlyWork . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:introduces ?paper . } graph ?a { ?paper dct:title ?paper_label . ?paper bibo:authorList ?author_list . optional { ?paper dct:date ?publication_date . } ?author_list ?rdfseqpred ?author_id . filter(strstarts(str(?rdfseqpred), "http://www.w3.org/1999/02/22-rdf-syntax-ns#_")) optional { ?author_id foaf:name ?author_name_raw . } bind(coalesce(?author_name_raw, "") as ?author_name) optional { ?paper dct:isPartOf ?journal . ?journal dct:title ?journal_label . } } } group by ?paper ?paper_label ?journal ?journal_label ?publication_date ?np order by desc(?publication_date) Returns all recent, ongoing, and upcoming events that are defined as Spaces. Get recent and upcoming events prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> select ?event ?event_label ?status ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:introduces ?event . ?np np:hasAssertion ?a . ?np dct:created ?npDate . filter not exists { ?np2 npx:introduces ?event . ?np2 npa:hasValidSignatureForPublicKeyHash ?pubkey2 . filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . } ?np2 dct:created ?npDate2 . filter(?npDate2 > ?npDate) } } graph ?a { ?event a gen:Space . ?event a gen:Event . ?event rdfs:label ?event_label . ?event schema:startDate ?datetime . optional { ?event schema:endDate ?endDatetime . } } bind(xsd:date(substr(str(?datetime), 0, 11)) as ?date) bind(xsd:date(substr(str(now()), 0, 11)) as ?today) optional { bind(xsd:date(substr(str(?endDatetime), 0, 11)) as ?endDate) } bind(if(bound(?endDate), ?endDate, ?date) as ?effectiveEnd) filter(?date >= ?today || ?effectiveEnd >= ?today - "P7D"^^xsd:duration) bind(if(?effectiveEnd < ?today, 1, if(?date > ?today, 3, 2)) as ?statusOrder) bind(if(?date > ?today, "upcoming", if(?effectiveEnd >= ?today, "ongoing", "recently concluded")) as ?status) } order by ?statusOrder ?date Returns all upcoming events that are defined as Spaces, ordered by start date. Get upcoming events prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> select ?event ?event_label ?date ?description ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:introduces ?event . ?np np:hasAssertion ?a . } graph ?a { ?event a gen:Space . ?event a gen:Event . ?event rdfs:label ?event_label . ?event schema:startDate ?datetime . optional { ?event dct:description ?description . } } bind(xsd:date(substr(str(?datetime), 0, 11)) as ?date) filter(?date >= xsd:date(substr(str(now()), 0, 11))) } order by ?date Returns all resource view declarations that do not have a gen:appliesToInstancesOf relation. Get resource views without appliesToInstancesOf prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?view ?view_label ?type ?query ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?pi . } graph ?pi { ?np nt:wasCreatedFromTemplate <https://w3id.org/np/RARLsTlqbTesu1b0WJZ-zL1z96xumOiqbK3l_vV6iZoww> . } graph ?a { ?view a gen:ResourceView . optional { ?view a ?type . filter(?type != gen:ResourceView) } optional { ?view rdfs:label ?view_label . } optional { ?view gen:hasViewQuery ?query . } filter not exists { ?view gen:appliesToInstancesOf ?class . } } } order by desc(?date) This query finds views by a text query for auto-complete lookup. Find views prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType gen:ResourceView . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:embeds ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } bind(concat(?label, " ", coalesce(?description, "")) as ?text) filter(contains(lcase(?label), lcase(?_query))) ?np np:hasAssertion ?a . } graph ?a { ?thing gen:appliesToInstancesOf ?__appliedViewClass_iri . } } limit 10 Returns the cumulative number of human users (with ORCID) who have published an introduction nanopub, per week (Mon-Sun). Get cumulative user count by week prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?week (substr(str(min(?fd1)), 0, 11) as ?firstday) (count(distinct ?u2) as ?totalusers) where { { select ?u1 ?fd1 ?w1 where { { select ?u1 (min(?d1) as ?fd1) where { graph npa:graph { ?np1 npa:hasValidSignatureForPublicKey ?pk1 . ?np1 dct:creator ?u1 . ?np1 dct:created ?d1 . ?np1 np:hasAssertion ?a1 . } graph ?a1 { ?decl1 npx:declaredBy ?agent1 . } filter(strstarts(str(?u1), "https://orcid.org/")) filter(?u1 != <https://orcid.org/0000-0000-0000-0000>) filter(?u1 != <https://orcid.org/1234-1234-1234-1234>) } group by ?u1 } bind(if(month(?fd1) <= 2, year(?fd1) - 1, year(?fd1)) as ?y1) bind(if(month(?fd1) <= 2, month(?fd1) + 9, month(?fd1) - 3) as ?m1) bind(365*?y1 + xsd:integer(?y1/4) - xsd:integer(?y1/100) + xsd:integer(?y1/400) + xsd:integer((153*?m1 + 2)/5) + day(?fd1) as ?dn1) bind(?dn1 + 1 - xsd:integer((?dn1 + 1) / 7) * 7 as ?dw1) bind(xsd:integer((?dn1 - ?dw1) / 7) as ?w1) } } { select ?u2 ?w2 where { { select ?u2 (min(?d2) as ?fd2) where { graph npa:graph { ?np2 npa:hasValidSignatureForPublicKey ?pk2 . ?np2 dct:creator ?u2 . ?np2 dct:created ?d2 . ?np2 np:hasAssertion ?a2 . } graph ?a2 { ?decl2 npx:declaredBy ?agent2 . } filter(strstarts(str(?u2), "https://orcid.org/")) filter(?u2 != <https://orcid.org/0000-0000-0000-0000>) filter(?u2 != <https://orcid.org/1234-1234-1234-1234>) } group by ?u2 } bind(if(month(?fd2) <= 2, year(?fd2) - 1, year(?fd2)) as ?y2) bind(if(month(?fd2) <= 2, month(?fd2) + 9, month(?fd2) - 3) as ?m2) bind(365*?y2 + xsd:integer(?y2/4) - xsd:integer(?y2/100) + xsd:integer(?y2/400) + xsd:integer((153*?m2 + 2)/5) + day(?fd2) as ?dn2) bind(?dn2 + 1 - xsd:integer((?dn2 + 1) / 7) * 7 as ?dw2) bind(xsd:integer((?dn2 - ?dw2) / 7) as ?w2) } } bind(?w1 as ?week) filter(?w2 <= ?week) } group by ?week order by desc(?week) Returns the number of human users who published their first introduction nanopub per week (Mon-Sun). Get weekly new user count prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?week (substr(str(min(?firstdate)), 0, 11) as ?firstday) (count(distinct ?userid) as ?newusercount) where { { select ?userid (min(?date) as ?firstdate) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:signedBy ?userid . ?np npx:hasNanopubType npx:declaredBy . ?np dct:created ?date . } filter(strstarts(str(?userid), "https://orcid.org/")) filter(?userid != <https://orcid.org/0000-0000-0000-0000>) filter(?userid != <https://orcid.org/1234-1234-1234-1234>) } group by ?userid } bind(if(month(?firstdate) <= 2, year(?firstdate) - 1, year(?firstdate)) as ?y) bind(if(month(?firstdate) <= 2, month(?firstdate) + 9, month(?firstdate) - 3) as ?m) bind(365*?y + xsd:integer(?y/4) - xsd:integer(?y/100) + xsd:integer(?y/400) + xsd:integer((153*?m + 2)/5) + day(?firstdate) as ?daynum) bind(?daynum + 1 - xsd:integer((?daynum + 1) / 7) * 7 as ?dow) bind(xsd:integer((?daynum - ?dow) / 7) as ?week) } group by ?week order by desc(?week) Returns the number of active human users (with ORCID) per week (Mon-Sun). Get weekly active human user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?week (substr(str(min(?date)), 0, 11) as ?firstday) (count(distinct ?userid) as ?usercount) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:signedBy ?userid . ?np dct:created ?date . } filter(strstarts(str(?userid), "https://orcid.org/")) filter(?userid != <https://orcid.org/0000-0000-0000-0000>) filter(?userid != <https://orcid.org/1234-1234-1234-1234>) bind(if(month(?date) <= 2, year(?date) - 1, year(?date)) as ?y) bind(if(month(?date) <= 2, month(?date) + 9, month(?date) - 3) as ?m) bind(365*?y + xsd:integer(?y/4) - xsd:integer(?y/100) + xsd:integer(?y/400) + xsd:integer((153*?m + 2)/5) + day(?date) as ?daynum) bind(?daynum + 1 - xsd:integer((?daynum + 1) / 7) * 7 as ?dow) bind(xsd:integer((?daynum - ?dow) / 7) as ?week) } group by ?week order by desc(?week) Returns the number of active users per week (Mon-Sun). Get weekly active user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?week (substr(str(min(?date)), 0, 11) as ?firstday) (count(distinct ?userid) as ?usercount) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . ?np dct:created ?date . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . ?np dct:creator ?tool . values ?tool { <https://fip-wizard.ds-wizard.org/wizard> } } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } bind(if(month(?date) <= 2, year(?date) - 1, year(?date)) as ?y) bind(if(month(?date) <= 2, month(?date) + 9, month(?date) - 3) as ?m) bind(365*?y + xsd:integer(?y/4) - xsd:integer(?y/100) + xsd:integer(?y/400) + xsd:integer((153*?m + 2)/5) + day(?date) as ?daynum) bind(?daynum + 1 - xsd:integer((?daynum + 1) / 7) * 7 as ?dow) bind(xsd:integer((?daynum - ?dow) / 7) as ?week) } group by ?week order by desc(?week) This query returns the number of active users, separated by whether they are an ORCID or not, for the given time period (start and end date). Get active user counts in time period prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select (count(distinct ?userid) as ?userCount) ?isOrcid where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:signedBy ?userid . ?np dct:created ?date . } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } bind(substr(str(?date), 1, 10) as ?dateStr) filter(?dateStr >= ?_startDate) filter(?dateStr <= ?_endDate) bind(strstarts(str(?userid), "https://orcid.org/") as ?isOrcid) } group by ?isOrcid order by ?isOrcid This query returns all the spaces where the given user has the team member role. Get team member spaces for user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?space ?space_label ?np ("^" as ?np_label) where { graph npa:graph { ?np np:hasAssertion ?a . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } } graph ?a { ?space gen:hasTeamMember ?_user_iri . } graph npa:graph { ?space_np npx:introduces ?space . ?space_np npa:hasValidSignatureForPublicKeyHash ?space_pubkey . filter not exists { ?space_npx npx:invalidates ?space_np ; npa:hasValidSignatureForPublicKeyHash ?space_pubkey . } ?space_np np:hasAssertion ?space_a . } graph ?space_a { ?space rdfs:label ?space_label . } } order by ?space_label Returns all presentations of the given event, with label, date, event, and nanopub link. Get presentations for event prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix wd: <http://www.wikidata.org/entity/> select ?presentation ?presentation_label ?date ?speaker ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np dct:created ?npdate . ?np np:hasAssertion ?a . ?np npx:introduces ?presentation . } values ?_event_multi_iri {} graph ?a { ?presentation a wd:Q604733 . ?presentation dct:isPartOf ?_event_multi_iri . ?presentation wd:P823 ?speaker . optional { ?presentation rdfs:label ?presentation_label . } optional { ?presentation dct:date ?date . } } } order by desc(?date) Get nanopubs mentioning relevant entities Get nanopubs mentioning relevant entities prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . optional { ?np rdfs:label ?label . } filter not exists { ?np npx:hasNanopubType npx:retracts . } ?np np:hasAssertion ?a . } graph ?a { ?subj ?pred ?resource . } values ?_entity_multi_iri {} graph ?relevantA { ?resource gen:isRelevantFor ?_entity_multi_iri . optional { ?resource rdfs:label ?resource_label . } } graph npa:graph { ?relevantNp npx:hasNanopubType gen:isRelevantFor . ?relevantNp npa:hasValidSignatureForPublicKeyHash ?relevantPubkey . filter not exists { ?relevantNpx npx:invalidates ?relevantNp ; npa:hasValidSignatureForPublicKeyHash ?relevantPubkey . } } } order by desc(?date) limit 100 Returns all presentations by a given speaker, with label, date, event, and nanopub link. Get presentations by speaker prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix wd: <http://www.wikidata.org/entity/> select ?presentation ?presentation_label ?date ?event ?event_label ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np dct:created ?npdate . ?np np:hasAssertion ?a . ?np npx:introduces ?presentation . } graph ?a { ?presentation a wd:Q604733 . ?presentation wd:P823 ?_speaker_iri . optional { ?presentation rdfs:label ?presentation_label . } optional { ?presentation dct:date ?date . } optional { ?presentation dct:isPartOf ?event . optional { ?event rdfs:label ?event_label . } } } } order by desc(?date) Returns all I-ADOPT variables with their label, entity of interest, creator, and date. Get all I-ADOPT variables prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix iadopt: <https://w3id.org/iadopt/ont/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?variable ?variable_label ?entity ?entity_label ?creator ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType iadopt:Variable . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?variable . ?np npx:signedBy ?creator . } graph ?a { ?variable a iadopt:Variable . optional { ?variable rdfs:label ?variable_label . } optional { ?variable iadopt:hasObjectOfInterest ?entity . optional { ?entity rdfs:label ?entity_label . } } } } order by desc(?date) Returns all resource view declarations with their basic structure: view ID, kind, type, label, query, template count, first template, and date. Get all resource views prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?view ?view_label ?viewKind ?type ?query (count(distinct ?actionTemplate) as ?template_count) (min(?actionTemplate) as ?first_template) (min(?actionLabel) as ?first_template_label) ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?pi . } graph ?pi { ?np nt:wasCreatedFromTemplate <https://w3id.org/np/RARLsTlqbTesu1b0WJZ-zL1z96xumOiqbK3l_vV6iZoww> . } graph ?a { ?view a gen:ResourceView . optional { ?view a ?type . filter(?type != gen:ResourceView) } optional { ?view rdfs:label ?view_label . } optional { ?view dct:isVersionOf ?viewKind . } optional { ?view gen:hasViewQuery ?query . } optional { ?view gen:hasViewAction ?action . ?action gen:hasActionTemplate ?actionTemplate . optional { ?action rdfs:label ?actionLabel . } } } } group by ?view ?view_label ?viewKind ?type ?query ?date ?np order by desc(?date) This query returns the future events the given user plans to attend. Get future planned event attendances prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> select distinct ?event ?event_label ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType gen:plansToAttend . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:signedBy ?_user_iri . ?np np:hasAssertion ?a . } graph ?a { ?_user_iri gen:plansToAttend ?event . optional { ?event rdfs:label ?event_label } optional { ?event dct:date ?date1 } } optional { bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(gen:Space)))) as ?space_repo) service ?space_repo { graph npa:graph { ?nps npx:introduces ?event . ?nps npa:hasValidSignatureForPublicKeyHash ?pks . filter not exists { ?npsx npx:invalidates ?nps ; npa:hasValidSignatureForPublicKeyHash ?pks . } ?nps np:hasAssertion ?as . } graph ?as { ?event schema:startDate ?datetime . bind(xsd:date(substr(str(?datetime), 0, 11)) as ?date2) } } } bind(coalesce(?date1, ?date2) as ?date) filter(?date >= xsd:date(substr(str(now()), 0, 11))) } order by ?date This query returns the latest nanopublications by user ID. Get latest nanopubs by user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?date where { graph npa:graph { ?np npx:signedBy ?_user_iri . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . optional { ?np rdfs:label ?label . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } order by desc(?date) limit 100 This is just to test SPARQL Contruct queries. Testing SPARQL Construct queries... prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> construct { ?np rdfs:label ?label . } where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np rdfs:label ?label . } } limit 10 This query returns the posts by the given user. Get posts by given user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?title ?about ?text ?date ?url ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType schema:SocialMediaPosting . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:introduces ?post . ?np np:hasAssertion ?a . } graph ?a { ?post schema:headline ?title . ?post schema:articleBody ?text . ?post schema:datePublished ?date . ?post schema:author ?_author_iri . optional { ?post schema:url ?url . } optional { ?post rdfs:seeAlso ?about . } } } order by desc(?date) This query returns RO-Crate nanopubs. Get RO-Crate nanopubs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?rocrate ?date (?__agent_iri as ?agent) ?np (?__pubkeyhash as ?pubkey) where { graph npa:graph { ?np npx:hasNanopubType npx:RoCrateNanopub . ?np npa:hasValidSignatureForPublicKeyHash ?__pubkeyhash . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?__pubkeyhash . } ?np dct:created ?date . ?np npx:introduces ?rocrate . ?np npx:signedBy ?__agent_iri . } } order by desc(?date) This query returns all paragraphs that are part of a given version of an ontology. Get the paragraphs of an ontology version prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <https://schema.org/> select distinct ?title ?content ?date ?np ("^" as ?np_label) where { graph npa:graph { ?_ontologyVersionNp_iri npx:introduces ?ontologyVersion . ?_ontologyVersionNp_iri np:hasAssertion ?ontologyVersionNpA . } graph ?ontologyVersionNpA { ?ontologyVersion a owl:Ontology . ?ontologyVersion gen:hasContentIndex ?contentIndex . } graph npa:graph { ?contentIndex np:hasAssertion ?contentIndexA . } graph ?contentIndexA { ?contentIndex npx:includesElement ?itemNp . } graph npa:graph { ?itemNp dct:created ?date . ?itemNp npx:introduces ?paragraph . ?itemNp np:hasAssertion ?itemNpA . } graph ?itemNpA { ?paragraph schema:title ?title . ?paragraph a gen:Paragraph . ?paragraph gen:hasContent ?content . } } order by ?title This query returns all named individuals that are part of a given version of an ontology. Get the individuals of an ontology version prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?individual ?individual_label (?definition as ?description) (?termNp as ?np) ("^" as ?np_label) where { graph npa:graph { ?_ontologyVersionNp_iri npx:introduces ?ontologyVersion . ?_ontologyVersionNp_iri np:hasAssertion ?ontologyVersionNpA . } graph ?ontologyVersionNpA { ?ontologyVersion a owl:Ontology . ?ontologyVersion gen:hasContentIndex ?contentIndex . } graph npa:graph { ?contentIndex np:hasAssertion ?contentIndexA . } graph ?contentIndexA { ?contentIndex npx:includesElement ?termNp . } graph npa:graph { } graph npa:graph { ?termNp dct:created ?date . ?termNp npx:introduces ?individual . ?termNp np:hasAssertion ?termNpA . } graph ?termNpA { ?individual a owl:NamedIndividual . optional { ?individual rdfs:label ?individual_label . } optional { ?individual skos:definition ?definition . } } } order by ?individual_label This query returns all properties that are part of a given version of an ontology. Get the properties of an ontology version prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?property ?property_label (?definition as ?description) (?termNp as ?np) ("^" as ?np_label)where { graph npa:graph { ?_ontologyVersionNp_iri npx:introduces ?ontologyVersion . ?_ontologyVersionNp_iri np:hasAssertion ?ontologyVersionNpA . } graph ?ontologyVersionNpA { ?ontologyVersion a owl:Ontology . ?ontologyVersion gen:hasContentIndex ?contentIndex . } graph npa:graph { ?contentIndex np:hasAssertion ?contentIndexA . } graph ?contentIndexA { ?contentIndex npx:includesElement ?termNp . } graph npa:graph { } graph npa:graph { ?termNp dct:created ?date . ?termNp npx:introduces ?property . ?termNp np:hasAssertion ?termNpA . } graph ?termNpA { ?property a rdf:Property . optional { ?property rdfs:label ?property_label . } optional { ?property skos:definition ?definition . } } } order by ?property_label This query returns all classes that are part of a given version of an ontology. Get the classes of an ontology version prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?class ?class_label (?definition as ?description) (?termNp as ?np) ("^" as ?np_label) where { graph npa:graph { ?_ontologyVersionNp_iri npx:introduces ?ontologyVersion . ?_ontologyVersionNp_iri np:hasAssertion ?ontologyVersionNpA . } graph ?ontologyVersionNpA { ?ontologyVersion a owl:Ontology . ?ontologyVersion gen:hasContentIndex ?contentIndex . } graph npa:graph { ?contentIndex np:hasAssertion ?contentIndexA . } graph ?contentIndexA { ?contentIndex npx:includesElement ?termNp . } graph npa:graph { } graph npa:graph { ?termNp dct:created ?date . ?termNp npx:introduces ?class . ?termNp np:hasAssertion ?termNpA . } graph ?termNpA { ?class a owl:Class . optional { ?class rdfs:label ?class_label . } optional { ?class skos:definition ?definition . } } } order by ?class_label This query returns the ontology versions for a given ontology. Get ontology versions prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?ontologyVersion ?ontologyVersion_label ?creator ?np ("^" as ?np_label) where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType owl:Ontology . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?ontologyVersion . ?np npx:signedBy ?creator . } graph ?a { ?ontologyVersion rdfs:label ?ontologyVersion_label . ?ontologyVersion dct:isVersionOf ?_ontology_multi_iri . ?ontologyVersion gen:hasContentIndex ?contentIndex . } } order by desc(?ontologyVersion) This query returns all definition nanopublications that define the elements of a given OWL ontology, like classes and properties, including those that match the namespace and including paragraphs describing the ontology. Get the definitions of an ontology including namespace and descriptions prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> prefix schema: <https://schema.org/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?np ("^" as ?np_label) ?item ?item_label ?creator ?date where { values ?_ontology_multi_iri {} graph npa:graph { values ?itemType { owl:Class rdf:Property owl:ObjectProperty owl:DatatypeProperty owl:NamedIndividual gen:Paragraph } ?np npx:hasNanopubType ?itemType . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?item . optional { ?np npx:signedBy ?creator . } ?np np:hasAssertion ?a . } graph ?a { {{ ?item a ?itemType . filter(strstarts(str(?item), ?__ontologyNamespace)) } union { ?item a ?itemType . ?item dct:partOf|schema:isPartOf ?_ontology_multi_iri . }} optional { ?item rdfs:label|schema:title ?item_label . } } } order by ?label This query returns the events the given user plans to attend. Get planned event attendances prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> select distinct ?event ?event_label ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType gen:plansToAttend . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:signedBy ?_user_iri . ?np np:hasAssertion ?a . } graph ?a { ?_user_iri gen:plansToAttend ?event . optional { ?event rdfs:label ?event_label } optional { ?event dct:date ?date1 } } optional { bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(gen:Space)))) as ?space_repo) service ?space_repo { graph npa:graph { ?nps npx:introduces ?event . ?nps npa:hasValidSignatureForPublicKeyHash ?pks . filter not exists { ?npsx npx:invalidates ?nps ; npa:hasValidSignatureForPublicKeyHash ?pks . } ?nps np:hasAssertion ?as . } graph ?as { ?event schema:startDate ?datetime . bind(xsd:date(substr(str(?datetime), 0, 11)) as ?date2) } } } bind(coalesce(?date1, ?date2) as ?date) } order by desc(?date) Get FAIR-Enabling Resources by type. Get FERs by type (with community count) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?np ?thing ?description ?label ?date ?types ?qualifier (group_concat(distinct ?community; separator=" ") as ?communities) (count(distinct ?community) as ?community_count) where { { select ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } } } { select ?np ?thing ?label ?description ?date (group_concat(distinct ?type; separator=" ") as ?types) where { graph npa:graph { ?np rdfs:label ?label ; dct:description ?description ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . ?np npx:introduces|npx:describes ?thing . filter(str(?date) > "2022") filter exists { ?np npx:hasNanopubType ?fsr_type . values ?fsr_type { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:hasNanopubType ?_type_iri . ?np npx:hasNanopubType ?type . values ?type { fip:Authentication-and-authorization-service fip:Editor fip:FAIR-Representation-Service fip:FAIR-Supporting-Software fip:Identifier-service fip:Provenance-Tracking-Service fip:Registry fip:Validation-Service fip:Web-API fip:Communication-protocol fip:Crosswalk fip:FAIR-Implementation-Profile fip:Knowledge-representation-language fip:Metadata-schema fip:Metadata-data-linking-schema fip:Provenance-model fip:Semantic-model fip:Structured-vocabulary fip:FAIR-Data-Policy fip:Data-usage-license fip:Metadata-preservation-policy fip:Persistency-Policy fip:FAIR-Practice } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } filter not exists { graph ?da { ?disapprover npx:disapprovesOf ?np . } graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } } } group by ?np ?thing ?label ?description ?date } optional { graph ?qa { ?qualifier npx:qualifies ?np . } graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } } optional { graph npa:graph { ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np np:hasAssertion ?decl_a ; npa:hasValidSignatureForPublicKey ?decl_pubkey . filter not exists { ?decl_npx npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?decl_pubkey . } } graph ?decl_a { ?decl a fip:FIP-Declaration . # ---- # not really needed but seems to make query faster: values ?use { fip:declares-current-use-of fip:declares-planned-use-of fip:declares-planned-development-of fip:declares-planned-replacement-of } ?decl ?use ?thing . # ---- ?decl fip:declared-by ?community . } } } group by ?np ?thing ?description ?label ?date ?types ?qualifier order by desc(?community_count) This Construct query returns the definition of an I-Adopt variable, corresponding to the assertion of its defining nanopublication. Get I-Adopt variable definition prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix iadopt: <https://w3id.org/iadopt/ont/> construct { ?subj ?pred ?obj . } where { graph npa:graph { ?np npx:introduces ?_variable_iri . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . filter not exists { ?np2 npx:introduces ?_variable_iri . ?np2 npa:hasValidSignatureForPublicKeyHash ?pubkey2 . filter not exists { ?np2x npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . } ?np2 dct:created ?date2 . filter(?date2 > ?date) } } graph npa:graph { ?np np:hasAssertion ?a . } graph ?a { ?subj ?pred ?obj . } } order by ?subj ?pred ?obj This query returns the co-authors of a given author. Get co-authors prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fabio: <http://purl.org/spar/fabio/> prefix bibo: <http://purl.org/ontology/bibo/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?coauthor ?coauthor_label (count(distinct ?paper) as ?paper_count) where { values ?_author_multi_iri {} graph npa:graph { ?np npx:hasNanopubType fabio:ScholarlyWork . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?paper . } graph ?a { ?paper dct:title ?paper_label . ?paper bibo:authorList ?author_list . ?paper dct:date ?publication_date . ?author_list ?rdfseqpred1 ?_author_multi_iri . filter(strstarts(str(?rdfseqpred1), "http://www.w3.org/1999/02/22-rdf-syntax-ns#_")) ?author_list ?rdfseqpred2 ?coauthor_id . filter(strstarts(str(?rdfseqpred2), "http://www.w3.org/1999/02/22-rdf-syntax-ns#_")) ?coauthor_id foaf:name ?coauthor_label . bind(if(strstarts(str(?coauthor_id), "https://orcid.org/"), ?coauthor_id, ?coauthor_label) as ?coauthor) filter(?coauthor_id != ?_author_multi_iri) optional { ?paper dct:isPartOf ?journal . ?journal dct:title ?journal_label . } } } group by ?coauthor ?coauthor_label order by desc(?paper_count) This query allows for searching for resources (FERs etc.) together with the info about whether GO FAIR qualified them. Find GO FAIR qualified things (with unchecked recommenders) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np (group_concat(distinct ?recommender; separator=" ") as ?recommenders) (group_concat(distinct ?recommendation_np; separator=" ") as ?recommendation_nps) (count(distinct ?recommender) as ?recommender_count) (sample(?fairAssessmentLevel) as ?fairAssessmentLevel) (sample(?fairAssessmentLevelNp) as ?fairAssessmentLevelNp) where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . optional { ?retraction npx:retracts ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } optional { ?newversion npx:supersedes ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np (npx:introduces|npx:describes) ?thing . ?np rdfs:label ?label . ?np dct:description ?description . ?np dct:created ?date . filter(str(?date) > "2022") } bind(concat(" ",lcase(str(?label))," ",lcase(str(?description))," ") as ?text) filter( contains(?text, lcase(str(?_searchterm))) ) optional { graph npa:graph { ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . } graph ?latest_curators_assertion { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph npa:graph { filter not exists { ?disapproval_x npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } ?disapproval np:hasAssertion ?da . } graph ?da { ?dsomebody ( npx:disapproves-of | npx:disapprovesOf ) ?np . } } filter(!bound(?disapproval)) # Faster than "filter not exists" for some reason optional { graph npa:graph { ?recommendation_np npx:hasNanopubType fip:recommended-by . ?recommendation_np npa:hasValidSignatureForPublicKey ?rpubkey . filter not exists { ?recommendation_np_x npx:invalidates ?recommendation_np ; npa:hasValidSignatureForPublicKey ?rpubkey . } ?recommendation_np np:hasAssertion ?ra . ?recommendation_np np:hasProvenance ?rp . } graph ?ra { ?thing fip:recommended-by ?recommender . } #graph ?rp { # ?ra prov:wasDerivedFrom ?rfip_np . #} #graph npa:graph { # ?rfip_np npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . # ?rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . # ?latest_rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . # filter not exists { ?latest_rfip_npx npx:invalidates ?latest_rfip_np ; npa:hasValidSignatureForPublicKey ?rfip_pubkey . } #} #graph npa:networkGraph { # ?latest_rfip_np (npx:supersedes)* ?rfip_np . #} #graph ?rfip_qa { # ?rfip_qualifier npx:qualifies ?latest_rfip_np . #} #graph npa:graph { # ?rfip_qualification_np np:hasAssertion ?rfip_qa . # ?rfip_qualification_np npx:hasNanopubType npx:qualifies . # ?rfip_qualification_np npa:hasValidSignatureForPublicKey ?rfip_qpubkey . # filter not exists { ?rfip_qualification_np_x npx:invalidates ?rfip_qualification_np ; npa:hasValidSignatureForPublicKey ?rfip_qpubkey . } #} #graph ?latest_curators_assertion { # ?rfip_qpubkeys npx:hasPublicKey ?rfip_qpubkey . #} } optional { graph npa:graph { ?qualification_np npx:hasNanopubType npx:qualifies . ?qualification_np npa:hasValidSignatureForPublicKey ?qpubkey . } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph npa:graph { filter not exists { ?qualification_np_x npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } ?qualification_np np:hasAssertion ?qa . } graph ?qa { ?qualifier npx:qualifies ?np . } } optional { graph npa:graph { ?fairAssessmentLevelNp npx:hasNanopubType fip:has-FAIR-assessment . ?fairAssessmentLevelNp npa:hasValidSignatureForPublicKey ?lpubkey . } graph ?latest_curators_assertion { ?lpubkeys npx:hasPublicKey ?lpubkey . } graph npa:graph { filter not exists { ?fairAssessmentLevelNp_x npx:invalidates ?fairAssessmentLevelNp ; npa:hasValidSignatureForPublicKey ?lpubkey . } ?fairAssessmentLevelNp np:hasAssertion ?la . } graph ?la { ?thing fip:has-FAIR-assessment ?fairAssessmentLevel . } } filter(!bound(?levelNp)) # Faster than "filter not exists" for some reason } group by ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np order by desc(?recommender_count) asc(?label) This query returns the uncertainty estimates for datasets. Get uncertainty estimates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix mac: <https://w3id.org/spaces/mac/r/ontology/> select ?dataset ?mz_estimate ?rt_estimate ?i_estimate ?uncertainty_model ?creator ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType mac:uncertainty_model . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np np:hasAssertion ?a . } graph ?a { ?dataset mac:has_mz_uncertainty_estimate ?mz_estimate . ?dataset mac:has_RT_uncertainty_estimate ?rt_estimate . ?dataset mac:has_I_uncertainty_estimate ?i_estimate . ?a dct:conformsTo ?uncertainty_model . } } order by desc(?date) This query returns the environments associated to the given taxon. Get environments for taxon prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix nt: <https://w3id.org/np/o/ntemplate/> select distinct ?relation ?relation_label ?environment ?environment_label ?source ?creator ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType biolink:OrganismTaxonToEnvironmentAssociation . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?association . ?np np:hasAssertion ?a . ?np np:hasProvenance ?p . ?np np:hasPublicationInfo ?i . ?np npx:signedBy ?creator . } graph ?a { ?association a biolink:OrganismTaxonToEnvironmentAssociation . ?association biolink:subject ?taxonConcept . ?taxonConcept biodiv:hasTaxonName ?_taxonname_iri . ?association biolink:predicate ?relation . ?association biolink:object ?environment . } optional { graph ?p { ?a dct:source ?source } } optional { graph ?i { ?relation nt:hasLabelFromApi ?relation_label } } optional { graph ?i { ?environment nt:hasLabelFromApi ?environment_label } } } Returns the number of active users per (approximate) week. Get weekly active user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?approxweek (substr(str(min(?date)), 0, 11) as ?firstday) (count(distinct ?userid) as ?usercount) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . ?np dct:created ?date . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . ?np dct:creator ?tool . values ?tool { <https://fip-wizard.ds-wizard.org/wizard> } } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } bind(xsd:integer((year(?date)*365 + month(?date)*365/12 + day(?date)) / 7) as ?approxweek) } group by ?approxweek order by desc(?approxweek) This query returns all classes that specify to be part of a given ontology or use its namespace. Get the classes of an ontology including via namespace prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select distinct ?class ?class_label (?definition as ?description) ?np ("^" as ?np_label) where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType owl:Class . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?class . ?np np:hasAssertion ?a . } graph ?a { {{ ?class a owl:Class . filter(strstarts(str(?class), ?__ontologyNamespace)) } union { ?class a owl:Class . ?class dct:partOf ?_ontology_multi_iri . }} optional { ?class rdfs:subClassOf ?superclass . } optional { ?class rdfs:label ?class_label . } optional { ?class skos:definition ?definition . } } } order by ?class_label This query returns all the spaces to which the given agent has membership relations Get Spaces for agent prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> select distinct ?space where { values ?_agent_multi_iri {} { { graph npa:graph { ?spaceRole_np npx:hasNanopubType gen:SpaceMemberRole . ?spaceRole_np npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . filter not exists { ?spaceRole_npx npx:invalidates ?spaceRole_np ; npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . } ?spaceRole_np np:hasAssertion ?spaceRole_a . } graph ?spaceRole_a { ?space gen:hasRole ?role . } } union { bind(<https://w3id.org/np/RA_eEJjQbxzSqYSwPzfjzOZi5sMPpUmHskFNsgJYSws8I/adminRole> as ?role) } } graph ?role_a { ?role a gen:SpaceMemberRole . ?role rdfs:label ?roleLabel . ?role dct:title ?roleTitle . ?role schema:name ?roleName . } graph npa:graph { ?role_np npx:embeds ?role . ?role_np np:hasAssertion ?role_a . } { { graph ?role_a { ?role gen:hasRegularProperty ?reg . } graph ?link_a { ?_agent_multi_iri ?reg ?space . } bind(?reg as ?property) bind(false as ?inverse) } union { graph ?role_a { ?role gen:hasInverseProperty ?inv . } graph ?link_a { ?space ?inv ?_agent_multi_iri . } bind(?inv as ?property) bind(true as ?inverse) } } graph npa:graph { ?link_np np:hasAssertion ?link_a . ?link_np npa:hasValidSignatureForPublicKeyHash ?link_pubkey . filter not exists { ?link_npx npx:invalidates ?link_np ; npa:hasValidSignatureForPublicKeyHash ?link_pubkey . } ?link_np dct:created ?link_date . } } order by desc(?link_date) This query returns all the spaces to which the given agent has membership relations, and shows the respective roles. Get Spaces and roles for agent prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> select distinct ?space (group_concat(?role; separator=" ") as ?roles) where { values ?_agent_multi_iri {} { { graph npa:graph { ?spaceRole_np npx:hasNanopubType gen:SpaceMemberRole . ?spaceRole_np npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . filter not exists { ?spaceRole_npx npx:invalidates ?spaceRole_np ; npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . } ?spaceRole_np np:hasAssertion ?spaceRole_a . } graph ?spaceRole_a { ?space gen:hasRole ?role . } } union { bind(<https://w3id.org/np/RA_eEJjQbxzSqYSwPzfjzOZi5sMPpUmHskFNsgJYSws8I/adminRole> as ?role) } } graph ?role_a { ?role a gen:SpaceMemberRole . ?role rdfs:label ?roleLabel . ?role dct:title ?roleTitle . ?role schema:name ?roleName . } graph npa:graph { ?role_np npx:embeds ?role . ?role_np np:hasAssertion ?role_a . } { { graph ?role_a { ?role gen:hasRegularProperty ?reg . } graph ?link_a { ?_agent_multi_iri ?reg ?space . } bind(?reg as ?property) bind(false as ?inverse) } union { graph ?role_a { ?role gen:hasInverseProperty ?inv . } graph ?link_a { ?space ?inv ?_agent_multi_iri . } bind(?inv as ?property) bind(true as ?inverse) } } graph npa:graph { ?link_np np:hasAssertion ?link_a . ?link_np npa:hasValidSignatureForPublicKeyHash ?link_pubkey . filter not exists { ?link_npx npx:invalidates ?link_np ; npa:hasValidSignatureForPublicKeyHash ?link_pubkey . } ?link_np dct:created ?link_date . } } group by ?space order by ?space This query returns all organism associations to the environment of "city". Get urban organism associations prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?relation ?relation_label ?taxon_name ?taxon_name_label ?creator ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType biodiv:OrganismToEnvironmentAssociation . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np dct:creator ?creator . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . optional { ?np rdfs:label ?label } } graph ?a { ?association a biodiv:OrganismToEnvironmentAssociation . ?association biolink:subject ?organism . ?organism a ?taxonConcept . ?taxonConcept biodiv:hasTaxonName ?taxon_name . ?association biolink:predicate ?relation . ?association biolink:object <http://purl.obolibrary.org/obo/ENVO_00000856> . } optional { graph ?i { ?taxon_name nt:hasLabelFromApi ?taxon_name_label . } } optional { graph ?i { ?relation nt:hasLabelFromApi ?relation_label . } } optional { graph ?i { values (?relation ?relation_label) { ( <http://purl.obolibrary.org/obo/RO_0002303> "has habitat" ) } } } } order by desc(?date) This query returns all approaches in AI for Education Get AI in Education approaches prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?approach ?approach_label ?class ?reference ?reference_label ?creator ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType <https://w3id.org/spaces/AI-in-education/r/terms/AI-in-Education-approach> . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np np:hasAssertion ?a . ?np npx:introduces ?approach . } graph ?a { ?approach a <https://w3id.org/spaces/AI-in-education/r/terms/AI-in-Education-approach> . optional { ?approach a ?class . filter(?class != <https://w3id.org/spaces/AI-in-education/r/terms/AI-in-Education-approach>) } ?approach rdfs:label ?approach_label . ?approach dct:source ?reference . ?reference rdfs:label ?reference_label . } } This query returns all taxon-taxon relations according to the BioLink schema. Get all taxon-taxon relation nanopublications prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> select distinct ?np ?label ?subjtaxonname ?subjtaxonlabel ?rel ?objtaxonname ?objtaxonlabel ?source ?date where { graph npa:graph { ?np npx:hasNanopubType biolink:OrganismTaxonToOrganismTaxonAssociation . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasProvenance ?p . ?np np:hasPublicationInfo ?i . optional { ?np rdfs:label ?label } } graph ?a { ?association a biolink:OrganismTaxonToOrganismTaxonAssociation . ?association biolink:subject ?subjtaxon . ?subjtaxon biodiv:hasTaxonName ?subjtaxonname . ?association biolink:predicate ?rel . ?association biolink:object ?objtaxon . ?objtaxon biodiv:hasTaxonName ?objtaxonname . } graph <http://purl.org/np/RAVTdAMPj7oOfekUVyIcrXX9HheGa_0QCC5-PK7Di8DPg/assertion> { ?rel rdfs:label ?rellabel . } optional { graph ?p { ?a prov:wasDerivedFrom ?source } } graph ?i { optional { ?subjtaxonname nt:hasLabelFromApi ?subjtaxonlabel . } optional { ?objtaxonname nt:hasLabelFromApi ?objtaxonlabel . } } } order by desc(?date) This query returns plain-text messages about the given resource. Get messages about resource prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?text (group_concat(concat('<span><a href="', str(?link), '">link</a></span>'); separator=", ") as ?link) ?user ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?user . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?text . values ?_resource_multi_iri {} ?a schema:about ?_resource_multi_iri . optional { ?a rdfs:seeAlso ?link . } } } group by ?text ?user ?date ?np order by desc(?date) This query returns the items of a collection Get items of collection prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?item ?item_label ?type ?source ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType gen:CollectionElement . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?item . } graph ?a { ?item a ?type . filter(?type != gen:CollectionElement) ?item rdfs:label ?item_label . optional { ?item dct:source ?source } values ?_collection_multi_iri {} ?item dct:isPartOf ?_collection_multi_iri . } } order by ?item_label This query returns a filtered list of nanopublications. Get filtered nanopub list (new version) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?date (group_concat(distinct ?t; separator=' ') as ?types) (?__pubkeys_multi as ?pubkey) where { graph npa:graph { values ?__pubkeys_multi {} ?np npa:hasValidSignatureForPublicKeyHash ?__pubkeys_multi . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?__pubkeys_multi . } values ?__types_multi_iri {} ?np npx:hasNanopubType ?__types_multi_iri . ?np npx:hasNanopubType ?t . ?np dct:created ?date . bind(coalesce(?__endtime, "9999") as ?endtime) filter(?endtime > str(?date)) bind(coalesce(?__starttime, "0000") as ?starttime) filter(?starttime < str(?date)) optional { ?np rdfs:label ?label } } } group by ?np ?label ?date ?__pubkeys_multi order by desc(?date) limit 100 This query returns the sub-resources of a Space or Maintained Resource. Get sub-resources of Space or Maintained Resource prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?resource ?resource_label ?entity_main_type ?np where { graph npa:graph { values ?entity_main_type { gen:Space gen:MaintainedResource } ?np npx:hasNanopubType ?entity_main_type . ?np npx:introduces ?resource . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { { { values ?_super_resource_multi_iri {} ?resource a ?entity_main_type . filter(strstarts(str(?resource), concat(str(?_super_resource_multi_iri), "/"))) bind(substr(str(?resource), strlen(str(?_super_resource_multi_iri)) + 2, strlen(str(?resource)) - strlen(str(?_super_resource_multi_iri)) - 1) as ?suffix) filter(!contains(?suffix, "/")) } union { values ?_super_resource_multi_iri {} ?resource a gen:Space . ?resource dct:isPartOf ?_super_resource_multi_iri . } union { values ?_super_resource_multi_iri {} ?resource a gen:MaintainedResource . ?resource gen:isMaintainedBy ?_super_resource_multi_iri . } } filter exists { ?resource a ?__resource_type_iri } ?resource rdfs:label ?resource_label . } } order by ?resource_label This query returns all user IDs, introductions, and associated pubkeys. Get all user intros prefix np: <http://www.nanopub.org/nschema#> prefix npx: <http://purl.org/nanopub/x/> prefix npa: <http://purl.org/nanopub/admin/> prefix dct: <http://purl.org/dc/terms/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?user ?name ?isSoftware ?intronp ?date ?pubkey ?pubkeyHash ?authoritative ?keyLocation where { graph npa:graph { ?intronp npa:hasValidSignatureForPublicKey ?introPubkey . filter not exists { ?intronpx npx:invalidates ?intronp ; npa:hasValidSignatureForPublicKey ?introPubkey . } ?intronp dct:created ?date . ?intronp np:hasAssertion ?a . } graph ?a { ?keydeclaration npx:declaredBy ?user . ?keydeclaration npx:hasPublicKey ?pubkey . optional { ?user foaf:name ?name . } optional { ?keydeclaration npx:hasKeyLocation ?keyLocation . } bind(exists { ?user a npx:SoftwareAgent } as ?isSoftware) } bind(?pubkey = ?introPubkey as ?authoritative) bind(sha256(?pubkey) as ?pubkeyHash) } order by ?user desc(?authoritative) desc(?date) This query returns all collections that are part of the given resource Get collections for resource prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix dcmitype: <http://purl.org/dc/dcmitype/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?collection ?collection_label ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType dcmitype:Collection . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?collection } graph ?a { ?collection a dcmitype:Collection . ?collection rdfs:label ?collection_label . optional { ?collection dct:description ?description } values ?_resource_multi_iri {} ?collection dct:isPartOf|gen:isMaintainedBy ?_resource_multi_iri . } } order by ?collection_label This query returns the latest variables declared according to the I-ADOPT framework. Get latest variables prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix iadopt: <https://w3id.org/iadopt/ont/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?variable (coalesce(?variable_prefLabel, min(?variable_label)) as ?variable_label) ?creator ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType iadopt:Variable . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?variable . ?np npx:signedBy ?creator . } graph ?a { ?variable a iadopt:Variable . optional { ?variable rdfs:label ?variable_label . } optional { ?variable skos:prefLabel ?variable_prefLabel . } } } group by ?variable ?variable_prefLabel ?creator ?np ?date order by desc(?date) This query returns highlights stated according to the Web Annotation Ontology. Get highlights prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix oa: <http://www.w3.org/ns/oa#> select ?comment ?source ?text_quote ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType oa:Annotation . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?annotation . ?np np:hasAssertion ?a . } graph ?a { ?annotation a oa:Annotation . ?annotation oa:motivatedBy oa:highlighting . ?annotation oa:hasBody ?body . ?body rdf:value ?comment . ?annotation oa:hasTarget ?target . ?target oa:hasSource ?source . ?target oa:hasSelector ?selector . ?selector oa:exact ?text_quote . } } order by desc(?date) This query returns the FAIR-Supporting Resources (FSRs) that are recommended by the FAIR community. Get recommended FSRs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?fsr ?fsr_label (group_concat(distinct ?community_link; separator = ', ') as ?communities) where { graph npa:graph { ?np npx:hasNanopubType fip:recommended-by . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?fsr fip:recommended-by ?community . } { select ?fsr ?fsr_label where { { select ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } } } graph npa:graph { ?np npx:introduces|npx:describes ?fsr . ?np rdfs:label ?fsr_label ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . filter(str(?date) > "2022") filter exists { ?np npx:hasNanopubType ?fsr_type . values ?fsr_type { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } filter not exists { graph ?da { ?disapprover npx:disapprovesOf ?np . } graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } } } } { select ?community ?community_label where { graph npa:graph { ?np npx:hasNanopubType fip:FAIR-Implementation-Community . ?np npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; np:hasAssertion ?a . ?np npx:introduces|npx:describes ?community . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?community_label . } } } bind(concat('<span><a href="', str(?community), '">', str(?community_label), '</a></span>') as ?community_link) } group by ?fsr ?fsr_label order by ?fsr_label This query returns all metadata records for datasets. Get all datasets prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?dataset ?dataset_label ?publisher ?np ("^" as ?np_label) where { graph npa:graph { values ?npType { <https://www.w3.org/ns/dcat#Dataset> <https://w3id.org/fair/ff/terms/Dataset> } ?np npx:hasNanopubType ?npType . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?dataset . ?np np:hasAssertion ?a . } graph ?a { ?dataset rdfs:label ?dataset_label . ?dataset dct:publisher ?publisher . } } order by desc(?date) This query returns the favorited things of a given user. Get favorites for user prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix cito: <http://purl.org/spar/cito/> select ?liked_resource ?comment ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType cito:likes . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?_user_iri cito:likes ?liked_resource . optional { ?liked_resource rdfs:comment ?comment . } } } This query returns all reference FAIR Implementation Profiles (rFIPs). Get reference FIPs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix schema: <https://schema.org/> select (?rfip as ?rFIP) (?rfip_label as ?rFIP_label) ?version ?community ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?rfip . } graph ?a { ?rfip a fip:Reference-FAIR-Implementation-Profile . ?rfip rdfs:label ?rfip_label . ?rfip fip:declared-by ?community . optional { ?rfip schema:version ?version . } } } This query returns related things, like datasets, software, and claims, that are linked to the given systematic review. Get related things for systematic review prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?thing ?thing_label ?type ?np ("^" as ?np_label) where { graph npa:graph { ?qnp npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?qnpx npx:invalidates ?qnp ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?qnp dct:created ?date . ?qnp np:hasAssertion ?a . } values ?_systematicReview_multi_iri { } graph ?a { ?_systematicReview_multi_iri sl:targetsResearchQuestion ?research_question . } graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?ppubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?ppubkey . } ?np np:hasAssertion ?pa . } graph ?pa { ?thing a ?type . values ?type { <http://purl.org/petapico/o/hycl#AIDA-Sentence> <http://purl.org/dc/dcmitype/Software> <http://www.w3.org/ns/dcat#Dataset> } ?thing dct:isPartOf ?research_question . optional { ?thing rdfs:label ?label . } optional { ?thing dct:title ?title . } bind(coalesce(?label, ?title) as ?thing_label) } } order by ?type ?thing_label This query returns all communities that have at least one FAIR Implementation Profile (FIP). Get FIP communities prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select ?community ?community_label (count(distinct ?fipnp) as ?fip_count) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; npx:hasNanopubType fip:FAIR-Implementation-Community ; np:hasAssertion ?a . ?np npx:introduces|npx:describes ?community . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?community_label . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/92efd7a0ea4be4e01ec0817ccec87f975203b30addcc3166a204498ffed73b66> { # (https://w3id.org/fair/fip/terms/FAIR-Implementation-Profile) select ?fipnp ?fip ?fiplabel ?community { graph npa:graph { ?fipnp np:hasAssertion ?fa . optional { ?fipnp rdfs:label ?fiplabel . } ?fipnp npx:introduces|npx:describes ?fip . ?fipnp npa:hasValidSignatureForPublicKey ?fpubkey . ?fipnp npx:hasNanopubType fip:FAIR-Implementation-Profile . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?fipnpx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpubkey . } } graph ?fa { ?fip fip:declared-by ?community . } } } } group by ?community ?community_label order by desc(?fip_count) This query returns all full-screening paper comments that are linked to the given systematic review. Get paper comments for systematic review prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?paper ?quoted_text ?comment ?np ("^" as ?np_label) where { graph npa:graph { ?qnp npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?qnpx npx:invalidates ?qnp ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?qnp dct:created ?date . ?qnp np:hasAssertion ?a . } values ?_systematicReview_multi_iri {} graph ?a { ?_systematicReview_multi_iri sl:targetsResearchQuestion ?research_question . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/2c1cce3f3152738c1009d59251409392aaaa3b0324bcb5fdfb4b7b944b8f0c18> { select ?np ?paper ?quoted_text ?comment ?research_question { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?ppubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?ppubkey . } ?np np:hasAssertion ?pa . } graph ?pa { ?paper dct:isPartOf ?research_question . optional { ?paper <http://purl.org/spar/cito/hasQuotedText> ?quoted_text . } ?paper rdfs:comment ?comment . } } } } This query returns all database searches for the given systematic review. Get DB searches for review prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?dbsearch ?dbsearch_label ?dbUrl ?searchQuery ?retrievedRecordCount ?creator ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np npx:introduces ?dbsearch . ?np np:hasAssertion ?a . } values ?_systematicReview_multi_iri {} graph ?a { ?dbsearch a sl:SystematicDatabaseSearch . ?dbsearch rdfs:label ?dbsearch_label . ?dbsearch dct:isPartOf ?_systematicReview_multi_iri . ?dbsearch sl:hasDatabaseUrl ?dbUrl . ?dbsearch sl:hasSearchQuery ?searchQuery . ?dbsearch sl:hasRetrievedRecordCount ?retrievedRecordCount . } } order by ?dbsearch_label This query returns all claims attributed to Leiden University. Get claims attributed to Leiden University prefix prov: <http://www.w3.org/ns/prov#> prefix schema: <https://schema.org/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?claim ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasProvenance ?p . } graph ?a { ?claim a <http://purl.org/petapico/o/hycl#AIDA-Sentence> . } graph ?p { ?a prov:wasAttributedTo <https://ror.org/027bh9e22> . } } This query returns all projects attributed to Leiden University. Get projects attributed to Leiden University prefix prov: <http://www.w3.org/ns/prov#> prefix schema: <https://schema.org/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?project ?project_label ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasProvenance ?p . } graph ?a { ?project a <https://schema.org/ResearchProject> . optional { ?project rdfs:label ?project_label . } } graph ?p { ?a prov:wasAttributedTo <https://ror.org/027bh9e22> . } } This query returns all properties that specify to be part of a given ontology or use its namespace. Get the properties of OWL ontology including namespace prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select distinct ?property ?property_label (?definition as ?description) ?np ("^" as ?np_label) where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType rdf:Property . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?property . ?np np:hasAssertion ?a . } graph ?a { {{ ?property a rdf:Property . filter(strstarts(str(?property), ?__ontologyNamespace)) } union { ?property a rdf:Property . ?property dct:partOf ?_ontology_multi_iri . }} optional { ?property rdfs:label ?property_label . } optional { ?property skos:definition ?definition . } } } order by ?property_label Testing how HTML values show up. HTML test prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select * where { bind("<p>this is a <strong>test</strong></p>" as ?html) } limit 10 This query returns all individuals that specify to be part of a given ontology or use its namespace. Get the individuals of an ontology including via namespace prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select distinct ?individual ?individual_label ?class (coalesce(?desc, ?def) as ?description) ?np ("^" as ?np_label) where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType owl:NamedIndividual . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?individual . ?np np:hasAssertion ?a . } graph ?a { {{ ?individual a owl:NamedIndividual . filter(strstarts(str(?individual), ?__ontologyNamespace)) } union { ?individual a owl:NamedIndividual . ?individual dct:partOf ?_ontology_multi_iri . }} optional { ?individual a ?class . filter(?class != owl:NamedIndividual) } optional { ?individual rdfs:label ?individual_label . } optional { ?individual skos:definition ?def . } optional { ?individual dct:description ?desc . } } } order by ?class ?individual_label This query returns all research questions that are linked to the given systematic review. Get research questions for systematic review prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?research_question ?research_question_label ?np ("^" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } values ?_systematicReview_multi_iri {} graph ?a { ?_systematicReview_multi_iri sl:targetsResearchQuestion ?research_question . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/e7590fad93a7eff7bc7dd8570a694d400662afc24a65294b64dcf614c5d39d94> { select ?research_question ?research_question_label { graph npa:graph { ?rqnp npx:introduces ?research_question . ?rqnp npa:hasValidSignatureForPublicKeyHash ?rqpubkey . filter not exists { ?rqnpx npx:invalidates ?rqnp ; npa:hasValidSignatureForPublicKeyHash ?rqpubkey . } ?rqnp np:hasAssertion ?rqa . } graph ?rqa { ?research_question rdfs:label ?research_question_label . } } } } This query performs a full-text search on the nanopublication. Full-text search prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?__pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?__pubkey . } optional { ?np rdfs:label ?label . } ?np dct:created ?date . } ?np search:matches [ search:query ?_query ; search:property npa:hasFilterLiteral ; search:score ?score ; search:snippet ?snippet ] . } limit 100 This query returns the search strategy (or strategies) for the given systematic review. Get search strategy for systematic review prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?searchStrategy ?searchStrategy_label ?creator ?date ?np ("^" as ?np_label) where { graph npa:graph { ?np npx:hasNanopubType sl:SystematicReviewSearchStrategy . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np npx:introduces ?searchStrategy . ?np rdfs:label ?searchStrategy_label . ?np np:hasAssertion ?a . } values ?_systematicReview_multi_iri {} graph ?a { ?searchStrategy dct:isPartOf ?_systematicReview_multi_iri . } } Testing... Query to test np labeling prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?type ?date ?np ("^" as ?np_label) where { npa:thisRepo ?pred ?obj . graph npa:graph { ?np npx:hasNanopubType ?type . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } } limit 10 This query returns the search execution dataset for the given systematic review. Get search execution dataset prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?dataset ?dataset_label ?dataset_creation_date ?screened_record_count ?fulltext_screened_record_count ?final_included_study_count ?np where { graph npa:graph { ?np npx:hasNanopubType sl:SearchExecutionDataset . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np npx:introduces ?dataset . ?np np:hasAssertion ?a . } values ?_systematicReview_multi_iri {} graph ?a { ?dataset a sl:SearchExecutionDataset . ?dataset dct:isPartOf ?_systematicReview_multi_iri . ?dataset rdfs:label ?dataset_label . ?dataset sl:hasScreenedRecordCount ?screened_record_count . ?dataset sl:hasFulltextScreenedRecordCount ?fulltext_screened_record_count . ?dataset sl:hasFinalIncludedStudyCount ?final_included_study_count . ?dataset dct:created ?dataset_creation_date . } } This queries returns the full list of studies that are selected for full screening for the given systematic review. Get studies selected for full screening prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> prefix disco: <http://rdf-vocabulary.ddialliance.org/discovery#> select ?study ?study_label ?studySource ?np ?date where { graph npa:graph { ?np npx:hasNanopubType sl:selectsForFullScreening . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?_review_iri sl:selectsForFullScreening ?study . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/272b689e2954bc73f05f423720a0c77780db086e9c0d29800105ac87e59b4e14> { graph npa:graph { ?stnp npx:introduces ?study . ?stnp npx:hasNanopubType disco:Study . ?stnp npa:hasValidSignatureForPublicKeyHash ?stpubkey . filter not exists { ?stnpx npx:invalidates ?stnp ; npa:hasValidSignatureForPublicKeyHash ?stpubkey . } ?stnp np:hasAssertion ?sta . } graph ?sta { ?study rdfs:label ?study_label . ?study dct:source ?studySource . } } } order by desc(?date) Searches for concepts in the given SKOS scheme. Find concepts in SKOS scheme prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?thing ?label ?np ?date where { graph npa:graph { ?np npx:hasNanopubType skos:Concept . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?thing . } graph ?a { ?thing a skos:Concept . ?thing skos:inScheme ?_scheme_iri . ?thing skos:prefLabel ?label . filter(contains(?label, ?_searchterm)) } } order by ?conceptLabel This query returns all organism-to-nucleotide-sequence associations. Get Organism to Nucleotide Sequence Associations prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?taxonName ?taxonName_label ?relation ?nucleotideSequence ?creator ?date ?np where { graph npa:graph { ?np npx:hasNanopubType biodiv:OrganismToNucleotideSequenceAssociation . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . ?np npx:introduces ?association . optional { ?np npx:signedBy ?creator . } } graph ?a { ?association a biodiv:OrganismToNucleotideSequenceAssociation . ?association biolink:predicate ?relation . ?association biolink:subject ?organism . ?organism a ?taxonConcept . ?taxonConcept biodiv:hasTaxonName ?taxonName . ?association biolink:object ?nucleotideSequence . } graph ?i { optional { ?taxonName nt:hasLabelFromApi ?taxonName_label } } } order by desc(?date) This query returns the read papers (and comments if applicable) for a given user. Get read papers by user prefix pc: <http://purl.org/petapico/o/paperclub#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?paper ?comment ?np ?date where { graph npa:graph { ?np npx:hasNanopubType pc:hasRead . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?_user_iri . ?np np:hasAssertion ?a . } graph ?a { ?_user_iri pc:hasRead ?paper . optional { ?paper rdfs:comment ?comment . } } } order by desc(?date) This query returns all named individuals that specify to be part of a given ontology or use its namespace. Get the named individuals of an ontology including via namespace prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select distinct ?individual ?individual_label (?definition as ?description) ?np where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType owl:NamedIndividual . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?individual . ?np np:hasAssertion ?a . } graph ?a { {{ ?individual a owl:NamedIndividual . filter(strstarts(str(?individual), ?__ontologyNamespace)) } union { ?individual a owl:NamedIndividual . ?individual dct:partOf ?_ontology_multi_iri . }} optional { ?individual rdfs:label ?individual_label . } optional { ?individual skos:definition ?definition . } } } order by ?individual_label This query returns all Science Live credits. Get all Science Live credits prefix sl: <https://w3id.org/sciencelive/o/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?credit ?points ?awardedAgent ?awardingAgent ?reason ?comment where { graph npa:graph { ?np npx:hasNanopubType sl:ScienceLiveCredit . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?credit . } graph ?a { ?credit a sl:ScienceLiveCredit . ?credit sl:hasCreditPoints ?points . ?credit sl:isAwardedTo ?awardedAgent . ?credit sl:isAwardedBy ?awardingAgent . ?credit sl:isAwardedFor ?reason . ?credit rdfs:comment ?comment . } } This query returns all Science Live credits. Get all Science Live credits prefix sl: <https://w3id.org/sciencelive/o/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?credit ?points ?awardedAgent ?awardingAgent ?reason ?comment where { graph npa:graph { ?np npx:hasNanopubType sl:ScienceLiveCredit . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?credit . } graph ?a { ?credit a sl:ScienceLiveCredit . ?credit sl:hasCreditPoints ?points . ?credit sl:isAwardedTo ?awardedAgent . ?credit sl:isAwardedBy ?awardingAgent . ?credit sl:isAwardedFor ?reason . ?credit rdfs:comment ?comment . } } This query returns all properties that specify to be part of a given ontology. Get the properties of an ontology prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?property ?property_label ?domain ?range (?definition as ?description) ?np where { values ?_ontology_multi_iri {} graph npa:graph { ?np npx:hasNanopubType rdf:Property . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?property . ?np np:hasAssertion ?a . } graph ?a { ?property dct:partOf ?_ontology_multi_iri . optional { ?property skos:definition ?definition . } optional { ?property rdfs:label ?property_label . } optional { ?property rdfs:domain ?domain . } optional { ?property rdfs:range ?range . } } } order by ?property_label This query returns all nanopub services announced in nanopublications. Get all nanopub services (simple view) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?service ?service_label ?serviceType ?np where { graph npa:graph { ?np npx:hasNanopubType npx:NanopubService . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } optional { ?np dct:created ?date . } ?np np:hasAssertion ?a . } graph ?a { ?service a npx:NanopubService . ?service a ?serviceType . ?service rdfs:label ?service_label . filter(?serviceType != npx:NanopubService) } } order by ?service_label This query returns all instances of Space membership instances. Get all Space membership instances prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> select (?__agent_multi_iri as ?agent) ?role ?roleName ?property ?inverse (?__space_multi_iri as ?space) where { values ?__space_multi_iri {} values ?__agent_multi_iri {} { { graph npa:graph { ?spaceRole_np npx:hasNanopubType gen:SpaceMemberRole . ?spaceRole_np npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . filter not exists { ?spaceRole_npx npx:invalidates ?spaceRole_np ; npa:hasValidSignatureForPublicKeyHash ?spaceRole_pubkey . } ?spaceRole_np np:hasAssertion ?spaceRole_a . } graph ?spaceRole_a { ?__space_multi_iri gen:hasRole ?role . } } union { bind(<https://w3id.org/np/RA_eEJjQbxzSqYSwPzfjzOZi5sMPpUmHskFNsgJYSws8I/adminRole> as ?role) } } graph ?role_a { ?role a gen:SpaceMemberRole . ?role rdfs:label ?roleLabel . ?role dct:title ?roleTitle . ?role schema:name ?roleName . } graph npa:graph { ?role_np npx:embeds ?role . ?role_np np:hasAssertion ?role_a . } { { graph ?role_a { ?role gen:hasRegularProperty ?reg . } graph ?link_a { ?__agent_multi_iri ?reg ?__space_multi_iri . } bind(?reg as ?property) bind(false as ?inverse) } union { graph ?role_a { ?role gen:hasInverseProperty ?inv . } graph ?link_a { ?__space_multi_iri ?inv ?__agent_multi_iri . } bind(?inv as ?property) bind(true as ?inverse) } } graph npa:graph { ?link_np np:hasAssertion ?link_a . ?link_np npa:hasValidSignatureForPublicKeyHash ?link_pubkey . filter not exists { ?link_npx npx:invalidates ?link_np ; npa:hasValidSignatureForPublicKeyHash ?link_pubkey . } } } Get FAIR-Enabling Resources by type. Get FERs by type (simple result) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?resource ?resource_label ?types ?qualifier (group_concat(distinct ?community; separator=" ") as ?communities) ?date ?np where { { select ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } } } { select ?np ?resource ?resource_label ?description ?date (group_concat(distinct ?type; separator=" ") as ?types) where { graph npa:graph { ?np rdfs:label ?resource_label ; dct:description ?description ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . ?np npx:introduces|npx:describes ?resource . filter(str(?date) > "2022") filter exists { ?np npx:hasNanopubType ?fsr_type . values ?fsr_type { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:hasNanopubType ?_type_iri . ?np npx:hasNanopubType ?type . values ?type { fip:Authentication-and-authorization-service fip:Editor fip:FAIR-Representation-Service fip:FAIR-Supporting-Software fip:Identifier-service fip:Provenance-Tracking-Service fip:Registry fip:Validation-Service fip:Web-API fip:Communication-protocol fip:Crosswalk fip:FAIR-Implementation-Profile fip:Knowledge-representation-language fip:Metadata-schema fip:Metadata-data-linking-schema fip:Provenance-model fip:Semantic-model fip:Structured-vocabulary fip:FAIR-Data-Policy fip:Data-usage-license fip:Metadata-preservation-policy fip:Persistency-Policy fip:FAIR-Practice } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } filter not exists { graph ?da { ?disapprover npx:disapprovesOf ?np . } graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } } } group by ?np ?resource ?resource_label ?description ?date } optional { graph ?qa { ?qualifier npx:qualifies ?np . } graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } } optional { graph npa:graph { ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np np:hasAssertion ?decl_a ; npa:hasValidSignatureForPublicKey ?decl_pubkey . filter not exists { ?decl_npx npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?decl_pubkey . } } graph ?decl_a { ?decl a fip:FIP-Declaration . # ---- # not really needed but seems to make query faster: values ?use { fip:declares-current-use-of fip:declares-planned-use-of fip:declares-planned-development-of fip:declares-planned-replacement-of } ?decl ?use ?resource . # ---- ?decl fip:declared-by ?community . } } } group by ?np ?resource ?resource_label ?date ?types ?qualifier ?maxscore order by desc(?maxscore) This query returns the instances assigned to the given class. Get instances for class (simple result) prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?instance ?instance_label ?date ?np where { graph ?g { ?instance a ?_class_iri . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasGraph ?g . ?np np:hasPublicationInfo ?i . ?np dct:created ?date . } optional { graph ?g { ?instance rdfs:label ?instanceLabel1 . } } optional { graph ?g { ?instance dct:title ?instanceLabel2 . } } optional { graph ?i { ?instance rdfs:label ?instanceLabel3 . } } optional { graph ?i { ?instance nt:hasLabelFromApi ?instanceLabel4 . } } bind(coalesce(?instanceLabel1, ?instanceLabel2, ?instanceLabel3, ?instanceLabel4) as ?instance_label) } order by desc(?date) This query returns all the view displays declared for a given resource. Get view displays prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select distinct ?display ?view (coalesce(?viewKindOptional, ?view) as ?viewKind) ?label ?displayType ?displayMode ?np ?pubkey ?date where { values ?_resource_multi_iri {} graph npa:graph { ?np npx:hasNanopubType gen:ViewDisplay . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:embeds ?display . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { ?display gen:isDisplayOfView ?view . ?display gen:isDisplayFor ?_resource_multi_iri . optional { values ?displayType { gen:PartLevelViewDisplay gen:TopLevelViewDisplay } ?display a ?displayType . } optional { values ?displayMode { gen:ActivatedViewDisplay gen:DeactivatedViewDisplay } ?display a ?displayMode . } } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/ec6722efa3b44e0a18aa63afe5964158a1fdb7f0413ea5f23bfddf5c03ca0221> { select ?view ?viewKindOptional { graph npa:graph { ?np npx:hasNanopubType gen:ResourceView . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:embeds ?view . ?np np:hasAssertion ?a . } graph ?a { ?view a gen:ResourceView . ?view dct:isVersionOf ?viewKindOptional . } } } } } order by desc(?date) This query performs a full-text search on the things embedded in nanopublications. Full-text search on embedded things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:embeds ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 10 This query returns the study assessment datasets according to PRISMA for the given systematic review. Get study assessment datasets prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?studyAssessmentDataset ?studyAssessmentDataset_label ?np ?creator ?date where { graph npa:graph { ?np npx:hasNanopubType sl:StudyAssessmentDataset . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np npx:introduces ?studyAssessmentDataset . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?studyAssessmentDataset_label } } values ?_systematicReview_multi_iri {} graph ?a { ?studyAssessmentDataset dct:isPartOf ?_systematicReview_multi_iri . } } This query returns the studies included in the given systematic review. Get studies of systematic review prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix disco: <http://rdf-vocabulary.ddialliance.org/discovery#> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?study ?study_label ?np ?creator ?date where { graph npa:graph { ?np npx:hasNanopubType disco:Study . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?study . ?np npx:signedBy ?creator . } values ?_systematicReview_multi_iri {} graph ?a { ?study a disco:Study . ?study rdfs:label ?study_label . ?study dct:source ?source . ?_systematicReview_multi_iri sl:includesStudy ?study . } } This query returns a list of all RO-Crates. Get RO-Crate list prefix schema: <http://schema.org/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?rocrate ?rocrate_label ?np ?date where { graph npa:graph { ?np npx:hasNanopubType npx:RoCrateNanopub . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?rocrate . ?np np:hasAssertion ?a . } graph ?a { ?rocrate schema:name ?rocrate_label . } } order by desc(?date) This query returns all chemicals defined in the given ontology. Get chemicals for ontology prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?chemical ?chemical_label ?np where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?chemical . optional { ?np rdfs:label ?label } } values ?_ontology_multi_iri {} graph ?a { ?chemical rdfs:label ?chemical_label . ?chemical dct:isPartOf ?_ontology_multi_iri . } } This query returns PICO questions based on a search query on its population field Get PICO question by population query prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix pico: <http://data.cochrane.org/ontologies/pico/> select ?question ?populationDescription ?np ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?question . ?np npx:signedBy ?creator . optional { ?np rdfs:label ?label } } graph ?a { ?question pico:population ?population . ?population dct:description ?populationDescription . } filter(contains(?populationDescription, ?_populationQuery)) } This query allows for searching for resources (FERs etc.) together with the info about whether GO FAIR qualified them. Find GO FAIR qualified things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np (group_concat(distinct ?recommender; separator=" ") as ?recommenders) (group_concat(distinct ?recommendation_np; separator=" ") as ?recommendation_nps) (count(distinct ?recommender) as ?recommender_count) (sample(?fairAssessmentLevel) as ?fairAssessmentLevel) (sample(?fairAssessmentLevelNp) as ?fairAssessmentLevelNp) where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . optional { ?retraction npx:retracts ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } optional { ?newversion npx:supersedes ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np (npx:introduces|npx:describes) ?thing . ?np rdfs:label ?label . ?np dct:description ?description . ?np dct:created ?date . filter(str(?date) > "2022") } bind(concat(" ",lcase(str(?label))," ",lcase(str(?description))," ") as ?text) filter( contains(?text, lcase(str(?_searchterm))) ) optional { graph npa:graph { ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . } graph ?latest_curators_assertion { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph npa:graph { filter not exists { ?disapproval_x npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } ?disapproval np:hasAssertion ?da . } graph ?da { ?dsomebody ( npx:disapproves-of | npx:disapprovesOf ) ?np . } } filter(!bound(?disapproval)) # Faster than "filter not exists" for some reason optional { optional { graph npa:graph { ?recommendation_np npx:hasNanopubType fip:recommended-by . ?recommendation_np npa:hasValidSignatureForPublicKey ?rpubkey . filter not exists { ?recommendation_np_x npx:invalidates ?recommendation_np ; npa:hasValidSignatureForPublicKey ?rpubkey . } ?recommendation_np np:hasAssertion ?ra . ?recommendation_np np:hasProvenance ?rp . } graph ?ra { ?thing fip:recommended-by ?recommender . } graph ?rp { ?ra prov:wasDerivedFrom ?rfip_np . } graph npa:graph { ?rfip_np npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . ?latest_rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . filter not exists { ?latest_rfip_npx npx:invalidates ?latest_rfip_np ; npa:hasValidSignatureForPublicKey ?rfip_pubkey . } } graph npa:networkGraph { ?latest_rfip_np (npx:supersedes)* ?rfip_np . } graph ?rfip_qa { ?rfip_qualifier npx:qualifies ?latest_rfip_np . } graph npa:graph { ?rfip_qualification_np np:hasAssertion ?rfip_qa . ?rfip_qualification_np npx:hasNanopubType npx:qualifies . ?rfip_qualification_np npa:hasValidSignatureForPublicKey ?rfip_qpubkey . filter not exists { ?rfip_qualification_np_x npx:invalidates ?rfip_qualification_np ; npa:hasValidSignatureForPublicKey ?rfip_qpubkey . } } graph ?latest_curators_assertion { ?rfip_qpubkeys npx:hasPublicKey ?rfip_qpubkey . } } graph npa:graph { ?qualification_np npx:hasNanopubType npx:qualifies . ?qualification_np npa:hasValidSignatureForPublicKey ?qpubkey . } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph npa:graph { filter not exists { ?qualification_np_x npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } ?qualification_np np:hasAssertion ?qa . } graph ?qa { ?qualifier npx:qualifies ?np . } } optional { graph npa:graph { ?fairAssessmentLevelNp npx:hasNanopubType fip:has-FAIR-assessment . ?fairAssessmentLevelNp npa:hasValidSignatureForPublicKey ?lpubkey . } graph ?latest_curators_assertion { ?lpubkeys npx:hasPublicKey ?lpubkey . } graph npa:graph { filter not exists { ?fairAssessmentLevelNp_x npx:invalidates ?fairAssessmentLevelNp ; npa:hasValidSignatureForPublicKey ?lpubkey . } ?fairAssessmentLevelNp np:hasAssertion ?la . } graph ?la { ?thing fip:has-FAIR-assessment ?fairAssessmentLevel . } } filter(!bound(?levelNp)) # Faster than "filter not exists" for some reason } group by ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np order by desc(?recommender_count) asc(?label) This query returns all search strategies for systematic reviews. Get systematic review search strategies prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix sl: <https://w3id.org/sciencelive/o/terms/> select ?searchStrategy ?searchStrategy_label ?creator ?date ?np where { graph npa:graph { ?np npx:hasNanopubType sl:SystematicReviewSearchStrategy . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np npx:introduces ?searchStrategy . ?np rdfs:label ?searchStrategy_label . } } This query returns all PICO-based research questions. Get PICO research questions prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix pico: <http://data.cochrane.org/ontologies/pico/> select ?question ?question_label ?creator ?date ?np where { graph npa:graph { ?np npx:hasNanopubType pico:PICO . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:signedBy ?creator . ?np npx:introduces ?question . ?np rdfs:label ?question_label . } } This query returns all definition nanopublications that define the elements of a given OWL ontology, like classes and properties. Get the definitions of an ontology prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select distinct ?np ?term ?term_label ?creator ?date where { values ?_ontology_multi_iri {} graph npa:graph { values ?termType { owl:Class rdf:Property owl:ObjectProperty owl:DatatypeProperty owl:NamedIndividual } ?np npx:hasNanopubType ?termType . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?term . ?np npx:signedBy ?creator . ?np np:hasAssertion ?a . } graph ?a { ?term dct:partOf ?_ontology_multi_iri . optional { ?term rdfs:label ?term_label . } } } order by ?label This query returns the nanopublication indexes that are declared to be part of a given resource Get indexes for resource prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np (min(?label) as ?np_label) (count(?element) as ?size) ?creator ?date where { values ?_resource_multi_iri {} graph npa:graph { ?np npx:hasNanopubType npx:NanopubIndex . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np rdfs:label ?label . ?np npx:signedBy ?creator . } graph ?a { ?np dct:isPartOf ?_resource_multi_iri . ?np npx:includesElement ?element . } } group by ?np ?creator ?date This query returns the publications that are part of the given outlet (e.g. journal). Get the publications for outlet prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fabio: <http://purl.org/spar/fabio/> select ?publication ?publication_label ?publicationDate where { values ?_outlet_multi_iri {} graph npa:graph { ?np npx:hasNanopubType fabio:ScholarlyWork . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np npx:introduces ?publication . ?np np:hasAssertion ?a . } graph ?a { ?publication dct:title ?publication_label . ?publication dct:date ?publicationDate . ?publication dct:isPartOf ?_outlet_multi_iri . } } order by desc(?publicationDate) This query returns the FAIR Implementation Profiles (FIPs) per scientific domain. FIP by domain prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?fipnp ?fip ?fip_label ?community (min(?communitylabel) as ?community_label) (group_concat(distinct ?domain; separator=" ") as ?domains) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; npx:hasNanopubType fip:FAIR-Implementation-Community ; np:hasAssertion ?a . ?np npx:introduces|npx:describes ?community . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?communitylabel ; fip:has-research-domain ?domain . ?community fip:has-research-domain ?domainx . } graph <http://purl.org/np/RArRAOwj4QOppEPCR8WVvOBmrX7oRKOrPi-asX-7AY66I#assertion> { ?domainx rdfs:subClassOf* ?_domain_iri . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/92efd7a0ea4be4e01ec0817ccec87f975203b30addcc3166a204498ffed73b66> { # (https://w3id.org/fair/fip/terms/FAIR-Implementation-Profile) select ?fipnp ?fip ?fip_label ?community { graph npa:graph { ?fipnp np:hasAssertion ?fa . optional { ?fipnp rdfs:label ?fip_label . } ?fipnp npx:introduces|npx:describes ?fip . ?fipnp npa:hasValidSignatureForPublicKey ?fpubkey . ?fipnp npx:hasNanopubType fip:FAIR-Implementation-Profile . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?fipnpx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpubkey . } } graph ?fa { ?fip fip:declared-by ?community . } } } } group by ?fipnp ?fip ?fip_label ?community This query returns the domains of all FAIR Implementation Profiles (FIPs). Get FIP domains prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select ?domain ?domain_label (count(distinct ?fipnp) as ?count) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; npx:hasNanopubType fip:FAIR-Implementation-Community ; np:hasAssertion ?a . ?np npx:introduces|npx:describes ?community . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?communitylabel . ?community fip:has-research-domain ?domainx . } graph <http://purl.org/np/RArRAOwj4QOppEPCR8WVvOBmrX7oRKOrPi-asX-7AY66I#assertion> { ?domainx rdfs:subClassOf* ?domain . } graph <https://w3id.org/np/RAGL6Knsrg3GPi4Guhkn4NRXLxgGxoHngDXYwcrG3lUMA#assertion> { ?domain rdfs:label ?domain_label . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/92efd7a0ea4be4e01ec0817ccec87f975203b30addcc3166a204498ffed73b66> { # (https://w3id.org/fair/fip/terms/FAIR-Implementation-Profile) select ?fipnp ?fip ?fiplabel ?community { graph npa:graph { ?fipnp np:hasAssertion ?fa . optional { ?fipnp rdfs:label ?fiplabel . } ?fipnp npx:introduces|npx:describes ?fip . ?fipnp npa:hasValidSignatureForPublicKey ?fpubkey . ?fipnp npx:hasNanopubType fip:FAIR-Implementation-Profile . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?fipnpx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpubkey . } } graph ?fa { ?fip fip:declared-by ?community . } } } } group by ?domain ?domain_label order by desc(?count) This query returns the domains of all FIP communities. Get FIP community domains prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> select ?domain ?domain_label (count(distinct ?np) as ?count) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; npx:hasNanopubType fip:FAIR-Implementation-Community ; np:hasAssertion ?a . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?label ; rdfs:comment ?comment ; fip:has-research-domain ?domain . } graph <https://w3id.org/np/RAGL6Knsrg3GPi4Guhkn4NRXLxgGxoHngDXYwcrG3lUMA#assertion> { ?domain rdfs:label ?domain_label . } } group by ?domain ?domain_label order by desc(?count) This query returns all concepts that specify to be in the given SKOS scheme. Get the concepts of a SKOS scheme prefix owl: <http://www.w3.org/2002/07/owl#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix skos: <http://www.w3.org/2004/02/skos/core#> select ?concept ?label ?broaderConcept (?definition as ?description) ?np (group_concat(?flagLabel; separator=" ") as ?flags) where { values ?_scheme_multi_iri {} graph npa:graph { ?np npx:hasNanopubType skos:Concept . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?concept . ?np np:hasAssertion ?a . } optional { graph npa:graph { values (?flag ?flagLabel) { ( npx:ExampleNanopub "Example") ( npx:DraftNanopub "Draft") } ?np npx:hasNanopubType ?flag . } } graph ?a { ?concept skos:inScheme ?_scheme_multi_iri . optional { ?concept skos:broader ?broaderConcept . } optional { ?concept skos:prefLabel ?label . } optional { ?concept skos:definition ?definition . } } } group by ?concept ?label ?broaderConcept ?definition ?np order by ?label This query returns all Spaces, i.e. groups, projects, events, etc. Get Spaces prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?space ?label ?type ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?space . ?np npx:hasNanopubType <https://w3id.org/kpxl/gen/terms/Space> . ?np npx:hasNanopubType ?__type_iri . filter(strstarts(str(?__type_iri), "https://w3id.org/kpxl/gen/terms/")) filter(?__type_iri != <https://w3id.org/kpxl/gen/terms/Space>) bind(?__type_iri as ?type) ?np rdfs:label ?label . ?np np:hasAssertion ?a . filter not exists { ?npx npx:introduces ?space . ?npx dct:created ?datex . filter(?datex > ?date) } } } order by ?label This query returns the relations (predicate-object) of the assertion part of an introduction nanopublication for a given resource. Get intro relations prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?pred ?obj where { bind(?_resourceNp_iri as ?np) graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np np:hasAssertion ?a . ?np npx:introduces ?_resource_iri . } graph ?a { ?_resource_iri ?pred ?obj . } } This query returns all the nanopubs that introduce, describe, or embed the given term. Get term definitions prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?npLabel ?creator ?date where { values ?__pubkey_multi {} graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?__pubkey_multi . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?__pubkey_multi . } ?np dct:created ?date . ?np npx:introduces|npx:describes|npx:embeds ?_term_iri . optional { ?np rdfs:label ?npLabel . } optional { ?np npx:signedBy ?creator . } } } order by desc(?date) This query returns all maintained resources and their nanopublications, optionally filtered by space. Get maintained resources prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?resource ?label (?__space_multi_iri as ?space) ?namespace ?np ?pubkey ?date where { values ?__space_multi_iri {} graph npa:graph { ?np npx:hasNanopubType gen:MaintainedResource . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?resource . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { ?resource gen:isMaintainedBy ?__space_multi_iri . optional { ?resource gen:hasNamespace ?namespace . } } } order by desc(?date) The query returns all FAIR Supporting Resources (FSRs). Get all FSRs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description (group_concat(distinct ?type; separator=" ") as ?types) ?np ?date where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np rdfs:label ?label ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . ?np npx:introduces|npx:describes ?thing . filter(str(?date) > "2022") filter exists { ?np npx:hasNanopubType ?fsr_type . values ?fsr_type { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource fip:Available-FAIR-Enabling-Resource } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:hasNanopubType ?type . filter(?type != fip:FAIR-Enabling-Resource) filter(?type != fip:Available-FAIR-Enabling-Resource) filter(?type != fip:FAIR-Enabling-Resource-to-be-Developed) filter(?type != fip:FAIR-Supporting-Resource) filter(?type != fip:Available-FAIR-Supporting-Resource) filter(?type != fip:FAIR-Supporting-Resource-to-be-Developed) filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np np:hasAssertion ?a . } graph ?a { ?thing rdfs:comment ?description . } filter not exists { graph npa:graph { ?disapproval_np npx:hasNanopubType <http://purl.org/nanopub/x/disapprovesOf> . ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?disapprover npx:disapprovesOf ?np . } } } group by ?np ?thing ?description ?label ?date order by ?label This query runs a text search on templates. Search templates prefix nt: <https://w3id.org/np/o/ntemplate/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?pubkey ?date where { graph npa:graph { ?thing npx:hasNanopubType nt:AssertionTemplate . filter not exists { ?thing npx:hasNanopubType nt:UnlistedTemplate . } ?thing npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?thing ; npa:hasValidSignatureForPublicKey ?pubkey . } ?thing dct:created ?date . ?thing rdfs:label ?label . optional { ?thing dct:description ?description . } } ?thing search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 10 This query returns all highlighted implied relations published as Web Annotations. Get highlighted implied relations prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix oa: <http://www.w3.org/ns/oa#> select ?subject ?predicate ?object ?source ?np ?label ?annotator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:introduces ?annotation . ?np npx:signedBy ?annotator . optional { ?np rdfs:label ?label } } graph ?a { ?annotation a oa:Annotation . ?annotation oa:motivatedBy oa:highlighting . ?annotation oa:hasTarget ?target . optional { ?target oa:hasSource ?sourcex . } bind(coalesce(?sourcex, ?target) as ?source) ?annotation oa:hasBody ?relation . ?relation rdf:subject ?subject . ?relation rdf:predicate ?predicate . ?relation rdf:object ?object . } } order by desc(?date) This query returns all FAIR Communities. Get all FAIR Communities prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?communityLabel ?community ?np where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np rdfs:label ?communityLabel ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; npx:hasNanopubType fip:FAIR-Implementation-Community ; npx:introduces ?community ; np:hasAssertion ?a . ?np dct:created ?date . filter(str(?date) > "2022") filter(strends(str(?date), "Z")) filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } filter not exists { graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?disapprover npx:disapprovesOf ?np . } } } order by ?communityLabel This query returns the roles of a given Space. Get Space member roles prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> prefix schema: <http://schema.org/> select ?role ?roleLabel ?roleName ?roleTitle ?roleAssignmentTemplate (group_concat(?reg; separator=' ') as ?regularProperties) (group_concat(?inv; separator=' ') as ?inverseProperties) ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?rel_a . } graph ?rel_a { values ?_space_multi_iri {} ?_space_multi_iri gen:hasRole ?role . } graph npa:graph { ?role_np npx:embeds ?role . ?role_np np:hasAssertion ?role_a . } graph ?role_a { ?role a gen:SpaceMemberRole . ?role rdfs:label ?roleLabel . ?role dct:title ?roleTitle . ?role schema:name ?roleName . optional { ?role gen:hasRoleAssignmentTemplate ?roleAssignmentTemplate } optional { ?role gen:hasRegularProperty ?reg } optional { ?role gen:hasInverseProperty ?inv } } } group by ?role ?roleLabel ?roleName ?roleTitle ?roleAssignmentTemplate ?np ?pubkey ?date order by desc(?date) This query returns plain-text messages about the given Space. Get messages about Space prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?text ?np ?user ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?user . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?text . values ?_space_multi_iri {} ?a schema:about ?_space_multi_iri . } } order by desc(?date) This query returns all the view declarations for a given Space. Get views for Space prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?query ?title ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?view a gen:SpaceQueryView . ?view dct:title ?title . ?view gen:hasViewQuery ?query . values ?_space_multi_iri {} ?view gen:isViewForSpace ?_space_multi_iri . } } order by desc(?date) This query returns an monthly overview of published nanopublications by types for the past 12 months for the given pubkey hashes. Get type overview of monthly nanopubs by pubkeys prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?type ?month ?npCount ?npCountType where { { select ?type ?month (count(?np) as ?npCount) where { graph npa:graph { values ?_pubkey_multi {} ?np npa:hasValidSignatureForPublicKeyHash ?_pubkey_multi . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?_pubkey_multi . } ?np dct:created ?date . ?np npx:hasNanopubType ?type . bind(substr(str(?date), 0, 8) as ?month) bind(now() as ?now) bind(concat(str(year(?now)), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?lastMonth) bind(concat(str(year(?now)-1), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?firstMonth) filter(?month > ?firstMonth && ?month <= ?lastMonth) } } group by ?type ?month order by ?type desc(?month) } { select ?type (count(?np) as ?npCountType) where { graph npa:graph { values ?_pubkey_multi {} ?np npa:hasValidSignatureForPublicKeyHash ?_pubkey_multi . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?_pubkey_multi . } ?np dct:created ?date . ?np npx:hasNanopubType ?type . bind(substr(str(?date), 0, 8) as ?month) bind(now() as ?now) bind(concat(str(year(?now)), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?lastMonth) bind(concat(str(year(?now)-1), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?firstMonth) filter(?month > ?firstMonth && ?month <= ?lastMonth) } } group by ?type order by desc(?npCountType) } } order by desc(?npCountType) ?type desc(?month) This query returns plain-text messages about Lecture 9 of Knowledge Organization. Messages about Lecture 9 of Knowledge Organization prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?text ?np ?user ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?user . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?text . ?a schema:about <https://w3id.org/spaces/knowledgepixels/ko2025lecture9> . } } order by desc(?date) This query returns the latest nanopublications by pubkey hashes. Get the latest nanopubs by pubkeys prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?date where { graph npa:graph { values ?_memberHash_multi {} ?np npa:hasValidSignatureForPublicKeyHash ?_memberHash_multi . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?_memberHash_multi . } ?np dct:created ?date . optional { ?np rdfs:label ?label . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } order by desc(?date) limit 100 This query returns the roles of a given Space. Get Space member roles (obsolete) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?role ?roleName ?isInverse (group_concat(?eq; separator=' ') as ?equivalent) (group_concat(?inv; separator=' ') as ?inverse) ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?role a gen:SpaceMemberRole . ?role dct:title ?roleName . values ?_space_multi_iri {} ?role gen:isRoleOf ?_space_multi_iri . bind( exists { ?role a gen:InverseSpaceMemberRole } as ?isInverse ) optional { ?role owl:equivalentProperty ?eq } optional { ?role owl:inverseOf ?inv } } } group by ?role ?roleName ?isInverse ?np ?pubkey ?date order by desc(?date) This query returns plain-text messages about the Nano Session #24. Messages about Nano Session #24 prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?text ?np ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np dct:creator ?creator . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?text . ?a schema:about <https://w3id.org/spaces/nanopub/nanosessions/session24> . } } order by desc(?date) This query returns all the view declarations for a given Space. Get views for Space prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?query ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { values ?_space_multi_iri {} ?_space_multi_iri gen:hasView ?query . } } order by desc(?date) This query returns all pinned template declarations for the given Spaces. Get pinned templates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?template ?tag ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { values ?_space_multi_iri {} ?_space_multi_iri gen:hasPinnedTemplate ?template . optional { ?template gen:hasPinGroupTag ?tag . } } } order by desc(?date) This query returns all pinned querie declarations for the given Space. Get pinned queries prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?query ?tag ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { values ?_space_multi_iri {} ?_space_multi_iri gen:hasPinnedQuery ?query . optional { ?query gen:hasPinGroupTag ?tag . } } } order by desc(?date) This query returns the members (of different roles) of a given Space. Get Space members prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?member ?role ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } values ?_space_multi_iri {} { { graph ?a { values ?__role_multi_iri {} filter(bound(?__role_multi_iri)) bind(?__role_multi_iri as ?r) ?member ?r ?_space_multi_iri . bind(?r as ?role) } } union { graph ?a { values ?__invrole_multi_iri {} filter(bound(?__invrole_multi_iri)) bind(?__invrole_multi_iri as ?i) ?_space_multi_iri ?i ?member . bind(?i as ?role) } } } } order by desc(?date) This query returns the admins of a given unit. Get admins prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix gen: <https://w3id.org/kpxl/gen/terms/> select ?admin ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { values ?_space_multi_iri {} ?_space_multi_iri gen:hasAdmin ?admin . } } Optional multi-placeholder test Optional multi-placeholder test prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?date where { graph npa:graph { values ?__type_multi_iri {} ?np npx:hasNanopubType ?__type_multi_iri . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . optional { ?np rdfs:label ?label } } } order by desc(?date) limit 100 Multi-placeholder test Multi-placeholder test prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?date where { graph npa:graph { values ?_type_multi_iri {} ?np npx:hasNanopubType ?_type_multi_iri . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . optional { ?np rdfs:label ?label } } } order by desc(?date) limit 100 This query returns the 10 nanopublications that were most recently published. Get the most recent nanopublications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . optional { ?np rdfs:label ?label . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } order by desc(?date) limit 100 This query returns the latest users who have introduced themselves in an intro nanopub. Get latest users prefix np: <http://www.nanopub.org/nschema#> prefix npx: <http://purl.org/nanopub/x/> prefix npa: <http://purl.org/nanopub/admin/> prefix dct: <http://purl.org/dc/terms/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?user (min(?date) as ?date) where { graph npa:graph { ?intronp npa:hasValidSignatureForPublicKey ?introPubkey . filter not exists { ?intronpx npx:retracts ?intronp ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?intronp npx:supersedes ?intronpx . } ?intronp dct:created ?date . ?intronp np:hasAssertion ?a . } graph ?a { ?keydeclaration npx:declaredBy ?user . ?keydeclaration npx:hasPublicKey ?pubkey . } } group by ?user order by desc(?date) limit 100 This query allows for searching for resources (FERs etc.) together with the info about whether GO FAIR qualified them. Find valid GO FAIR qualified things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?thing ?label ?description ?np ?date ?pubkey ?qualifier ?qualification_np (group_concat(distinct ?recommender; separator=" ") as ?recommenders) (group_concat(distinct ?recommendation_np; separator=" ") as ?recommendation_nps) (count(distinct ?recommender) as ?recommender_count) where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np (npx:introduces|npx:describes) ?thing . ?np rdfs:label ?label . ?np dct:description ?description . ?np dct:created ?date . filter(str(?date) > "2022") } bind(concat(" ",lcase(str(?label))," ",lcase(str(?description))," ") as ?text) filter( contains(?text, lcase(str(?_searchterm))) ) optional { graph npa:graph { ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . } graph ?latest_curators_assertion { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph npa:graph { filter not exists { ?disapproval_x npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } ?disapproval np:hasAssertion ?da . } graph ?da { ?dsomebody ( npx:disapproves-of | npx:disapprovesOf ) ?np . } } filter(!bound(?disapproval)) # Faster than "filter not exists" for some reason optional { optional { graph npa:graph { ?recommendation_np npx:hasNanopubType fip:recommended-by . ?recommendation_np npa:hasValidSignatureForPublicKey ?rpubkey . filter not exists { ?recommendation_np_x npx:invalidates ?recommendation_np ; npa:hasValidSignatureForPublicKey ?rpubkey . } ?recommendation_np np:hasAssertion ?ra . ?recommendation_np np:hasProvenance ?rp . } graph ?ra { ?thing fip:recommended-by ?recommender . } graph ?rp { ?ra prov:wasDerivedFrom ?rfip_np . } graph npa:graph { ?rfip_np npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . ?rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . ?latest_rfip_np npa:hasValidSignatureForPublicKey ?rfip_pubkey . filter not exists { ?latest_rfip_npx npx:invalidates ?latest_rfip_np ; npa:hasValidSignatureForPublicKey ?rfip_pubkey . } } graph npa:networkGraph { ?latest_rfip_np (npx:supersedes)* ?rfip_np . } graph ?rfip_qa { ?rfip_qualifier npx:qualifies ?latest_rfip_np . } graph npa:graph { ?rfip_qualification_np np:hasAssertion ?rfip_qa . ?rfip_qualification_np npx:hasNanopubType npx:qualifies . ?rfip_qualification_np npa:hasValidSignatureForPublicKey ?rfip_qpubkey . filter not exists { ?rfip_qualification_np_x npx:invalidates ?rfip_qualification_np ; npa:hasValidSignatureForPublicKey ?rfip_qpubkey . } } graph ?latest_curators_assertion { ?rfip_qpubkeys npx:hasPublicKey ?rfip_qpubkey . } } graph npa:graph { ?qualification_np npx:hasNanopubType npx:qualifies . ?qualification_np npa:hasValidSignatureForPublicKey ?qpubkey . } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph npa:graph { filter not exists { ?qualification_np_x npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } ?qualification_np np:hasAssertion ?qa . } graph ?qa { ?qualifier npx:qualifies ?np . } } } group by ?thing ?label ?description ?np ?date ?pubkey ?retraction ?newversion ?qualifier ?qualification_np order by desc(?recommender_count) asc(?label) This query performs a full-text search on the things introduced in nanopublications. Full-text search on things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces|npx:describes|npx:embeds ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 10 Returns the number of active users per quarter since 2022. Two sequences of non-organic acquisition (as part of university course) are filtered out. Get quarterly active organic user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?quarter (count(distinct ?userid) as ?usercount) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . ?np dct:created ?date . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } filter(str(?date) > "2022") filter(str(?date) < "2023-10-03" || str(?date) > "2023-10-12") filter(str(?date) < "2024-09-27" || str(?date) > "2024-10-07") bind(substr(str(?date), 0, 8) as ?month) bind(replace(?month, "-0[1-3]$", "-Q1") as ?quarter_temp1) bind(replace(?quarter_temp1, "-0[4-6]$", "-Q2") as ?quarter_temp2) bind(replace(?quarter_temp2, "-0[7-9]$", "-Q3") as ?quarter_temp3) bind(replace(?quarter_temp3, "-1[0-9]$", "-Q4") as ?quarter) } group by ?quarter order by desc(?quarter) This query returns the members of a given unit. Get members prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?member ?np ?pubkeyhash ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?_unit_iri foaf:member ?member . } } This query returns a filtered list of nanopublicatoins. Get filtered nanopub list prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?date (group_concat(distinct ?t; separator=' ') as ?types) ?pubkey where { graph npa:graph { #=================== MULTI-VALUE PLACEHOLDER ====================#------ config: ------ { select ?pubkey { # <- VAR pubkey #bind("1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 2a6683923dcbd9810ef4e5debda8c4152c297b12303e286622bbbb0ed1884384" as ?_pubkeys) bind(?__pubkeys as ?v) # <- VAR _pubkeys {select*{optional{?a ?b ?c}}limit 1} # (for some Virtuoso v.) # values ?x{0 1 2 3 4 5 6 7 8 9} values ?y{0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works for a maximum of 100 values) # bind(" " as ?sep) # (separator as regex-compatible character) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?v,?p))) # (=0 check for Virtuoso) # bind(replace(if(?n=0,?v,replace(?v,?p,"")),?p0,"") as ?pubkey) # <- VAR pubkey } } # #================================================================#--------------------- ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } #=================== MULTI-VALUE PLACEHOLDER ====================#------ config: ------ { select ?type { # <- VAR type #bind("https://w3id.org/kpxl/grlc/grlc-query http://purl.org/nanopub/x/ExampleNanopub" as ?_types) bind(?__types as ?v) # <- VAR _types {select*{optional{?a ?b ?c}}limit 1} # (for some Virtuoso v.) # values ?x{0 1 2 3 4 5 6 7 8 9} values ?y{0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works for a maximum of 100 values) # bind(" " as ?sep) # (separator as regex-compatible character) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?v,?p))) # (=0 check for Virtuoso) # bind(replace(if(?n=0,?v,replace(?v,?p,"")),?p0,"") as ?typel) # <- VAR type bind(uri(?typel) as ?type) } } # #================================================================#--------------------- ?np npx:hasNanopubType ?type . ?np npx:hasNanopubType ?t . ?np dct:created ?date . #bind("2024-11-30" as ?__endtime) bind(coalesce(?__endtime, "9999") as ?endtime) filter(?endtime > str(?date)) #bind("2024-11-29" as ?__starttime) bind(coalesce(?__starttime, "0000") as ?starttime) filter(?starttime < str(?date)) optional { ?np rdfs:label ?label } } } group by ?np ?label ?date ?pubkey order by desc(?date) limit 100 This query returns an monthly overview of published nanopublications by types for the past 12 months for the given creator. Get type overview of nanopubs last 12 months prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?type ?month ?npCount ?npCountType where { { select ?type ?month (count(?np) as ?npCount) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np dct:creator ?_creator_iri . ?np npx:hasNanopubType ?type . bind(substr(str(?date), 0, 8) as ?month) bind(now() as ?now) bind(concat(str(year(?now)), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?lastMonth) bind(concat(str(year(?now)-1), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?firstMonth) filter(?month > ?firstMonth && ?month <= ?lastMonth) } } group by ?type ?month order by ?type desc(?month) } { select ?type (count(?np) as ?npCountType) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np dct:creator ?_creator_iri . ?np npx:hasNanopubType ?type . bind(substr(str(?date), 0, 8) as ?month) bind(now() as ?now) bind(concat(str(year(?now)), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?lastMonth) bind(concat(str(year(?now)-1), '-', if(month(?now)>9,'','0'), str(month(?now))) as ?firstMonth) filter(?month > ?firstMonth && ?month <= ?lastMonth) } } group by ?type order by desc(?npCountType) } } order by desc(?npCountType) ?type desc(?month) This query returns the user IDs of all active users of the last 6 months. Get active users of last 6 months prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?user where { { graph npa:graph { bind(now() - "P6M"^^xsd:duration as ?sixmonthsago) ?np dct:creator ?user . ?np dct:created ?date . filter(?date > ?sixmonthsago) } } union { graph npa:graph { bind(now() - "P6M"^^xsd:duration as ?sixmonthsago) ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . filter(?date > ?sixmonthsago) } graph ?prov { ?assertion prov:wasAttributedTo ?user . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?user . } } } order by ?user This query returns the list of people who declared their participation in the WikiCite 2025 event. Get the WikiCite 2025 participants prefix wd: <http://www.wikidata.org/entity/> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?participant ?name ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . } graph ?a { ?participant wd:P1344 wd:Q133846580 . } optional { graph ?i { ?participant foaf:name ?name . } } } order by desc(?date) This query returns all event participation declarations together with roles like "organizer". Get event participants prefix wd: <http://www.wikidata.org/entity/> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix http: <http://www.w3.org/2011/http#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?event ?eventLabel ?participant ?participantLabel ?role ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . } { { graph ?a { ?participant wd:P1344 ?event . bind("participant" as ?role) } } union { graph ?a { ?event wd:P664 ?participant . bind("organizer" as ?role) } } } optional { graph ?i { ?participant foaf:name ?participantLabel1 . } } optional { graph ?i { ?participant rdfs:label ?participantLabel2 . } } bind(coalesce(?participantLabel1, ?participantLabel2) as ?participantLabel) optional { graph ?i { ?event rdfs:label ?eventLabel . } } } order by desc(?date) This query returns all Nanodash projects Get Nanodash projects prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?project ?label ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces ?project . filter(strstarts(str(?project), "https://w3id.org/kpxl/custom/project/terms/")) ?np npx:hasNanopubType <https://w3id.org/kpxl/gen/terms/NanodashProject> . ?np rdfs:label ?label . ?np np:hasAssertion ?a . filter not exists { ?npx npx:introduces ?project . ?npx dct:created ?datex . filter(?datex > ?date) } } } order by ?label This query returns all places (geosparql:Feature) located in Africa. Get places in Africa prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix geosparql: <http://www.opengis.net/ont/geosparql#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix geof: <http://www.opengis.net/def/function/geosparql/> select distinct ?np ?location ?locationLabel ?wkt where { graph ?assertion { ?paper dct:spatial ?location . ?location a geosparql:Feature . ?location rdfs:label ?locationLabel . ?location geosparql:hasGeometry ?geometry . ?geometry geosparql:asWKT ?wkt . # Find locations that intersect with East Africa bounding box filter(geof:sfIntersects(strdt(?wkt, geosparql:wktLiteral), "POLYGON((28 -12, 40 -12, 40 5, 28 5, 28 -12))"^^geosparql:wktLiteral)) } graph npa:graph { ?np np:hasAssertion ?assertion . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } This query returns an overview of the types of FAIR-Enabling Resources. Get types of FAIR-Enabling Resources prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> select ?type (count(distinct ?np) as ?count) where { { bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(fip:FAIR-Enabling-Resource)))) as ?fer_service) service ?fer_service { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; npx:hasNanopubType fip:FAIR-Enabling-Resource . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType ?type . values ?type { fip:Authentication-and-authorization-service fip:Editor fip:FAIR-Representation-Service fip:FAIR-Supporting-Software fip:Identifier-service fip:Provenance-Tracking-Service fip:Registry fip:Validation-Service fip:Web-API fip:Communication-protocol fip:Crosswalk fip:FAIR-Implementation-Profile fip:Knowledge-representation-language fip:Metadata-schema fip:Metadata-data-linking-schema fip:Provenance-model fip:Semantic-model fip:Structured-vocabulary fip:FAIR-Data-Policy fip:Data-usage-license fip:Metadata-preservation-policy fip:Persistency-Policy fip:FAIR-Practice } } } } union { bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(fip:FAIR-Supporting-Resource)))) as ?fer_service) service ?fer_service { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; npx:hasNanopubType fip:FAIR-Supporting-Resource . ?np dct:created ?date . filter(str(?date) > "2022") filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType ?type . values ?type { fip:Authentication-and-authorization-service fip:Editor fip:FAIR-Representation-Service fip:FAIR-Supporting-Software fip:Identifier-service fip:Provenance-Tracking-Service fip:Registry fip:Validation-Service fip:Web-API fip:Communication-protocol fip:Crosswalk fip:FAIR-Implementation-Profile fip:Knowledge-representation-language fip:Metadata-schema fip:Metadata-data-linking-schema fip:Provenance-model fip:Semantic-model fip:Structured-vocabulary fip:FAIR-Data-Policy fip:Data-usage-license fip:Metadata-preservation-policy fip:Persistency-Policy fip:FAIR-Practice } } } } } group by ?type order by desc(?count) Get FAIR-Enabling Resources by type. Get FERs by type prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?np ?thing ?description ?label ?date ?types ?qualifier (group_concat(distinct ?community; separator=" ") as ?communities) ?maxscore where { { select ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } } } { select ?np ?thing ?label ?description ?date (group_concat(distinct ?type; separator=" ") as ?types) where { graph npa:graph { ?np rdfs:label ?label ; dct:description ?description ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . ?np npx:introduces|npx:describes ?thing . filter(str(?date) > "2022") filter exists { ?np npx:hasNanopubType ?fsr_type . values ?fsr_type { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:hasNanopubType ?_type_iri . ?np npx:hasNanopubType ?type . values ?type { fip:Authentication-and-authorization-service fip:Editor fip:FAIR-Representation-Service fip:FAIR-Supporting-Software fip:Identifier-service fip:Provenance-Tracking-Service fip:Registry fip:Validation-Service fip:Web-API fip:Communication-protocol fip:Crosswalk fip:FAIR-Implementation-Profile fip:Knowledge-representation-language fip:Metadata-schema fip:Metadata-data-linking-schema fip:Provenance-model fip:Semantic-model fip:Structured-vocabulary fip:FAIR-Data-Policy fip:Data-usage-license fip:Metadata-preservation-policy fip:Persistency-Policy fip:FAIR-Practice } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } filter not exists { graph ?da { ?disapprover npx:disapprovesOf ?np . } graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } } } group by ?np ?thing ?label ?description ?date } optional { graph ?qa { ?qualifier npx:qualifies ?np . } graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } } optional { graph npa:graph { ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np np:hasAssertion ?decl_a ; npa:hasValidSignatureForPublicKey ?decl_pubkey . filter not exists { ?decl_npx npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?decl_pubkey . } } graph ?decl_a { ?decl a fip:FIP-Declaration . # ---- # not really needed but seems to make query faster: values ?use { fip:declares-current-use-of fip:declares-planned-use-of fip:declares-planned-development-of fip:declares-planned-replacement-of } ?decl ?use ?thing . # ---- ?decl fip:declared-by ?community . } } } group by ?np ?thing ?description ?label ?date ?types ?qualifier ?maxscore order by desc(?maxscore) Full-text search for FAIR Enabling Resources FER search prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?np ?thing ?description ?label ?date ?types ?qualifier (group_concat(distinct ?community; separator=" ") as ?communities) ?maxscore where { { select ?np ?thing ?label ?date (group_concat(distinct ?type; separator=" ") as ?types) (max(?score) as ?maxscore) ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np rdfs:label ?label ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . ?np npx:introduces|npx:describes ?thing . filter(str(?date) > "2022") filter exists { ?np npx:hasNanopubType ?fsr_type . values ?fsr_type { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource fip:Available-FAIR-Enabling-Resource } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np npx:hasNanopubType ?__type_iri . ?np npx:hasNanopubType ?type . filter(?type != fip:FAIR-Enabling-Resource) filter(?type != fip:Available-FAIR-Enabling-Resource) filter(?type != fip:FAIR-Enabling-Resource-to-be-Developed) filter(?type != fip:FAIR-Supporting-Resource) filter(?type != fip:Available-FAIR-Supporting-Resource) filter(?type != fip:FAIR-Supporting-Resource-to-be-Developed) filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256("http://purl.org/nanopub/x/disapprovesOf"))) as ?disappr_service) filter not exists { service ?disappr_service { graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?disapprover npx:disapprovesOf ?np . } } } } group by ?np ?thing ?label ?date ?latest_curators_assertion order by desc(?maxscore) limit 20 } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/full> { graph npa:graph { ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . } graph ?a { ?thing rdfs:comment ?description . } } } bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256("http://purl.org/nanopub/x/qualifies"))) as ?qualifies_service) optional { service ?qualifies_service { graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph ?qa { ?qualifier npx:qualifies ?np . } } } bind(iri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256("https://w3id.org/fair/fip/terms/FIP-Declaration"))) as ?fip_service) optional { service ?fip_service { graph npa:graph { ?decl_np np:hasAssertion ?decl_a ; npa:hasValidSignatureForPublicKey ?decl_pubkey . filter not exists { ?decl_npx npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?decl_pubkey . } } graph ?decl_a { ?decl a fip:FIP-Declaration . # ---- # not really needed but seems to make query faster: values ?use { fip:declares-current-use-of fip:declares-planned-use-of fip:declares-planned-development-of fip:declares-planned-replacement-of } ?decl ?use ?thing . # ---- ?decl fip:declared-by ?community . } } } } group by ?np ?thing ?description ?label ?date ?types ?qualifier ?maxscore order by desc(?maxscore) Returns the basic info of all assertion templates Get assertion templates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?np ?pubkey ?pubkeyhash ?date ?label ?tag ?unlisted ?creator where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . ?np npx:hasNanopubType nt:AssertionTemplate . ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np npx:signedBy ?creator . } } optional { graph ?a { ?a rdfs:label ?label } } optional { graph ?a { ?a nt:hasTag ?tag . } } bind(exists { graph ?a { ?a a nt:UnlistedTemplate } } as ?unlisted) } order by desc(?date) List all non-qualified FAIR Enabling/Supporting Resources. List non-qualified FERs/FSRs prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?np ?label (group_concat(distinct ?typelabel; separator = ", ") as ?types) ?date where { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/16fb6a38f21730f443f6fc7c4a7340a54364973a0b078db497206a13fc5d33f4> { select ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } } } values ?service { <https://w3id.org/np/l/nanopub-query-1.1/repo/type/3ef5b11551ebc44e34f4bca614b387204447656ce195314532769ca7b20143fe> <https://w3id.org/np/l/nanopub-query-1.1/repo/type/070fa9a0f87a189bc2eb9d4c1a14f68f11538cc2229b9f4fd6ac026a3d2ce570> } service ?service { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?np npx:hasNanopubType <https://w3id.org/fair/3pff/3PFF-event> . } filter not exists { ?np npx:hasNanopubType fip:FAIR-Implementation-Community . } filter not exists { ?np npx:hasNanopubType fip:FAIR-Implementation-Profile . } filter not exists { ?np npx:hasNanopubType fip:Semantic-Interoperability-Profile . } ?np dct:created ?date . filter(str(?date) > "2022") ?np np:hasAssertion ?a . } graph ?a { #?thing a <https://w3id.org/fair/fip/terms/FAIR-Supporting-Resource> . ?thing a ?type . ?thing rdfs:label ?labelx . } } filter( ?type != <https://w3id.org/fair/fip/terms/FAIR-Supporting-Resource> ) filter( ?type != <https://w3id.org/fair/fip/terms/Available-FAIR-Supporting-Resource> ) filter( ?type != <https://w3id.org/fair/fip/terms/FAIR-Supporting-Resource-to-be-Developed> ) filter( ?type != <https://w3id.org/fair/fip/terms/FAIR-Enabling-Resource> ) filter( ?type != <https://w3id.org/fair/fip/terms/Available-FAIR-Enabling-Resource> ) filter( ?type != <https://w3id.org/fair/fip/terms/FAIR-Enabling-Resource-to-be-Developed> ) bind(replace(str(?type), '^.*/([^/]+)$', '$1') as ?typelabel) bind(str(?labelx) as ?label) optional { select ?np ?disapproval { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/39692876d0a7881c82e9a2cb6dc8859fb16fa69fb41cea2ace2f8fa70bc52aed> { graph npa:graph { ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . ?disapproval np:hasAssertion ?da . filter not exists { ?disapprovalx npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?dsomebody npx:disapprovesOf ?np . } } } } filter(!bound(?disapproval)) optional { select ?np ?qualification { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/cd51a3ac3e109fd12aacd5a324e14ebff644ce209c916e4250a3f50c2ddf0051> { graph npa:graph { ?qualification npa:hasValidSignatureForPublicKey ?qpubkey . ?qualification np:hasAssertion ?qa . filter not exists { ?qualificationx npx:invalidates ?qualification ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph ?qa { ?qsomebody npx:qualifies ?np . } } } } filter(!bound(?qualification)) } group by ?np ?label ?date order by desc(?date) Returns the basic info of all publication info templates. Get pubinfo templates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?np ?pubkey ?pubkeyhash ?date ?label ?creator where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . ?np npx:hasNanopubType nt:PubinfoTemplate . ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np npx:signedBy ?creator . } } graph ?a { ?a rdfs:label ?label . } } order by desc(?date) Returns the basic info of all provenance templates. Get provenance templates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?np ?pubkey ?pubkeyhash ?date ?label ?creator where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . ?np npx:hasNanopubType nt:ProvenanceTemplate . ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np npx:signedBy ?creator . } } graph ?a { ?a rdfs:label ?label . } } order by desc(?date) Returns the number of active users per quarter since 2022. Two sequences of non-organic acquisition (as part of university course) are filtered out. Get quarterly active organic user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?quarter (count(distinct ?userid) as ?usercount) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . ?np dct:created ?date . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } filter(str(?date) > "2022") filter(str(?date) < "2023-10-03" || str(?date) > "2023-10-12") filter(str(?date) < "2024-09-27" || str(?date) > "2024-10-07") bind(substr(str(?date), 0, 8) as ?month) bind(replace(?month, "-0[1-3]$", "-Q1") as ?quarter_temp1) bind(replace(?quarter_temp1, "-0[4-6]$", "-Q2") as ?quarter_temp2) bind(replace(?quarter_temp2, "-0[7-9]$", "-Q3") as ?quarter_temp3) bind(replace(?quarter_temp3, "-1[0-9]$", "-Q4") as ?quarter) } group by ?quarter order by desc(?quarter) This query returns the latest FDOs. Get latest FDOs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?fdo ?np ?label ?profile ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <https://w3id.org/fdof/ontology#FAIRDigitalObject> . ?np npx:introduces ?fdo . optional { ?np rdfs:label ?label } optional { ?np npx:signedBy ?creator } ?np np:hasAssertion ?a . } optional { graph ?a { ?fdo dct:conformsTo ?profile . } } } order by desc(?date) limit 10 This query returns the latest FDOs from the specified creator. Get FDO feed prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?fdo ?np ?label ?profile ?creator ?date where { graph npa:graph { ?np npx:signedBy ?__creator_iri . bind(?__creator_iri as ?creator) ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <https://w3id.org/fdof/ontology#FAIRDigitalObject> . ?np npx:introduces ?fdo . optional { ?np rdfs:label ?label } ?np np:hasAssertion ?a . } optional { graph ?a { ?fdo dct:conformsTo ?profile . } } } order by desc(?date) limit 1000 This query returns all RO-Crates of which the metadata were published as nanopublications. Get RO-Crates PREFIX schema: <http://schema.org/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?np ?metadata ?obj (group_concat(distinct ?objType; separator=" ") as ?objTypes) (group_concat(distinct ?keyword; separator=" ") as ?keywords) ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { optional { ?metadata_a <http://schema.org/about> ?obj_a . filter(strends(str(?metadata_a), "ro-crate-metadata.json")) } optional { ?metadata_b <http://schema.org/about> ?obj_b . filter(strends(str(?metadata_b), "ro-crate-metadata.jsonld")) } filter(bound(?metadata_a) || bound(?metadata_b)) bind(coalesce(?metadata_a, ?metadata_b) as ?metadata) bind(coalesce(?obj_a, ?obj_b) as ?obj) } optional { graph ?a { ?obj schema:datePublished ?datePublished . } } optional { graph ?a { ?obj schema:dateCreated ?dateCreated . } } bind(coalesce(?datePublished, ?dateCreated) as ?date) optional { graph ?a { ?obj a ?objType . } } optional { graph ?a { ?obj schema:keywords ?keyword . } } } group by ?np ?metadata ?obj ?date order by desc(?date) This query returns the things denoted as parts of the given thing. Get parts of a thing prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select distinct ?part (sample(?partLabel) as ?partLabel) ?np ?npLabel ?date ?pubkey where { { graph ?g { ?_thing_iri dct:hasPart ?part . } filter not exists { graph npa:graph { ?part npx:hasNanopubType npx:NanopubIndex . } } } union { graph ?g { ?part dct:partOf ?_thing_iri . } } union { graph ?gx { ?_thing_iri dct:hasPart ?index . } graph npa:graph { ?index npx:hasNanopubType npx:NanopubIndex . ?index np:hasAssertion ?a . } graph ?a { ?index npx:includesElement ?np . } graph npa:graph { ?np npx:introduces ?part . } } graph npa:graph { ?np npa:hasGraph ?g . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np np:hasPublicationInfo ?i . ?np dct:created ?date . optional { ?np rdfs:label ?npLabel . } } optional { graph ?g { ?part rdfs:label ?partLabel1 . } } optional { graph ?g { ?part dct:title ?partLabel2 . } } optional { graph ?i { ?part rdfs:label ?partLabel3 . } } optional { graph ?i { ?part nt:hasLabelFromApi ?partLabel4 . } } optional { graph ?x { ?part rdfs:label ?partLabel5 . } } bind(coalesce(?partLabel1, ?partLabel2, ?partLabel3, ?partLabel4, ?partLabel5) as ?partLabel) } group by ?part ?np ?npLabel ?date ?pubkey limit 1000 Full-text search for FAIR communities restricted by domain FAIR community search by domain prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?np ?community ?label ?comment ?date (group_concat(distinct ?domain; separator=" ") as ?domains) ?qualifier (max(?score) as ?maxscore) (count(distinct ?fip) as ?fipcount) where { { select ?latest_curators_assertion where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } } } graph npa:graph { ?np rdfs:label ?label ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; npx:hasNanopubType fip:FAIR-Implementation-Community ; npx:introduces ?community ; np:hasAssertion ?a . ?np dct:created ?date . filter(str(?date) > "2022") filter(strends(str(?date), "Z")) filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } ?np search:matches [ search:query ?_query ; search:property npa:hasFilterLiteral ; search:score ?score ; search:snippet ?snippet ] . service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/6a09747868afc83837e38d1bac79362fbcc3e2032cff2f2d244f4e24cbd085c6> { # (https://w3id.org/fair/fip/terms/FAIR-Implementation-Community) graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?label ; rdfs:comment ?comment . ?community fip:has-research-domain ?domainx . } graph ?latest_curators_assertion { ?domainx rdfs:subClassOf* ?_domain_iri . } graph ?a { ?community fip:has-research-domain ?domain . } } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/cd51a3ac3e109fd12aacd5a324e14ebff644ce209c916e4250a3f50c2ddf0051> { # (http://purl.org/nanopub/x/qualifies) graph ?qa { ?qualifier npx:qualifies ?np . } graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } } } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/92efd7a0ea4be4e01ec0817ccec87f975203b30addcc3166a204498ffed73b66> { # (https://w3id.org/fair/fip/terms/FAIR-Implementation-Profile) graph ?fa { ?fip fip:declared-by ?community . } graph npa:graph { ?fipnp np:hasAssertion ?fa . ?fipnp npa:hasValidSignatureForPublicKey ?fpubkey . ?fipnp npx:hasNanopubType fip:FAIR-Implementation-Profile . filter not exists { ?fipnpx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpubkey . } } } } filter not exists { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/39692876d0a7881c82e9a2cb6dc8859fb16fa69fb41cea2ace2f8fa70bc52aed> { # (http://purl.org/nanopub/x/disapprovesOf) graph ?da { ?disapprover npx:disapprovesOf ?np . } graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } } } } group by ?np ?community ?label ?comment ?date ?qualifier order by desc(?maxscore) Full-text search for FAIR communities. FAIR community search prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?np ?community ?label ?comment ?date (group_concat(distinct ?domain; separator=" ") as ?domains) ?qualifier (max(?score) as ?maxscore) (count(distinct ?fip) as ?fipcount) where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np rdfs:label ?label ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date ; npx:hasNanopubType fip:FAIR-Implementation-Community ; npx:introduces ?community ; np:hasAssertion ?a . ?np dct:created ?date . filter(str(?date) > "2022") filter(strends(str(?date), "Z")) filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } ?np search:matches [ search:query ?_query ; search:property npa:hasFilterLiteral ; search:score ?score ; search:snippet ?snippet ] . optional { service <https://query.np.trustyuri.net/repo/full> { graph ?a { ?community a fip:FAIR-Implementation-Community ; rdfs:label ?label ; rdfs:comment ?comment ; fip:has-research-domain ?domain . } } } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/cd51a3ac3e109fd12aacd5a324e14ebff644ce209c916e4250a3f50c2ddf0051> { # (http://purl.org/nanopub/x/qualifies) graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph ?qa { ?qualifier npx:qualifies ?np . } } } optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/92efd7a0ea4be4e01ec0817ccec87f975203b30addcc3166a204498ffed73b66> { # (https://w3id.org/fair/fip/terms/FAIR-Implementation-Profile) graph npa:graph { ?fipnp np:hasAssertion ?fa . ?fipnp npa:hasValidSignatureForPublicKey ?fpubkey . ?fipnp npx:hasNanopubType fip:FAIR-Implementation-Profile . filter not exists { ?fipnpx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpubkey . } } graph ?fa { ?fip fip:declared-by ?community . } } } filter not exists { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/39692876d0a7881c82e9a2cb6dc8859fb16fa69fb41cea2ace2f8fa70bc52aed> { # (http://purl.org/nanopub/x/disapprovesOf) graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?disapprover npx:disapprovesOf ?np . } } } } group by ?np ?community ?label ?comment ?date ?qualifier order by desc(?maxscore) This query returns all GO FAIR Foundation curators for metadata of FAIR Supporting Resources. Get GFF curators prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix foaf: <http://xmlns.com/foaf/0.1/> select distinct ?facilitatorName ?facilitatorId ?pubkey where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?pk . ?latest npa:hasValidSignatureForPublicKey ?pk . filter not exists { ?npx npx:invalidates ?latest ; npa:hasValidSignatureForPublicKey ?pk . } ?latest dct:created ?date . ?latest np:hasAssertion ?assertion . } graph npa:networkGraph { ?latest (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?x npx:supersedes ?latest } } graph ?assertion { ?pubkeys npx:hasPublicKey ?pubkey . } service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/77757cabf6184c51c20b8b0fe5dc5e1365b7f628448335184ad54319a0affdfc> { # (http://purl.org/nanopub/x/declaredBy) graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey ; np:hasAssertion ?a . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?decl npx:hasPublicKey ?pubkey ; npx:declaredBy ?facilitatorId . ?facilitatorId foaf:name ?facilitatorName . } } } order by ?facilitatorName Full-text search for FAIR Implementation Profiles FIP search prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?np ?label ?description ?community ?date ?qualifier (max(?score) as ?maxscore) where { graph npa:graph { <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_np_pk . ?latest_curators_np npa:hasValidSignatureForPublicKey ?curators_np_pk . filter not exists { ?latest_curators_npx npx:invalidates ?latest_curators_np ; npa:hasValidSignatureForPublicKey ?curators_np_pk . } ?latest_curators_np np:hasAssertion ?latest_curators_assertion . } graph npa:networkGraph { ?latest_curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> . filter not exists { ?latest_curators_npxx npx:supersedes ?latest_curators_np } } graph npa:graph { ?np rdfs:label ?label ; npa:hasValidSignatureForPublicKey ?pubkey ; dct:created ?date . filter exists { ?np npx:hasNanopubType fip:FAIR-Implementation-Profile . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { service <https://query.np.trustyuri.net/repo/full> { graph npa:graph { ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . } graph ?a { ?fip dct:description ?description . ?fip fip:declared-by ?community . } graph ?i { ?np npx:introduces ?fip . } } } ?np search:matches [ search:query ?_query ; search:property ?property ; search:score ?score ; search:snippet ?snippet ] . optional { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/cd51a3ac3e109fd12aacd5a324e14ebff644ce209c916e4250a3f50c2ddf0051> { # (http://purl.org/nanopub/x/qualifies) graph npa:graph { ?qualification_np np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_npx npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?qpubkey . } graph ?qa { ?qualifier npx:qualifies ?np . } } } filter not exists { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/39692876d0a7881c82e9a2cb6dc8859fb16fa69fb41cea2ace2f8fa70bc52aed> { # (http://purl.org/nanopub/x/disapprovesOf) graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph ?latest_curators_assertion { ?qpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?disapprover npx:disapprovesOf ?np . } } } } group by ?np ?description ?label ?community ?date ?qualifier order by desc(?maxscore) This query returns the FDOs whose records refer to the given ID. Get FDOs by reference prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?fdo ?np ?label ?creator ?date where { optional { <x:> <x:> ?_refid } # for grlc to pick up the placeholder bind(if(strstarts(?_refid, "https://") || strstarts(?_refid, "http://"), iri(?_refid), iri(concat("https://hdl.handle.net/", str(?_refid)))) as ?ref) graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <https://w3id.org/fdof/ontology#FAIRDigitalObject> . ?np npx:introduces ?fdo . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } optional { ?np npx:signedBy ?creator } } optional { graph ?a { ?subj ?ref ?obj . bind(true as ?inpred) } } optional { graph ?a { ?subj ?pred ?ref . bind(true as ?inobj) } } filter(?inpred || ?inobj) } order by desc(?date) This query returns all research programmes. Get research programmes PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX np: <http://www.nanopub.org/nschema#> PREFIX npa: <http://purl.org/nanopub/admin/> PREFIX npx: <http://purl.org/nanopub/x/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX dct: <http://purl.org/dc/terms/> PREFIX prov: <http://www.w3.org/ns/prov#> SELECT ?n1 ?label ?thing ?date where { GRAPH npa:graph { ?n1 npx:introduces ?thing . ?n1 npx:hasNanopubType <https://w3id.org/fair/ff/terms/Research-Programme> . ?n1 npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?np2 npx:invalidates ?n1 ; npa:hasValidSignatureForPublicKey ?pubkey . } ?n1 dct:created ?date . ?n1 rdfs:label ?label . filter(contains(lcase(?label), lcase(?_searchterm)) ) } } This query returns all calls for proposals Get calls for proposals prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?thing ?label ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?thing <https://w3id.org/fdof/ontology#hasInformationObjectType> <https://w3id.org/gff/rao/terms/Call-for-Proposals> . ?thing rdfs:label ?label . ?thing rdfs:comment ?desc . filter(contains(lcase(?label), lcase(?_searchterm)) || contains(lcase(?desc), lcase(?_searchterm))) } } This query returns the things the given user has declared to be their favorites (using cito:likes). Get favorite things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?favoritedThing ?label ?np ?creator ?date where { graph npa:graph { ?np npx:signedBy ?__creator_iri . bind(?__creator_iri as ?creator) ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <http://purl.org/spar/cito/likes> . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { ?subj <http://purl.org/spar/cito/likes> ?favoritedThing . } } order by desc(?date) Returns the number of active users per year. Get yearly active user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?year (count(distinct ?userid) as ?usercount) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . ?np dct:created ?date . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } bind(substr(str(?date), 0, 5) as ?year) } group by ?year order by desc(?year) This query performs a full-text search on the FDO nanopublications. FDO text search prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select ?fdo ?np ?label ?date where { graph npa:graph { ?np npx:hasNanopubType <https://w3id.org/fdof/ontology#FAIRDigitalObject> . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:introduces ?fdo . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } optional { ?np rdfs:label ?label . } ?np dct:created ?date . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 100 This query returns all research programmes. Get research programmes prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?thing ?label ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?thing <https://w3id.org/fdof/ontology#hasInformationObjectType> <https://w3id.org/gff/rao/terms/Research-Programme> . ?thing rdfs:label ?label . filter(contains(?label, ?_searchterm)) } } This query returns the FDO info for a given FDO identifier Get FDO by ID prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?fdo ?creator ?date where { bind(if(strstarts(?_fdoid, "https://") || strstarts(?_fdoid, "http://"), iri(?_fdoid), iri(concat("https://hdl.handle.net/", str(?_fdoid)))) as ?fdo) graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <https://w3id.org/fdof/ontology#FAIRDigitalObject> . ?np npx:introduces ?fdo . optional { ?np rdfs:label ?label } optional { ?np npx:signedBy ?creator } } optional { graph npa:graph { ?np_first npa:hasSubIri ?fdo . bind(true as ?isSubIri) } } optional { filter(bound(?isSubIri)) graph npa:graph { ?np_first npa:hasValidSignatureForPublicKey ?pubkey . } graph npa:networkGraph { ?np npx:supersedes* ?np_first . } bind(true as ?isValidSubIri) } bind(if(bound(?isSubIri) && ?isSubIri, bound(?isValidSubIri) && ?isValidSubIri, true) as ?valid) filter(?valid) } order by desc(?date) This query returns all FDO attributes with their definitions Get FDO attributes prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?attribute ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <https://w3id.org/fdoc/o/terms/FdoAttribute> . ?np npx:introduces ?attribute . optional { ?np rdfs:label ?label } optional { ?np npx:signedBy ?creator } } } order by desc(?date) This query returns all FDO profiles. Get FDO profiles prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?profile ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <https://w3id.org/fdoc/o/terms/FdoProfile> . ?np npx:introduces ?profile . optional { ?np rdfs:label ?label } optional { ?np npx:signedBy ?creator } } } order by desc(?date) This query returns all participation links. Get participation links prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix wd: <http://www.wikidata.org/entity/> select ?person ?event ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { ?person wd:P1344 ?event . } } order by desc(?date) This query returns plain-text messages about ESWC 2025. Get messages about ESWC 2025 prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix schema: <https://schema.org/> select ?text ?np ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np dct:creator ?creator . ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:label ?text . ?a schema:about <https://2025.eswc-conferences.org/> . } } order by desc(?date) This query returns the participants of the ESWC2025 nanopublication tutorial. Get participants of ESWC2025 nanopub tutorial prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix wd: <http://www.wikidata.org/entity/> select ?person ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } graph ?a { ?person wd:P1344 <https://nanopub.net/docs/tutorials/eswc2025#event> . } } order by desc(?date) Returns all nanopublications that declare a grlc query, thereby defining an API. Get all grlc query nanopubs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix grlc: <https://w3id.org/kpxl/grlc/> select ?np ?label ?pubkeyhash ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . } ?np dct:created ?date . ?np npx:introduces|npx:embeds ?query . ?np np:hasAssertion ?a . ?np npx:hasNanopubType grlc:grlc-query . optional { ?np rdfs:label ?label } } graph ?a { ?query grlc:endpoint ?endpoint . filter(strstarts(str(?endpoint), "https://w3id.org/np/l/nanopub-query")) } } order by desc(?date) This is just a test query, now updated with the final template... and updated once more... test query prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix grlc: <https://w3id.org/kpxl/grlc/> select ?np ?label ?pubkeyhash ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . } ?np dct:created ?date . ?np npx:introduces ?query . ?np np:hasAssertion ?a . ?np npx:hasNanopubType grlc:grlc-query . optional { ?np rdfs:label ?label } } graph ?a { ?query grlc:endpoint ?endpoint . filter(strstarts(str(?endpoint), "https://w3id.org/np/l/nanopub-query")) } } order by desc(?date) This query returns all latest versions of a given nanopublication and thing URI that is introduced or described therein. Get latest nanopubs defining a thing prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?latestVersion ?date where { graph npa:graph { ?_np_iri npa:hasValidSignatureForPublicKey ?pubkey . ?_np_iri npx:introduces|npx:describes ?_thing_iri . } graph npa:networkGraph { ?latestVersion (npx:supersedes)* ?_np_iri . } graph npa:graph { filter exists { ?latestVersion npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?npx npx:invalidates ?latestVersion ; npa:hasValidSignatureForPublicKey ?pubkey . } ?latestVersion dct:created ?date . ?latestVersion npx:introduces|npx:describes ?_thing_iri . } } order by desc(?date) ?latestVersion This query performs a full-text search on FAIR Specifications. Search on FAIR Specifications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix fip: <https://w3id.org/fair/fip/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { values ?type { fip:FAIR-Specification fip:Metadata-schema fip:Semantic-model fip:Structured-vocabulary fip:Provenance-model } ?np npx:hasNanopubType ?type . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces|npx:describes ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 10 This query returns the nanopubs describing studies (http://semanticscience.org/resource/SIO_001066). Get all nanopubs describing studies prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:hasNanopubType <http://semanticscience.org/resource/SIO_001066> . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } } limit 100 This query returns all datasets attributed to Leiden University. Get datasets attributed to Leiden University prefix prov: <http://www.w3.org/ns/prov#> prefix schema: <https://schema.org/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?dataset ?label ?repository where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasProvenance ?p . } graph ?a { ?dataset a <http://purl.org/dc/dcmitype/Dataset> . optional { ?dataset dct:title ?label . } optional { ?dataset schema:maintainer ?repository . } } graph ?p { ?a prov:wasAttributedTo <https://ror.org/027bh9e22> . } } This query returns the latest FAIR-Enabling Resources (FERs). Get the latest FAIR-Enabling Resources prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . optional { ?np rdfs:label ?label } } } order by desc(?date) limit 10 This query returns all cito:cites nanopubs. Get the cite nanopubs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?label ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType <http://purl.org/spar/cito/cites> . ?np dct:created ?date . ?np np:hasAssertion ?a . ?np npx:signedBy ?creator . optional { ?np rdfs:label ?label } } } order by desc(?date) This query performs a full-text search on the nanopublication labels, including also invalidated nanopublications. Full-text search on labels prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?__pubkey . optional { ?np rdfs:label ?label . } ?np dct:created ?date . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 100 This query performs a full-text search on the things introduced in nanopublications, including invalidated ones. Full-text search on things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . ?np npx:introduces|npx:describes ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 10 This query performs a full-text search on the things introduced in nanopublications, excluding invalidated ones. Full-text search on things prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType ?__type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces|npx:describes ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 10 This query returns all nanopubs (including invalidated ones) for the given pattern find nanopubs with pattern prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?graphpred ?subj ?pred ?obj ?date ?pubkey where { graph ?g { ?__subj_iri ?__pred_iri ?__obj_iri . bind(?__subj_iri as ?subj) bind(?__pred_iri as ?pred) bind(?__obj_iri as ?obj) } graph npa:graph { ?np ?__graphpred_iri ?g . bind(?__graphpred_iri as ?graphpred) values ?graphpred { np:hasAssertion np:hasProvenance np:hasPublicationInfo } } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?__pubkey . bind(?__pubkey as ?pubkey) ?np dct:created ?date . } } limit 1000 This query returns all non-invalidated nanopubs for the given pattern find valid nanopubs with pattern prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?graphpred ?subj ?pred ?obj ?date ?pubkey where { graph ?g { ?__subj_iri ?__pred_iri ?__obj_iri . bind(?__subj_iri as ?subj) bind(?__pred_iri as ?pred) bind(?__obj_iri as ?obj) } graph npa:graph { ?np ?__graphpred_iri ?g . bind(?__graphpred_iri as ?graphpred) values ?graphpred { np:hasAssertion np:hasProvenance np:hasPublicationInfo } } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?__pubkey . bind(?__pubkey as ?pubkey) filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . } } limit 1000 This query returns all newer versions of a given nanopublication, including those that since have been superseded or retracted. Get all newer versions of this nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?newerVersion ?date ?retractedBy ?supersededBy where { graph npa:graph { ?_np_iri npa:hasValidSignatureForPublicKey ?pubkey . } graph npa:networkGraph { ?newerVersion (npx:supersedes)* ?_np_iri . } graph npa:graph { filter exists { ?newerVersion npa:hasValidSignatureForPublicKey ?pubkey . } ?newerVersion dct:created ?date . } optional { graph npa:graph { ?retractedBy npx:retracts ?newerVersion ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { graph npa:graph { ?supersededBy npx:supersedes ?newerVersion ; npa:hasValidSignatureForPublicKey ?pubkey . } } } order by desc(?date) ?newerVersion This query returns the latest nanopublications from the given set of pubkey hashes. Get the latest nanopublications from pubkeys prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?pubkey ?date where { #==================== MULTI-VALUE PLACEHOLDER =====================#------ config: ------ { select ?pkh { # <- VAR pkh bind(?_pubkeyhashes as ?vs) # <- VAR _pubkeyhashes {select*{optional{<x:> <x:> <x:>}}} # (for some Virtuoso ver.) # values ?x {0 1 2 3 4 5 6 7 8 9} values ?y {0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works up to a maximum of 100 values) # bind(" " as ?sep) # (separator as single regex-compatible char) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?vs,?p))) # (?n=0 check for Viruoso) # bind(replace(if(?n=0,?vs,replace(?vs,?p,"")),?p0,"") as ?pkh) # <- VAR pkh filter(!bound(?pkh) || exists {?any_np npa:hasValidSignatureForPublicKeyHash ?pkh }) # Filter out the hashes for which no repo exists; try to do this better with future versions of Nanopub Query } } # #==================================================================#--------------------- bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/pubkey/", ?pkh)) as ?pubkeyservice) service ?pubkeyservice { select ?np ?pubkey ?date ?label { { select ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . } } order by desc(?date) } graph npa:graph { ?np dct:creator ?__userid_iri . optional { ?np rdfs:label ?label } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } limit 100 } } order by desc(?date) limit 100 This query returns the most frequent predicates used in assertions Get most frequent assertion predicates prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?pred (count(distinct ?np) as ?predcount) where { graph npa:graph { ?np np:hasAssertion ?a . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?subj ?pred ?obj . } } group by ?pred order by desc(?predcount) limit 50 This query returns the basic info of all user introductions. Get all user intro info prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npx: <http://purl.org/nanopub/x/> prefix npa: <http://purl.org/nanopub/admin/> prefix dct: <http://purl.org/dc/terms/> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?user ?name ?intronp ?date ?pubkey where { graph npa:graph { ?intronp npx:hasNanopubType npx:declaredBy . ?intronp npa:hasValidSignatureForPublicKey ?intronp_pubkey . filter not exists { ?intronp_x npx:invalidates ?intronp ; npa:hasValidSignatureForPublicKey ?intronp_pubkey . } ?intronp np:hasAssertion ?a . ?intronp dct:created ?date . } graph ?a { ?keydeclaration npx:declaredBy ?user . ?keydeclaration npx:hasPublicKey ?pubkey . optional { ?user foaf:name ?name . } } } order by ?user desc(?date) This query returns a list of all FIP communities that have supercommunities. Get FIP supercommunities prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?community (group_concat(distinct ?supercommunity; separator=" ") as ?supercommunities) (group_concat(distinct ?sc; separator=" ") as ?sc) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType fip:FAIR-Implementation-Community . ?np (npx:introduces|npx:describes) ?community . ?np np:hasAssertion ?a . } graph ?a { ?community dct:isPartOf ?supercommunity . } optional { graph npa:graph { ?disapproval np:hasAssertion ?da . ?disapproval npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_x npx:invalidates ?disapproval ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph <https://w3id.org/np/RAkVk6aKWsmgcuKtPA7OSp2h-GbDfx8xrz_kJAAgY8Xa4#assertion> { ?dpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?dsomebody ( npx:disapproves-of | npx:disapprovesOf ) ?np . } } filter(!bound(?disapproval)) # for some reason this is much faster than "filter not exists" bind(replace(str(?supercommunity), ".*#", "") as ?sc) } group by ?community This query returns the details of all FIP declarations. Get FIP declaration details prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix fip: <https://w3id.org/fair/fip/terms/> prefix dct: <http://purl.org/dc/terms/> prefix dce: <http://purl.org/dc/elements/1.1/> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix np: <http://www.nanopub.org/nschema#> prefix dcat: <https://www.w3.org/ns/dcat#> select ?decl_np ?community ?c ?question ?q ?sort ?nochoice ?decl ?rel ?resource_id_used ?startdate ?enddate ?date where { graph npa:graph { ?decl_np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?decl_np_x npx:invalidates ?decl_np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?decl_np npx:hasNanopubType fip:FIP-Declaration . ?decl_np dct:created ?date . ?decl_np np:hasAssertion ?assertion . } graph ?assertion { ?decl a fip:FIP-Declaration . ?decl fip:refers-to-question ?question . { { ?decl fip:declares-current-use-of ?resource_id_used . bind(fip:declares-current-use-of as ?rel) } union { ?decl fip:declares-planned-use-of ?resource_id_used . bind(fip:declares-planned-use-of as ?rel) } union { ?decl fip:declares-planned-replacement-of ?resource_id_used . bind(fip:declares-planned-replacement-of as ?rel) } union { ?decl fip:declares-replacement-from ?resource_id_used . bind(fip:declares-replacement-from as ?rel) } # unofficial union { ?decl fip:declares-replacement-to ?resource_id_used . bind(fip:declares-replacement-to as ?rel) } # unofficial } # grlc gives an error for some reason if these two optional statements are at the end of the graph block: optional { ?decl dcat:startDate ?startdate . } optional { ?decl dcat:endDate ?enddate . } ?decl fip:declared-by ?community . } bind (replace(str(?community), ".*#", "") as ?c) bind (replace(str(?supercommunity), ".*#", "") as ?sc) bind (replace(str(?question), "^.*-([^-MD]+(-[MD]+)?)$", "$1") as ?q) bind (concat(replace(?q, "F|M", "0"), "x") as ?sort) bind ("" as ?nochoice) } This query returns the preferred IDs of FAIR-Enabling Resources (FERs) as an extra list to the get-fer-pref-ids list, adding the ones that are *only* tagged as fip:FAIR-Enabling-Resource-to-be-Developed. Get FER preferred IDs (extra to-be-developed FERs) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?resource_pref_id ?res ?reslabel ?res_np_date ?resourcetype ?res_np ?np_pre ?pubkey_hash ?np_pre_pubkey_hash where { graph npa:graph { ?res_np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?res_np ; npa:hasValidSignatureForPublicKey ?pubkey . } bind(sha256(?pubkey) as ?pubkey_hash) ## workaround due to https://github.com/knowledgepixels/nanopub-query/issues/14 ?res_np npx:hasNanopubType fip:FAIR-Enabling-Resource-to-be-Developed . filter not exists { ?res_np npx:hasNanopubType fip:FAIR-Enabling-Resource . } ?res_np (npx:introduces|npx:describes) ?resource_pref_id . bind(replace(str(?resource_pref_id), "^.*?(#|/)([^/#]*/?[^/#]*)/?$", "$2") as ?res) ?res_np dct:created ?res_np_date . ?res_np rdfs:label ?reslabel . bind(fip:FAIR-Enabling-Resource-to-be-Developed as ?resourcetype) } optional { select * { graph npa:networkGraph { ?res_np npx:supersedes* ?np_pre_x . } } } bind(coalesce(?np_pre_x, ?res_np) as ?np_pre) bind(concat(str(?np_pre), " ", ?pubkey_hash) as ?np_pre_pubkey_hash) } order by ?resource_pref_id ?res_np This query returns the preferred IDs of FAIR-Enabling Resources (FERs) as an extra list to the get-fer-pref-ids list, adding the ones that are *only* tagged as fip:Available-FAIR-Enabling-Resource. Get FER preferred IDs (extra available FERs) prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?resource_pref_id ?res ?reslabel ?res_np_date ?resourcetype ?res_np ?np_pre ?pubkey_hash ?np_pre_pubkey_hash where { graph npa:graph { ?res_np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?res_np ; npa:hasValidSignatureForPublicKey ?pubkey . } bind(sha256(?pubkey) as ?pubkey_hash) ## workaround due to https://github.com/knowledgepixels/nanopub-query/issues/14 ?res_np npx:hasNanopubType fip:Available-FAIR-Enabling-Resource . filter not exists { ?res_np npx:hasNanopubType fip:FAIR-Enabling-Resource . } ?res_np (npx:introduces|npx:describes) ?resource_pref_id . bind(replace(str(?resource_pref_id), "^.*?(#|/)([^/#]*/?[^/#]*)/?$", "$2") as ?res) ?res_np dct:created ?res_np_date . ?res_np rdfs:label ?reslabel . bind(fip:Available-FAIR-Enabling-Resource as ?resourcetype) } optional { select * { graph npa:networkGraph { ?res_np npx:supersedes* ?np_pre_x . } } } bind(coalesce(?np_pre_x, ?res_np) as ?np_pre) bind(concat(str(?np_pre), " ", ?pubkey_hash) as ?np_pre_pubkey_hash) } order by ?resource_pref_id ?res_np This query returns the preferred IDs of FAIR-Enabling Resources (FERs), including the references to previous nanopublications with older term definitions. Get FER preferred IDs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix fip: <https://w3id.org/fair/fip/terms/> select distinct ?resource_pref_id ?res ?reslabel ?res_np_date ?resourcetype ?res_np ?np_pre ?pubkey_hash ?np_pre_pubkey_hash where { graph npa:graph { ?res_np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?res_np ; npa:hasValidSignatureForPublicKey ?pubkey . } bind(sha256(?pubkey) as ?pubkey_hash) ## workaround due to https://github.com/knowledgepixels/nanopub-query/issues/14 ?res_np npx:hasNanopubType fip:FAIR-Enabling-Resource . ?res_np (npx:introduces|npx:describes) ?resource_pref_id . bind(replace(str(?resource_pref_id), "^.*?(#|/)([^/#]*/?[^/#]*)/?$", "$2") as ?res) ?res_np dct:created ?res_np_date . ?res_np rdfs:label ?reslabel . bind( exists { ?res_np npx:hasNanopubType fip:Available-FAIR-Enabling-Resource } as ?available_resource ) bind( exists { ?res_np npx:hasNanopubType fip:FAIR-Enabling-Resource-to-be-Developed } as ?tobedeveloped_resource ) bind(if(?available_resource, fip:Available-FAIR-Enabling-Resource, if(?tobedeveloped_resource, fip:FAIR-Enabling-Resource-to-be-Developed, fip:FAIR-Enabling-Resource ) ) as ?resourcetype ) } optional { select * { graph npa:networkGraph { ?res_np npx:supersedes* ?np_pre_x . } } } bind(coalesce(?np_pre_x, ?res_np) as ?np_pre) bind(concat(str(?np_pre), " ", ?pubkey_hash) as ?np_pre_pubkey_hash) } order by ?resource_pref_id ?res_np This query returns the IDs of the qualified nanopublications by the GO FAIR Foundation (GFF). Get GFF qualifications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?res_np ?qualification_np where { values ?qpubkey { "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCtpcftn7kbe6toJbOTDQaCcCssEFSWqt6J4rZ02w+TfY7/eIOgJZYOlpL6G3AzO2RNmVYWRPSlMiykaFuaRuBitvk1GKfGdprfZbvXwmeOxpqCTRBQX9EnFyQyd+Ra/ajfw/UsG8skeu1xnUEpnQbpgbQYc/fvhJNN0UwEc77mOwIDAQAB"^^xsd:string "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDO4xkU+/dGujq1raR66QtRqquMxiJ9hm2uzc2uBj7bCBBRnWhTw7M8f77BqAFHShgxqxYTr2do7/tVmoKeM51ISyttxWrh9ebZRoz5o6Muxt7HyA4sLHAmnixeZ5VJfZzsKAmVN23Y2ZiCqMoXjtcp5jO2lOC0AXaGPftnaA8b9QIDAQAB"^^xsd:string "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCFntPrMZqvg2kVhCNArNnEn37ddXGwZ/0r4C8CS4lDry7C7YkYgng9yb0UMZQUHiTVkR/5A4m/xjE+Vy+AnwcWUeB75SfGZjE5ylI6VeHjTHi9+2hh2PHYIWnkhU4WHl3COEnxSSa/VouvPzZ2BIWLH6fTrq7NNL3RF5hGegGG0QIDAQAB"^^xsd:string } graph npa:graph { ?qualification_np npa:hasValidSignatureForPublicKey ?qpubkey . filter not exists { ?qualification_np_x npx:invalidates ?qualification_np ; npa:hasValidSignatureForPublicKey ?qpubkey . } ?qualification_np np:hasAssertion ?qa . } graph ?qa { ?qualifier npx:qualifies ?res_np . } } order by ?res_np ?qualification_np This query returns the IDs of FAIR-Enabling Resources (FERs), including older outdated IDs. Get FER IDs prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix fip: <https://w3id.org/fair/fip/terms/> prefix dct: <http://purl.org/dc/terms/> prefix dce: <http://purl.org/dc/elements/1.1/> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix np: <http://www.nanopub.org/nschema#> prefix dcat: <https://www.w3.org/ns/dcat#> select distinct ?resource_id ?np_pre ?pubkey_hash ?np_pre_pubkey_hash where { graph npa:graph { ?np_pre npa:hasValidSignatureForPublicKeyHash ?pubkey_hash . ?np_pre np:hasAssertion ?res_a . ?np_pre (npx:introduces|npx:describes) ?resource_id . values ?resourcetype { fip:Available-FAIR-Enabling-Resource fip:FAIR-Enabling-Resource-to-be-Developed fip:FAIR-Enabling-Resource } ?np_pre npx:hasNanopubType ?resourcetype . } bind(concat(str(?np_pre), " ", ?pubkey_hash) as ?np_pre_pubkey_hash) } order by ?resource_id ?np_pre This query returns the latest nanopublications marked as examples, excluding superseded and retracted ones. Get the latest example nanopublications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:hasNanopubType npx:ExampleNanopub . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } ?np dct:created ?date . optional { ?np rdfs:label ?label . } optional { ?np npx:signedBy ?creator . } } } order by desc(?date) limit 100 This query returns the latest nanopublications, excluding superseded, retracted, or example ones. Get the latest nanopublications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np dct:created ?date . optional { ?np rdfs:label ?label . } optional { ?np npx:signedBy ?creator . } } } order by desc(?date) limit 100 This query returns the latest nanopublications, excluding superseded, retracted, or example ones. Get the latest nanopublications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?creator ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np dct:created ?date . optional { ?np rdfs:label ?label . } optional { ?np npx:signedBy ?creator . } } } order by desc(?date) limit 100 This query returns the top things being claimed to be underrated. Get top underrated things prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix opo: <https://w3id.org/kpxl/opo/terms/> select distinct (count(distinct ?person) as ?count) ?thing (min(?thingLabel) as ?thingLabel) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType opo:thinksIsUnderrated . ?np dct:created ?date . ?np dct:creator ?person . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i. } graph ?a { ?person opo:thinksIsUnderrated ?thing . } optional { graph ?i { ?thing nt:hasLabelFromApi ?thingLabel1 . } } optional { graph <http://purl.org/np/RA6p8TsYKPUmy6yoKuxjBKn2vRKczjIWrcS2lyyX61myE#assertion> { ?thing rdfs:label ?thingLabel2 . } } bind(coalesce(?thingLabel2, ?thingLabel1) as ?thingLabel) } group by ?thing order by desc(?count) This query returns the top things being claimed to be overrated. Get top overrated things prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix opo: <https://w3id.org/kpxl/opo/terms/> select distinct (count(distinct ?person) as ?count) ?thing (min(?thingLabel) as ?thingLabel) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType opo:thinksIsOverrated . ?np dct:created ?date . ?np dct:creator ?person . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i. } graph ?a { ?person opo:thinksIsOverrated ?thing . } optional { graph ?i { ?thing nt:hasLabelFromApi ?thingLabel1 . } } optional { graph <http://purl.org/np/RA6p8TsYKPUmy6yoKuxjBKn2vRKczjIWrcS2lyyX61myE#assertion> { ?thing rdfs:label ?thingLabel2 . } } bind(coalesce(?thingLabel2, ?thingLabel1) as ?thingLabel) } group by ?thing order by desc(?count) This query returns all entries where users express under-/overrated opinion. Get under-/overrated entries prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix opo: <https://w3id.org/kpxl/opo/terms/> select distinct ?person ?rel ?thing ?np ?date where { { { graph npa:graph { ?np np:hasAssertion ?a . ?np npx:hasNanopubType opo:thinksIsOverrated . bind(opo:thinksIsOverrated as ?rel) } graph ?a { ?person opo:thinksIsOverrated ?thing . } } union { graph npa:graph { ?np np:hasAssertion ?a . ?np npx:hasNanopubType opo:thinksIsUnderrated . } graph ?a { ?person opo:thinksIsUnderrated ?thing . bind(opo:thinksIsUnderrated as ?rel) } } } graph npa:graph { ?np np:hasPublicationInfo ?i. filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npa:hasValidSignatureForPublicKey ?pubkey . } graph ?i { ?np dct:creator ?person . } } order by desc(?date) This query returns all nanopub services announced in nanopublications. Get all nanopub services prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?service ?serviceType ?date ?pubkey where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } optional { ?np dct:created ?date . } ?np np:hasAssertion ?a . } graph ?a { ?service a npx:NanopubService . ?service a ?serviceType . filter(?serviceType != npx:NanopubService) } } order by desc(?date) This query returns all datasets found. Get datasets prefix prov: <http://www.w3.org/ns/prov#> prefix schema: <https://schema.org/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?dataset ?label ?repository where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . ?np np:hasProvenance ?p . } graph ?a { ?dataset a <http://purl.org/dc/dcmitype/Dataset> . optional { ?dataset dct:title ?label . } optional { ?dataset schema:maintainer ?repository . } } graph ?p { ?a prov:wasAttributedTo ?agent . } } This query returns all nanopublications approved by somebody. Get approved nanopubs prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select ?approved_np ?approver ?pubkey ?np ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:hasNanopubType npx:approvesOf . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } ?np dct:created ?date . ?np dct:creator ?approver . ?np np:hasAssertion ?a . } graph ?a { ?approver npx:approvesOf ?approved_np . filter(regex(str(?approved_np), '^.*[^A-Za-z0-9-_]RA[A-Za-z0-9-_]{43}$')) } } This query returns the nanopub or nanopubs that are introducing the given thing, sorted by recency. Get nanopub introducing given thing prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix dct: <http://purl.org/dc/terms/> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:introduces ?_thing_iri . ?np dct:created ?date . } } order by desc(?date) This query returns all nanopub IDs for the given pubkey hash and (optionally) type. Get nanopubs for pubkey and type prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select distinct ?np where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?_pubkeyhash . ?np npx:hasNanopubType ?_type_iri . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?_pubkeyhash . ?np npx:invalidates ?npx . ?npx npx:hasNanopubType ?_type_iri . } } } This query returns all nanopub IDs for the given pubkey hash. Get nanopubs for pubkey prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?np where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?_pubkeyhash . } } This query returns all known pubkeys Get all pubkeys prefix npa: <http://purl.org/nanopub/admin/> select distinct ?pubkey ?pubkeyhash where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npa:hasValidSignatureForPublicKeyHash ?pubkeyhash . } } order by ?pubkey Returns the number of active users per month. Get monthly active user count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?month (count(distinct ?userid) as ?usercount) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . ?np dct:created ?date . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . ?np dct:created ?date . } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter not exists { graph npa:graph { ?np npa:hasSubIri ?userid . } } bind(substr(str(?date), 0, 8) as ?month) } group by ?month order by desc(?month) Returns a list of all events related to the Three Point FAIRification Framework (3PFF) Get 3PFF Events prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix tpff: <https://w3id.org/fair/3pff/> select (?event as ?Event_ID) (?eventShortName as ?Event_ID__label) (?eventLongName as ?Event_Name) (?eventDate as ?Date) (group_concat(distinct ?eventOrganizer; separator=" ") as ?Organizers) (group_concat(distinct ?eventFacilitator; separator=" ") as ?Facilitators) (group_concat(distinct ?eventMoreInfoLink; separator=" ") as ?More_Info) (?np as ?Source) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?npDate . ?np dct:creator ?npCreator . ?np np:hasAssertion ?assertion . ?np npx:introduces ?event . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?assertion { ?event a tpff:3PFF-event . ?event rdfs:label ?eventName . bind(replace(str(?eventName), ' ?\\|.*$', '') as ?eventShortName) bind(replace(str(?eventName), '^([A-Z0-9]{2,3}).*$', '$1') as ?eventSeries) bind(replace(str(?eventName), '^.*\\| ?(.*)$', '$1') as ?eventLongName) ?event dct:date ?eventDate . optional { ?event tpff:has-event-organizer ?eventOrganizer . } optional { ?event tpff:has-event-facilitator ?eventFacilitator . } #optional { # values ?eventType { tpff:In-Person-Event tpff:Hybrid-Event tpff:Virtual-Event } # ?event a ?eventType . # bind(replace(str(?eventType), '^.*/', '') as ?eventTypeName) #} optional { ?event rdfs:seeAlso ?eventMoreInfoLink . } } } group by ?event ?eventShortName ?eventLongName ?eventDate ?np order by desc(?eventDate) This query returns the assertion templates that use the given URI in their statements. Get the templates using given URI prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select distinct ?np ?npLabel ?date ?pubkey where { graph ?assertion { ?statement ?relation ?_thing_iri . values ?relation { rdf:subject rdf:predicate rdf:object nt:possibleValue } } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType nt:UnlistedTemplate . } ?np np:hasAssertion ?assertion . ?np dct:created ?date . optional { ?np rdfs:label ?npLabel } } } limit 1000 This query returns the labels that have been assigned to the thing of the given URI. Get the labels assigned to a thing prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?label ?relation ?np ?npLabel ?date ?pubkey where { graph ?g { ?_thing_iri ?relation ?label . values ?relation { rdfs:label dct:title nt:hasLabelFromApi } } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasGraph ?g . ?np dct:created ?date . optional { ?np rdfs:label ?npLabel } } } limit 1000 This query returns the classes that have been assigned to the thing of the given URI. Get the classes assigned to a thing prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?class ?classLabel ?np ?npLabel ?date ?pubkey where { graph ?g { ?_thing_iri a ?class . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasGraph ?g . ?np np:hasPublicationInfo ?i . ?np dct:created ?date . optional { ?np rdfs:label ?npLabel } } optional { graph ?g { ?class rdfs:label ?classLabel1 . } } optional { graph ?g { ?class dct:title ?classLabel2 . } } optional { graph ?i { ?class rdfs:label ?classLabel3 . } } optional { graph ?i { ?class nt:hasLabelFromApi ?classLabel4 . } } bind(coalesce(?classLabel1, ?classLabel2, ?classLabel3, ?classLabel4) as ?classLabel) } limit 1000 This query returns the instances assigned to the given class. Get instances for class prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> select ?instance ?instanceLabel ?np ?npLabel ?date ?pubkey where { graph ?g { ?instance a ?_class_iri . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasGraph ?g . ?np np:hasPublicationInfo ?i . ?np dct:created ?date . optional { ?np rdfs:label ?npLabel . } } optional { graph ?g { ?instance rdfs:label ?instanceLabel1 . } } optional { graph ?g { ?instance dct:title ?instanceLabel2 . } } optional { graph ?i { ?instance rdfs:label ?instanceLabel3 . } } optional { graph ?i { ?instance nt:hasLabelFromApi ?instanceLabel4 . } } bind(coalesce(?instanceLabel1, ?instanceLabel2, ?instanceLabel3, ?instanceLabel4) as ?instanceLabel) } limit 1000 This query returns the nanopublications that reference the given URI in subject, predicate, or object position. Find referencing nanopubs prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?date ?pubkey where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . } graph npa:graph { ?np npa:hasGraph ?g . } graph ?g { { { ?_ref_iri ?pred ?obj . } union { ?subj ?_ref_iri ?obj . } union { ?subj ?pred ?_ref_iri . } } } } limit 1000 This query returns the latest nanopublications where an instance is assigned to the given class. Get latest instance nanopubs prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?instance ?np ?label ?date ?pubkey where { graph ?g { ?instance a ?_class_iri . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasGraph ?g . ?np dct:created ?date . optional { ?np rdfs:label ?label } } } order by desc(?date) limit 10 This query returns the number of known instances for the given class IRI. Get instance count prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select (count(?instance) as ?count) where { graph ?g { ?instance a ?_class_iri . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npa:hasGraph ?g . } } This query performs a full-text search on the labels for the 3PFF events. Find 3PFF events prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?thing ?label ?description ?np ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType <https://w3id.org/fair/3pff/3PFF-event> . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np npx:introduces|npx:describes ?thing . ?np rdfs:label ?label . optional { ?np dct:description ?description . } ?np np:hasAssertion ?a . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . filter not exists { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/39692876d0a7881c82e9a2cb6dc8859fb16fa69fb41cea2ace2f8fa70bc52aed> { # (http://purl.org/nanopub/x/disapprovesOf) graph npa:graph { ?disapproval_np np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpubkey . filter not exists { ?disapproval_npx npx:invalidates ?disapproval_np ; npa:hasValidSignatureForPublicKey ?dpubkey . } } graph <https://w3id.org/np/RA5PyVZnfPpd5ozkVjzQQbWyfLXCmeApLfhsyl8Rgnmh8#assertion> { ?qpubkeys npx:hasPublicKey ?dpubkey . } graph ?da { ?disapprover npx:disapprovesOf ?np . } } } } limit 10 This query performs a full-text search on the nanopublication labels. Full-text search on labels prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select ?np ?label ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?__pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?__pubkey . } optional { ?np rdfs:label ?label . } ?np dct:created ?date . } ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . } limit 100 This query returns the nanopublication(s) that introduces the given thing. Get introducing nanopub for thing prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> select ?np ?label ?pubkey ?date where { graph npa:graph { ?np npx:introduces ?_thing_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . optional { ?np rdfs:label ?label . } ?np dct:created ?date . } } This query returns all valid nanopublications of the given type. Get nanopublications by type prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> select ?np ?label ?pubkey ?date where { graph npa:graph { ?np npx:hasNanopubType ?_type_iri . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } optional { ?np rdfs:label ?label . } ?np dct:created ?date . } } This query returns candidate nanopublications for submission at the RIO Journal. Get latest candidate nanopublications for RIO prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?np ?label ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . values ?type { <https://w3id.org/kpxl/rel/terms/hasRelationTo> <https://w3id.org/kpxl/rel/terms/tendsToHaveRelationTo> <https://w3id.org/linkflows/superpattern/terms/SuperPatternInstance> <http://purl.org/petapico/o/hycl#AIDA-Sentence> <https://w3id.org/biolink/vocab/related_to> <http://www.w3.org/2004/02/skos/core#relatedMatch> } ?np npx:hasNanopubType ?type . ?np dct:creator ?__creator_iri . ?np dct:created ?date . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } order by desc(?date) This query returns all reactions published for articles in the journal Data Science. Get reactions for Data Science prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?np ?label ?comment ?ref_np ?pubkey ?date where { graph npa:graph { ?ref_np npa:hasValidSignatureForPublicKey ?ref_pubkey . values ?ref_type { <https://w3id.org/kpxl/rel/terms/hasRelationTo> <https://w3id.org/kpxl/rel/terms/tendsToHaveRelationTo> <https://w3id.org/linkflows/superpattern/terms/SuperPatternInstance> <http://purl.org/petapico/o/hycl#AIDA-Sentence> <https://w3id.org/biolink/vocab/related_to> <http://www.w3.org/ns/mls#Run> } ?ref_np npx:hasNanopubType ?ref_type . filter not exists { ?ref_np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?ref_npx npx:invalidates ?ref_np ; npa:hasValidSignatureForPublicKey ?ref_pubkey . } graph npa:networkGraph { ?np npa:refersToNanopub ?ref_np . } ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:hasNanopubType <http://purl.org/spar/cito/cites> . ?np rdfs:label ?label . ?np dct:created ?date . service <https://query.knowledgepixels.com/repo/type/2c1cce3f3152738c1009d59251409392aaaa3b0324bcb5fdfb4b7b944b8f0c18> { select ?np ?comment where { graph npa:graph { ?np np:hasAssertion ?a . } graph ?a { ?a rdfs:comment ?comment . } } } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } order by desc(?date) This query returns candidate nanopublications for submission at the journal Data Science. Get latest candidate nanopublications for Data Science prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?np ?label ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . values ?type { <https://w3id.org/kpxl/rel/terms/hasRelationTo> <https://w3id.org/kpxl/rel/terms/tendsToHaveRelationTo> <https://w3id.org/linkflows/superpattern/terms/SuperPatternInstance> <http://purl.org/petapico/o/hycl#AIDA-Sentence> <https://w3id.org/biolink/vocab/related_to> <http://www.w3.org/ns/mls#Run> } ?np npx:hasNanopubType ?type . ?np dct:creator ?__creator_iri . ?np dct:created ?date . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } order by desc(?date) This query returns nanopublications referencing the given URI in subject, predicate, or object position. Find URI references prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np (?__graphpred_iri as ?graphpred) ?subj ?pred ?obj ?date (?__pubkey as ?pubkey) where { graph ?g { { { bind(?_ref_iri as ?subj) } union { bind(?_ref_iri as ?pred) } union { bind(?_ref_iri as ?obj) } } ?subj ?pred ?obj . } graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?__pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?__pubkey . } ?np dct:created ?date . ?np ?__graphpred_iri ?g . values ?__graphpred_iri { np:hasAssertion np:hasProvenance np:hasPublicationInfo } } } limit 100 This query returns the latest accepted nanopublications at the Biodiversity Data Journal (BDJ). Get latest nanopublications accepted at BDJ prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix bibo: <http://purl.org/ontology/bibo/> select ?np ?label ?firstAuthor ?date where { values ?pubkey { "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37" "cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0" "170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6" } graph npa:graph { ?np dct:created ?date . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . ?np rdfs:label ?label . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } } graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } order by desc(?date) limit 100 This query returns the latest accepted nanopublications at the RIO journal. Get latest nanopublications accepted at RIO prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix bibo: <http://purl.org/ontology/bibo/> select ?np ?label ?firstAuthor ?date where { values ?pubkey { "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37" "cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0" "170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6" } graph npa:graph { ?np dct:created ?date . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . ?np rdfs:label ?label . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } } graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } order by desc(?date) limit 100 This query returns the latest accepted nanopublications at the Data Science journal. Get latest nanopublications accepted at Data Science prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix bibo: <http://purl.org/ontology/bibo/> select ?np ?label ?firstAuthor ?date where { values ?pubkey { "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37" "cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0" "170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6" } graph npa:graph { ?np dct:created ?date . ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . ?np rdfs:label ?label . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } } graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } order by desc(?date) limit 100 This query returns reactions for a given nanopublication, as shown by the Nanodash connectors. Get reactions prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix cito: <http://purl.org/spar/cito/> select distinct ?np ?person ?rel ?reltext ?pub ?text ?date ?pubkey where { graph npa:networkGraph { ?_pub_iri npx:supersedes* ?pub . } graph npa:graph { ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i. ?np dct:created ?date . ?np dct:creator ?person . ?np npx:hasNanopubType cito:cites . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?a dct:creator ?person . ?a ?rel ?pub . optional { ?a rdfs:comment ?text . } filter(strstarts(str(?rel), str(cito:))) } graph <http://purl.org/np/RA6d0qLmlRdXd-ubre83LxP22auJdJjXGzaW3W3qH4Neo#assertion> { ?rel rdfs:label ?reltext . } } order by desc(?date) This query returns the latest candidate nanopublications in biodiversity. Get latest candidate nanopubs in biodiversity prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> select ?np ?label ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np rdfs:label ?label . ?np dct:creator ?__creator_iri . ?np npx:hasNanopubType biodiv:BiodivNanopub . filter(not exists { ?np npx:hasNanopubType <https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> } ) filter(not exists { ?np npx:hasNanopubType <https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> } ) filter(not exists { ?np npx:hasNanopubType <https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> } ) } } order by desc(?date) limit 100 This query returns all creator / pubkey pairs, independent of their approval status. Get all creator / pubkey pairs prefix np: <http://www.nanopub.org/nschema#> prefix npx: <http://purl.org/nanopub/x/> prefix npa: <http://purl.org/nanopub/admin/> prefix dct: <http://purl.org/dc/terms/> select distinct ?creator ?pubkey where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?creator . filter(!strstarts(str(?creator), str(?np))) } } order by ?creator This query returns autocomplete suggestions for full-text queries. The 'query' parameter needs to be a single token ending in '*', e.g. 'ab*'. Get autocomplete suggestions prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> prefix search: <http://www.openrdf.org/contrib/lucenesail#> select distinct ?suggestion { { select ?suggestion where { graph npa:graph { ?np rdfs:label ?label . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } filter(!contains(?_query, " ")) filter(strEnds(?_query, "*")) ?np search:matches [ search:query ?_query ; search:property rdfs:label ; search:score ?score ; search:snippet ?snippet ] . bind(replace(?snippet, ".*<B>(.*)</B>.*", "$1") as ?suggestion) } limit 100 } } group by ?suggestion This queries returns a list of suggested templates to get started, so it can be shown e.g. on Nanodash. Get suggested templates to get started prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?template_np ?label ?date where { graph npa:graph { ?np npx:hasNanopubType <https://w3id.org/kpxl/gen/terms/SuggestedTemplateToGetStarted> . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { ?template_np a <https://w3id.org/kpxl/gen/terms/SuggestedTemplateToGetStarted> . } } order by desc(?date) This query returns the latest version(s) of a given nanopublication, if any. Get the latest version of a nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix dct: <http://purl.org/dc/terms/> select ?latest ?date where { graph npa:graph { ?_np_iri npa:hasValidSignatureForPublicKey ?pubkey . ?latest npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?latest ; npa:hasValidSignatureForPublicKey ?pubkey . } ?latest dct:created ?date . } graph npa:networkGraph { ?latest (npx:supersedes)* ?_np_iri . } } This query returns the latest nanopublications published of the given type Get the latest nanopublications of given type prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . ?np npx:hasNanopubType ?_type_iri . optional { ?np rdfs:label ?label } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } order by desc(?date) limit 100 This query returns some general user statistics from the given pubkey hashes in the form of number of valid/invalidated/accepted nanopublications published. Get some general user statistics from user pubkeys prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix pav: <http://purl.org/pav/> select ?key ?value where { { select ?key (count(?np) as ?value) where { #==================== MULTI-VALUE PLACEHOLDER =====================#------ config: ------ { select ?pkh { # <- VAR pkh bind(?_pubkeyhashes as ?vs) # <- VAR _pubkeyhashes {select*{optional{<x:> <x:> <x:>}}} # (for some Virtuoso ver.) # values ?x {0 1 2 3 4 5 6 7 8 9} values ?y {0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works up to a maximum of 100 values) # bind(" " as ?sep) # (separator as single regex-compatible char) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?vs,?p))) # (?n=0 check for Viruoso) # bind(replace(if(?n=0,?vs,replace(?vs,?p,"")),?p0,"") as ?pkh) # <- VAR pkh filter(!bound(?pkh) || exists {?any_np npa:hasValidSignatureForPublicKeyHash ?pkh }) # Filter out the hashes for which no repo exists; try to do this better with future versions of Nanopub Query } } # #==================================================================#--------------------- bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/pubkey/", ?pkh)) as ?pubkeyservice) service ?pubkeyservice { select distinct ?np ?invalidated { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?_userid_iri . bind( exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } as ?invalidated ) } } } } bind(if(?invalidated,"invalidatedNpCount","validNpCount") as ?key) values ?key { "invalidatedNpCount" "validNpCount" } } group by ?key ?invalidated } union { select ?key (sum(?npcount) as ?value) where { bind("acceptedNpCount" as ?key) values ?npType { <https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> <https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> <https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { select (count(distinct ?np) as ?npcount) where { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasPublicationInfo ?i . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } { { graph ?i { ?np pav:authoredBy ?_userid_iri . } } union { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?_userid_iri . filter(strstarts(str(?hasElement), str(rdf:_))) } } } } } group by ?np } } group by ?key } } order by ?key This query returns some general user statistics in the form of number of valid/invalidated/accepted nanopublications published. Get some general user statistics prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix pav: <http://purl.org/pav/> select ?key ?value where { { select ?key (count(?np) as ?value) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?_userid_iri . bind( exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } as ?invalidated ) } bind(if(?invalidated,"invalidatedNpCount","validNpCount") as ?key) values ?key { "invalidatedNpCount" "validNpCount" } } group by ?key ?invalidated } union { select ?key (sum(?npcount) as ?value) where { bind("acceptedNpCount" as ?key) optional { <x:> <x:> ?_userid_iri } # ensure grlc is picking up the placeholder values ?npType { <https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> <https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> <https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { select (count(distinct ?np) as ?npcount) where { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasPublicationInfo ?i . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } { { graph ?i { ?np pav:authoredBy ?_userid_iri . } } union { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?_userid_iri . filter(strstarts(str(?hasElement), str(rdf:_))) } } } } } group by ?np } } group by ?key } } order by ?key This query returns the latest nanopublications from the given user IRI. Get the latest nanopublications from userid prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?pubkey ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . ?np dct:creator ?_userid_iri . optional { ?np rdfs:label ?label } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } order by desc(?date) limit 100 This query returns some general user statistics in the form of number of valid/invalidated/accepted nanopublications published. Get some general user statistics prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix pav: <http://purl.org/pav/> select ?key ?value where { { select ?key (count(?np) as ?value) where { #==================== MULTI-VALUE PLACEHOLDER =====================#------ config: ------ { select ?pkh { # <- VAR pkh bind(?__pubkeyhashes as ?pubkeyhashes) # <- VAR __pubkeyhashes bind(if(bound(?pubkeyhashes), ?pubkeyhashes, "") as ?vs) # {select*{optional{?a ?b ?c}}limit 1} # (for some Virtuoso ver.) # values ?x {0 1 2 3 4 5 6 7 8 9} values ?y {0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works up to a maximum of 100 values) # bind(" " as ?sep) # (separator as single regex-compatible char) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?vs,?p))) # (?n=0 check for Viruoso) # bind(replace(if(?n=0,?vs,replace(?vs,?p,"")),?p0,"") as ?pkh) # <- VAR pkh filter(!bound(?pkh) || exists {?any_np npa:hasValidSignatureForPublicKeyHash ?pkh }) # Filter out the hashes for which no repo exists; try to do this better with future versions of Nanopub Query } } # #==================================================================#--------------------- bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/pubkey/", ?pkh)) as ?pubkeyservice) bind(if(bound(?pkh), ?pubkeyservice, <https://w3id.org/np/l/nanopub-query-1.1/repo/full>) as ?service) # Should be /meta once RDF4J bug is resolved and we can allow for >1 concurrent queries service ?service { select distinct ?np ?invalidated { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?_userid_iri . bind( exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } as ?invalidated ) } } } } bind(if(?invalidated,"invalidatedNpCount","validNpCount") as ?key) values ?key { "invalidatedNpCount" "validNpCount" } } group by ?key ?invalidated } union { select ?key (sum(?npcount) as ?value) where { bind("acceptedNpCount" as ?key) optional { <x:> <x:> ?_userid_iri } # ensure grlc is picking up the placeholder values ?npType { <https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> <https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> <https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { select (count(distinct ?np) as ?npcount) where { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasPublicationInfo ?i . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } { { graph ?i { ?np pav:authoredBy ?_userid_iri . } } union { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?_userid_iri . filter(strstarts(str(?hasElement), str(rdf:_))) } } } } } group by ?np } } group by ?key } } order by ?key This query returns a list of FDOs, possibly restricted by type of search term. Get FDOs prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix fdof: <https://w3id.org/fdof/ontology#> select ?fdo ?label ?type ?np ?creator where { graph npa:graph { ?np npx:hasNanopubType fdof:FAIRDigitalObject . ?np dct:creator ?creator . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np np:hasAssertion ?a . } graph ?a { ?fdo fdof:hasInformationObjectType ?__type_iri . bind(?__type_iri as ?type) ?fdo rdfs:label ?label . bind(?__query as ?query) filter(if(bound(?query), contains(lcase(str(?label)), lcase(?query)), true)) } } This query returns all the nanopublications created in the last 30 days, sorted by recency. Get all nanopubs of the last 30 days prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?np ?label ?userid ?date where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . optional { ?np rdfs:label ?label . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?np npx:hasNanopubType npx:retracts . } optional { ?np dct:creator ?userid . } } } order by desc(?date) This query is for auto-complete lookup of FDO types. FDO type lookup prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> select ?thing ?label where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } ?np npx:introduces ?thing . ?np np:hasAssertion ?a . } graph ?a { ?thing rdfs:label ?label . filter(contains(lcase(str(?label)), lcase(?_query))) } } limit 10 This query returns the 10 creators who created most nanopublications during the last 30 days. Get the top-10 creators of the last 30 days prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select distinct ?userid (count(distinct ?np) as ?count) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter(?userid != <https://orcid.org/1234-1234-1234-1234>) filter(?userid != <https://orcid.org/0000-0000-0000-0000>) filter(!regex(str(?userid), '[^A-Za-z0-9-_]RA[A-Za-z0-9-_]{43}$')) } group by ?userid order by desc(?count) limit 10 This query returns the latest nanopublications from the given set of pubkey hashes. Get the latest nanopublications from pubkeys prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?pubkey ?date where { #==================== MULTI-VALUE PLACEHOLDER =====================#------ config: ------ { select ?pkh { # <- VAR pkh bind(?_pubkeyhashes as ?vs) # <- VAR _pubkeyhashes {select*{optional{?a ?b ?c}}limit 1} # (for some Virtuoso ver.) # values ?x {0 1 2 3 4 5 6 7 8 9} values ?y {0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works up to a maximum of 100 values) # bind(" " as ?sep) # (separator as single regex-compatible char) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?vs,?p))) # (?n=0 check for Viruoso) # bind(replace(if(?n=0,?vs,replace(?vs,?p,"")),?p0,"") as ?pkh) # <- VAR pkh filter(exists {?any_np npa:hasValidSignatureForPublicKeyHash ?pkh }) # Filter out the hashes for which no repo exists; try to do this better with future versions of Nanopub Query } } # #==================================================================#--------------------- bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/pubkey/", ?pkh)) as ?service) service ?service { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . optional { ?np rdfs:label ?label } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkeyx . filter(contains(?_pubkeyhashes, sha256(str(?pubkeyx)))) } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } } order by desc(?date) limit 100 This query returns the latest nanopublications from the given set of pubkey hashes and/or from the given user IRI. Get the latest nanopublications from pubkeys/userid prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select ?np ?label ?pubkey ?date where { #==================== MULTI-VALUE PLACEHOLDER =====================#------ config: ------ { select ?pkh { # <- VAR pkh bind(if(?__pubkeyhashes = "", ?unbound, ?__pubkeyhashes) as ?vs) # <- VAR __pubkeyhashes {select*{optional{?a ?b ?c}}limit 1} # (for some Virtuoso ver.) # values ?x {0 1 2 3 4 5 6 7 8 9} values ?y {0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works up to a maximum of 100 values) # bind(" " as ?sep) # (separator as single regex-compatible char) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?vs,?p))) # (?n=0 check for Viruoso) # bind(replace(if(?n=0,?vs,replace(?vs,?p,"")),?p0,"") as ?pkh) # <- VAR pkh } } # #==================================================================#--------------------- bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/pubkey/", ?pkh)) as ?pubkeyservice) bind(if(bound(?pkh), ?pubkeyservice, <https://w3id.org/np/l/nanopub-query-1.1/repo/meta>) as ?service) service ?service { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . ?np dct:creator ?__userid_iri . optional { ?np rdfs:label ?label } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter not exists { ?np npx:hasNanopubType npx:retracts . } } } } order by desc(?date) limit 100 This query returns some general user statistics in the form of number of valid/invalidated/accepted nanopublications published. Get some general user statistics prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix pav: <http://purl.org/pav/> select ?key ?value where { { select ?key (count(?np) as ?value) where { optional { <x:> <x:> ?_pubkeyhashes } # ensure grlc is picking up the placeholder #==================== MULTI-VALUE PLACEHOLDER =====================#------ config: ------ { select ?pkh { # <- VAR pkh bind(?_pubkeyhashes as ?vs) # <- VAR _pubkeyhashes {select*{optional{?a ?b ?c}}limit 1} # (for some Virtuoso ver.) # values ?x {0 1 2 3 4 5 6 7 8 9} values ?y {0 1 2 3 4 5 6 7 8 9} # bind((10*?x)+?y as ?n) # (works up to a maximum of 100 values) # bind(" " as ?sep) # (separator as single regex-compatible char) # <- CONST sep bind(concat("^([^",?sep,"]*",?sep,"){",str(?n),"}") as ?p) # bind(concat(?sep,".*") as ?p0) # filter(if(?n=0,true,regex(?vs,?p))) # (?n=0 check for Viruoso) # bind(replace(if(?n=0,?vs,replace(?vs,?p,"")),?p0,"") as ?pkh) # <- VAR pkh } } # #==================================================================#--------------------- bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/pubkey/", ?pkh)) as ?service) service ?service { select distinct ?np ?invalidated { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . bind( exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkeyx . filter(contains(?_pubkeyhashes, sha256(str(?pubkeyx)))) } as ?invalidated ) } } } } bind(if(?invalidated,"invalidatedNpCount","validNpCount") as ?key) values ?key { "invalidatedNpCount" "validNpCount" } } group by ?key ?invalidated } union { select ?key (sum(?npcount) as ?value) where { bind("acceptedNpCount" as ?key) optional { <x:> <x:> ?_userid_iri } # ensure grlc is picking up the placeholder values ?npType { <https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> <https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> <https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { select (count(distinct ?np) as ?npcount) where { optional { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasPublicationInfo ?i . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } { { graph ?i { ?np pav:authoredBy ?_userid_iri . } } union { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?_userid_iri . filter(strstarts(str(?hasElement), str(rdf:_))) } } } } } group by ?np } } group by ?key } } order by ?key This query returns all nanopublications accepted at a journal by the given author. Get all nanopublications by given author prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix pav: <http://purl.org/pav/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select ?np ?label ?npType ?timestamp where { values (?npType ?pubkeys) { (<https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { select distinct ?np ?label ?timestamp where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter(contains(?pubkeys, sha256(?pubkey))) } { { graph ?i { ?np pav:authoredBy ?_author_iri . } } union { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?_author_iri . filter(strstarts(str(?hasElement), str(rdf:_))) } } } } group by ?np ?label ?timestamp } } order by desc(?timestamp) This query returns the final publisher version of the given nanopublication, or an empty result if no such version is found. Returns the final publisher version of the given nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix prov: <http://www.w3.org/ns/prov#> select ?publisher_version_np ?npType ?journalName where { graph npa:graph { bind(replace(str(?_npid), "^.*[^a-zA-Z0-9-_](RA[a-zA-Z0-9-_]{43})$", "$1") as ?ac) ?np npa:artifactCode ?ac . } values (?npType ?journalName ?pubkeys) { (<https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> "RIO Journal" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> "Biodiversity Data Journal" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> "Data Science" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") } bind(?__type_iri as ?t) filter(!bound(?t) || ?t = ?npType) bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { graph npa:graph { ?publisher_version_np npa:hasValidSignatureForPublicKey ?pubkey . ?publisher_version_np np:hasPublicationInfo ?i . filter not exists { ?publisher_version_np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?publisher_version_np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter(contains(?pubkeys, sha256(?pubkey))) } graph ?i { ?publisher_version_np prov:wasDerivedFrom ?np . } } } This query returns all the reactions modeled with CiTO and published as nanopublications that refer to a given paper (e.g. by DOI) or other nanopublication. Get all reactions on a paper or nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> select distinct ?np ?user ?rel ?reltext ?pub ?text ?date ?pubkey where { graph npa:networkGraph { ?_pub_iri npx:supersedes* ?pub . } graph npa:graph { ?np np:hasAssertion ?a . ?np dct:created ?date . ?np dct:creator ?user . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?a dct:creator ?user . ?a ?rel ?pub . optional { ?a rdfs:comment ?text . } filter regex(str(?rel), "http://purl.org/spar/cito/.*") } graph <http://purl.org/np/RA6d0qLmlRdXd-ubre83LxP22auJdJjXGzaW3W3qH4Neo#assertion> { ?rel rdfs:label ?reltext . } } order by desc(?date) This query returns all the nanopublications that refer to (e.g. annotate) a given paper. Get nanopublications refering to a given paper prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> select distinct ?np ?user ?type ?subj ?subjLabel ?rel ?relLabel ?text ?selection ?date where { graph npa:graph { ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i. ?np dct:created ?date . ?np dct:creator ?user . ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?subj ?rel ?_paper_iri . } optional { ?a rdfs:comment ?textPre . bind(str(?textPre) as ?text) } optional { graph <http://purl.org/np/RA6d0qLmlRdXd-ubre83LxP22auJdJjXGzaW3W3qH4Neo#assertion> { ?rel rdfs:label ?relLabelPre . bind("cito" as ?typePre) } } optional { graph ?a { ?annotation oa:hasTarget ?annotationtarget ; oa:hasBody ?annotationbody . ?annotationbody rdf:value ?annotationtext . ?annotationtarget oa:hasSource ?_paper_iri ; oa:hasSelector ?annotationSelector . optional { ?annotationSelector oa:prefix ?annotatedprefix . } ?annotationSelector oa:exact ?annotatedtext . optional { ?annotationSelector oa:suffix ?annotatedsuffix . } bind("oa" as ?typePre) bind(str(?annotationtext) as ?text) bind(concat(?annotatedprefix, "<h>", ?annotatedtext, "</h>", ?annotatedsuffix) as ?selection) } } bind(replace(str(?subj), '^.*?([a-zA-Z0-9\\-\\_]+)$', '$1') as ?subjLabel). bind(coalesce(str(?relLabelPre), replace(str(?rel), '^.*?([a-zA-Z0-9\\-\\_]+)$', '$1')) as ?relLabel). bind(coalesce(?typePre, "other") as ?type). } order by desc(?date) This query returns all biodiversity-relation nanopublications. Get biodiversity-related nanopublications prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix biolink: <https://w3id.org/biolink/vocab/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix biodiv: <https://w3id.org/kpxl/biodiv/terms/> prefix prov: <http://www.w3.org/ns/prov#> select distinct ?np ?label (group_concat(distinct ?creator; separator = ", ") as ?creators) ?pubkey ?date ?provtlabel ?provsrc where { graph npa:graph { ?np np:hasPublicationInfo ?i. ?np np:hasProvenance ?p. ?np np:hasAssertion ?a. ?np dct:created ?date . ?np rdfs:label ?labelx . bind(str(?labelx) as ?label) ?np dct:creator ?__creator_iri . bind(?__creator_iri as ?creator) ?np npx:hasNanopubType biodiv:BiodivNanopub . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np npx:hasNanopubType ?__type_iri . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?i { ?np nt:wasCreatedFromProvenanceTemplate ?provtnp . } optional { graph ?p { ?a prov:wasDerivedFrom ?provsrc . } } optional { graph npa:graph { ?provtnp rdfs:label ?provtlabelx . bind(str(?provtlabelx) as ?provtlabel) } } } group by ?np ?label ?type ?pubkey ?date ?provtlabel ?provsrc order by desc(?date) This query returns some basic info - creator, author, label, etc. - on the head version of a nanopublication, i.e. the user-generated original version or - if available - a publisher-accepted version at a journal. Get info on the head version of a nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix bibo: <http://purl.org/ontology/bibo/> prefix pav: <http://purl.org/pav/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix prov: <http://www.w3.org/ns/prov#> select ?head_version_np ?author_version_np ?publisher_version_np ?np_type ?journal_name ?main_author_or_creator ?creator ?main_author ?author_count ?label ?date ?author_version_date { { select ?given_np ?head_version_np ?author_version_np_pre ?publisher_version_np ?np_type ?journal_name ?author_version_date where { graph npa:graph { bind(replace(str(?_np_iri), "^.*[^a-zA-Z0-9-_](RA[a-zA-Z0-9-_]{43})$", "$1") as ?ac) ?given_np npa:artifactCode ?ac . } optional { values (?np_type ?journal_name ?pubkeys) { (<https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> "RIO Journal" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> "Biodiversity Data Journal" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> "Data Science" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?np_type)))) as ?service) service ?service { graph npa:graph { ?publisher_version_np npa:hasValidSignatureForPublicKey ?pubkey . ?publisher_version_np np:hasPublicationInfo ?i . filter not exists { ?publisher_version_np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?publisher_version_np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter(contains(?pubkeys, sha256(?pubkey))) } { graph ?i { ?publisher_version_np prov:wasDerivedFrom ?given_np . bind(?given_np as ?author_version_np_pre) } } union { graph ?i { filter(?publisher_version_np = ?given_np) ?publisher_version_np prov:wasDerivedFrom ?author_version_np_pre . } } } } } } bind(coalesce(?author_version_np_pre, ?given_np) as ?author_version_np) graph npa:graph { ?author_version_np dct:created ?author_version_date . } bind(coalesce(?publisher_version_np, ?author_version_np) as ?head_version_np) bind(?head_version_np as ?np) { select distinct ?np (coalesce(?signer, min(?declaredCreator)) as ?creator) (coalesce(?firstAuthor, min(?author), min(?creator)) as ?main_author) (if(count(distinct ?author)>0,count(distinct ?author),count(distinct ?creator)) as ?author_count) ?label ?date where { graph npa:graph { ?np dct:created ?date . ?np rdfs:label ?label . ?np np:hasPublicationInfo ?i . ?np dct:creator ?declaredCreator . optional { ?np npx:signedBy ?signer . } } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?signer ?introducedThing ?label ?date ?firstAuthor } bind(coalesce(?main_author, ?creator) as ?main_author_or_creator) } This query returns the 10 authors with the most nanopublications accepted in journals. Get the top-10 authors prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select ?author (count(distinct ?np) as ?npcount) where { values (?npType ?journalName ?pubkeys) { (<https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> "RIO Journal" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> "Biodiversity Data Journal" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> "Data Science" "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } } filter(bound(?author)) } group by ?author order by desc(?npcount) limit 10 This query returns the latest nanopublications accepted at a journal, currently covering RIO, Biodiversity Data Journal, and Data Science. get latest accepted nanopubs prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select ?np ?label ?npType ?mainAuthor ?authorEtAl ?timestamp ?date where { values (?npType ?pubkeys) { (<https://w3id.org/kpxl/pensoft/rio/terms/RIOJournalNanopub> "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/pensoft/bdj/terms/BiodiversityDataJournalNanopub> "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") (<https://w3id.org/kpxl/ios/ds/terms/DataScienceNanopub> "1162349fdeaf431e71ab55898cb2a425b971d466150c2aa5b3c1beb498045a37 cfe248c38933693b1ddeb62e17976a4d2396b0c738af5356bfffbe559d1a3de0 170211c91a70e67992d52c760de3f0052c8c7271bd3c225ef0347245e8517ff6") } bind(uri(concat("https://w3id.org/np/l/nanopub-query-1.1/repo/type/", sha256(str(?npType)))) as ?service) service ?service { select distinct ?np ?label (coalesce(?firstAuthor, min(?author), min(?creator)) as ?mainAuthor) (if(if(count(distinct ?author)>0, count(distinct ?author), count(distinct ?creator)) > 1, " et al.", "") as ?authorEtAl) ?timestamp (substr(str(?timestamp), 0, 11) as ?date) where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } filter(contains(?pubkeys, sha256(?pubkey))) } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?label ?timestamp } } order by desc(?timestamp) limit 10 This query returns the 10 templates that were used most during the last 30 days. Get the top-10 templates of the last 30 days prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> select distinct ?template (count(distinct ?np) as ?count) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasPublicationInfo ?i . } graph ?i { ?np nt:wasCreatedFromTemplate ?template . } } group by ?template order by desc(?count) limit 10 This query returns the 10 creators who created most nanopublications during the last 30 days. Get the top-10 creators of the last 30 days prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select distinct ?userid (count(distinct ?np) as ?count) where { { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:creator ?userid . } } union { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np np:hasProvenance ?prov . } graph ?prov { ?assertion prov:wasAttributedTo ?userid . } } filter(strstarts(str(?userid), "https://orcid.org/")) } group by ?userid order by desc(?count) limit 10 This query returns the final nanopublications of the given author that have been accepted at the Biodiversity Data Journal. Get latest nanopublications at Biodiversity Data Journal by given author prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select distinct ?np ?label (coalesce(?firstAuthor, min(?author), min(?creator)) as ?mainAuthor) (if(if(count(distinct ?author)>0, count(distinct ?author), count(distinct ?creator)) > 1, " et al.", "") as ?authorEtAl) ?timestamp (substr(str(?timestamp), 0, 11) as ?date) where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?_author_iri . filter(strstarts(str(?hasElement), str(rdf:_))) } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?label ?timestamp order by desc(?timestamp) limit 10 This query returns the most used taxon names in accepted nanopublications of the Biodiversity Data Journal. Get the most used taxons in BDJ prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select ?taxonName (max(?taxonNameLabel) as ?taxonNameLabel) (count(?taxonName) as ?taxonNameCount) where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?association <https://w3id.org/kpxl/biodiv/terms/hasTaxonName> ?taxonName . } optional { graph ?i { ?taxonName <https://w3id.org/np/o/ntemplate/hasLabelFromApi> ?taxonNameLabel . } } } group by ?taxonName order by desc(?taxonNameCount) limit 10 This query returns the number of accepted nanopublications per journal, for all known journals with nanopublications. Get number of nanopublications per journal prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select distinct ?journal (count(?np) as ?npcount) where { { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/4bd6efc556b296ff29805b28082513e9a66c850f7ae38d176568f447863ba1da> { bind("Biodiversity Data Journal" as ?journal) graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } } union { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/26df80496b38ffcad72b10e137bc78dbc6087e9eb171c09b10f2c9bf4240abc6> { bind("Data Science" as ?journal) graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } } union { service <https://w3id.org/np/l/nanopub-query-1.1/repo/type/9d535811c66bd27b8c44331f56c51b3290b40e8e26c1b1638b4de5d4b13ec159> { bind("RIO Journal" as ?journal) graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } } } } group by ?journal order by desc(?npcount) This query returns the final nanopublications that have been accepted at the Data Science journal. Get latest nanopublications at Data Science journal prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select distinct ?np ?label (coalesce(?firstAuthor, min(?author), min(?creator)) as ?mainAuthor) (if(if(count(distinct ?author)>0, count(distinct ?author), count(distinct ?creator)) > 1, " et al.", "") as ?authorEtAl) ?timestamp (substr(str(?timestamp), 0, 11) as ?date) where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?label ?timestamp order by desc(?timestamp) limit 10 This query returns the final nanopublications that have been accepted at the Biodiversity Data Journal. Get latest nanopublications at Biodiversity Data Journal prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select distinct ?np ?label (coalesce(?firstAuthor, min(?author), min(?creator)) as ?mainAuthor) (if(if(count(distinct ?author)>0, count(distinct ?author), count(distinct ?creator)) > 1, " et al.", "") as ?authorEtAl) ?timestamp (substr(str(?timestamp), 0, 11) as ?date) where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?label ?timestamp order by desc(?timestamp) limit 10 This query returns the final nanopublications that have been accepted at the RIO Journal. Get latest nanopublications at RIO Journal prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select distinct ?np ?label (coalesce(?firstAuthor, min(?author), min(?creator)) as ?mainAuthor) (if(if(count(distinct ?author)>0, count(distinct ?author), count(distinct ?creator)) > 1, " et al.", "") as ?authorEtAl) ?timestamp (substr(str(?timestamp), 0, 11) as ?date) where { graph npa:graph { ?np dct:created ?timestamp . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?label ?timestamp order by desc(?timestamp) limit 10 Testing API updating... API updating test select * where { bind("third version" as ?t) } This query returns the core info - creator, author, label, etc. - of a given nanopublication. Get the core info of a nanopublication prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix oa: <http://www.w3.org/ns/oa#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix nt: <https://w3id.org/np/o/ntemplate/> prefix pav: <http://purl.org/pav/> prefix bibo: <http://purl.org/ontology/bibo/> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> select distinct ?np (coalesce(?signer, min(?declaredCreator)) as ?creator) (coalesce(?firstAuthor, min(?author), min(?creator)) as ?mainAuthor) (if(count(distinct ?author)>0,count(distinct ?author),count(distinct ?creator)) as ?authorCount) ?introducedThing ?label ?date where { graph npa:graph { bind(replace(str(?_np_iri), "^.*[^a-zA-Z0-9-_](RA[a-zA-Z0-9-_]{43})$", "$1") as ?ac) ?np npa:artifactCode ?ac . optional {<x:> <x:> ?_np_iri} # for grlc to pick up the placeholder ?np npa:hasHeadGraph ?h . ?np dct:created ?date . ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np rdfs:label ?label . ?np np:hasPublicationInfo ?i . ?np dct:creator ?declaredCreator . optional { ?np npx:signedBy ?signer . } optional { ?np npx:introduces ?introducedThing . } } optional { graph ?i { ?np pav:authoredBy ?author . } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList ?hasElement ?author . filter(strstarts(str(?hasElement), str(rdf:_))) } } optional { graph ?i { ?np bibo:authorList ?authorList . ?authorList rdf:_1 ?firstAuthor . } } } group by ?np ?signer ?introducedThing ?label ?date ?firstAuthor Returns all references (in the assertion graph) of the given subject IRI. Subject References prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix prov: <http://www.w3.org/ns/prov#> prefix foaf: <http://xmlns.com/foaf/0.1/> select ?pred ?obj ?date ?creator where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np dct:created ?date . ?np dct:creator ?creator . ?np np:hasAssertion ?assertion . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?assertion { ?_subj_iri ?pred ?obj . } } order by desc(?date) Returns all annotations with field value selectors (experimental) Get all field value annotations prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix np: <http://www.nanopub.org/nschema#> prefix npa: <http://purl.org/nanopub/admin/> prefix npx: <http://purl.org/nanopub/x/> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix dct: <http://purl.org/dc/terms/> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix oa: <http://www.w3.org/ns/oa#> select ?target_source ?field ?value ?np ?user where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?a . ?np np:hasPublicationInfo ?i . filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . } filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?a { ?ann a oa:Annotation . ?ann oa:hasTarget ?target . ?target oa:hasSource ?target_source . ?target oa:hasSelector ?selector . ?selector a <http://example.org/FieldValueSelector> . ?selector <http://example.org/hasField> ?field . ?ann oa:hasBody ?body . ?body rdf:value ?value . } graph ?i { optional { ?sig npx:hasSignatureTarget ?np . ?sig npx:signedBy ?user . } } } order by desc(?date) Thanks for implementing this feature. I find this useful. more testing... a bit of testing... just testing... testing... discussing our next steps... demoing new features... The README file of Nanodash. SHACL is great for validating RDF.