{"id":14575,"date":"2026-07-29T12:16:20","date_gmt":"2026-07-29T11:16:20","guid":{"rendered":"https:\/\/www.blopig.com\/blog\/?p=14575"},"modified":"2026-07-29T12:20:09","modified_gmt":"2026-07-29T11:20:09","slug":"the-imgt-just-became-a-little-fairer","status":"publish","type":"post","link":"https:\/\/www.blopig.com\/blog\/2026\/07\/the-imgt-just-became-a-little-fairer\/","title":{"rendered":"The IMGT just became a little FAIRer"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The <a href=\"https:\/\/imgt.org\/\">IMGT<\/a> have adopted a more permissive licence for their data. That is a really good thing. These days, they also have an API. But the service is somewhat hamstrung by usability issues.  Also, detailed and digestible documentation for such a sprawling suite of databases and tools never just appears overnight, so this post includes a demo to help you get started.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">A more permissive licence<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The <a href=\"https:\/\/imgt.org\/\">International Immunogenetics Information System, IMGT<\/a>, is a long-established platform from the research group of Profs Sofia Kossida and Marie-Paule Lefranc of the Universit\u00e9 de Montpelier and the CNRS. It provides numerous services to the immunology research community, including catalogues of the genetic encoding of naturally-occurring immunoglobulin (antibody), T cell receptor and major histocompatibility complex protein domains across several vertebrate species.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This month, the IMGT <a href=\"https:\/\/www.imgt.org\/about\/termsofuse.php\">announced<\/a> that they have been granted Core Data Resource status from <a href=\"https:\/\/elixir-europe.org\/\">ELIXIR<\/a>, the European life-sciences infrastructure for biological information. This recognition highlights the importance of the IMGT to immunology research, but it comes with one or two strings attached. Services supported by ELIXIR must adhere to certain standards of data stewardship, to enhance the FAIR access of data. In the case of the IMGT, this includes relaxing the long-standing and rather restrictive licence conditions they formerly imposed on the use of their tools. The IMGT used to use the <a href=\"https:\/\/creativecommons.org\/licenses\/by-nc-nd\/4.0\/\">Creative Commons Attribution-NonCommercial-NoDerivatives (CC BY-NC-ND 4.0) licence<\/a>, which made it very difficult for anyone else to write interoperable tools. Since 1st July 2026, the IMGT is instead available under a simple <a href=\"https:\/\/creativecommons.org\/licenses\/by\/4.0\/\">Creative Commons Attribution (CC BY 4.0) licence<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The trouble with CC BY-NC-ND for science<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The CC BY-NC-ND licence is a tricky beast. To the inexperienced academic scientist, it may seem perfectly innocuous. Of course I want attribution for my work, but I also want to make sure that no-one drags my name into the mud by reprocessing my data or creating derivative software that I think is misguided, or just plain wrong. And I am an altruistic sort of person, I want my work to contribute to the sum of human knowledge, unsullied by base commerce\u2026 but my latest grant is running out soon, so if anyone wants to make money off the back of my research, then I would like a cut, please. A non-commercial, no-derivatives licence, you say? Sounds great!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now think of it from the point of view of a user. If we in OPIG want to create a piece of software that does some intricate things to model antibody sequences or structures, and we think this tool would be enriched by including some bits of information only available under a CC BY-NC-ND licence, are we allowed to use the data? What if someone wants to use our software in a <em>commercial<\/em> setting? Do we need to refuse? Or else enter a three-way negotiation between us, our users and the CC BY-NC-ND licence holder for a separate commercial licence? Is our software, in fact, a <em>derivative<\/em> of the original data? What if we are just writing a journal article that re-analyses some of those CC BY-NC-ND data, is that forbidden as a derivative product too?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In practice, of course, people end up doing one of two things: either they break the terms of the licence, usually unwittingly, or they avoid the issue altogether and find some other work to do. The CC BY-NC-ND does not achieve its holder&#8217;s objective. It generates none of that promised revenue and it can even put the brakes on research. It is all too often a poor fit for scientific work.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Good news, everyone!<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hooray, we are now allowed to use the IMGT&#8217;s data! But how exactly does one do that?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The IMGT has for several years operated a website with various interfaces for querying their several databases, but that still requires a human in the loop. If I want to write software to query the data at scale, how do I do so?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This brings us to a second very positive recent development in the IMGT&#8217;s <a href=\"https:\/\/doi.org\/10.1093\/nar\/gkaf1024\">renewed commitment<\/a> to the principles of findable, accessible, interoperable and reusable (FAIR) data \u2014 the publication of a resource description format (RDF) knowledge graph, the <a href=\"https:\/\/imgt.org\/imgt-kg\/\">IMGT-KG<\/a> and its SPARQL API (<a href=\"https:\/\/www.w3.org\/TR\/rdf11-primer\/#section-data-model\">see here<\/a> for a primer on RDF knowledge graphs). But writing good documentation is hard, especially if you are trying to retro-fit an API onto something that has been in use since 1989. Unsurprisingly, the IMGT-KG is a little tricky to use for the uninitiated.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Firstly, an RDF knowledge graph is described by its <em>ontology<\/em>, detailing all the triples that define the relationships between data entities. The IMGT ontology reuses a lot of vocabulary from various other ontologies, in the spirit of the <a href=\"https:\/\/obofoundry.org\/\">Open Biological and Biomedical Ontology Foundry<\/a>. It is <a href=\"https:\/\/imgt.org\/imgt-kg\/kgmodel.html\">documented in HTML format<\/a> (beware, it takes a long time to load the page at the time of going to press), but links to download the ontology in standard machine-readable formats are all broken at the time of writing, leaving us flying somewhat blind. It is not clear whether the ontology for the IMGT-KG is the same as the previously published <a href=\"https:\/\/www.imgt.org\/IMGTindex\/ontology.php\">IMGT-ONTOLOGY<\/a> (last update, v1.0.3, released July 2019). Nevertheless, there is <a href=\"https:\/\/www.imgt.org\/imgt-kg\/kgdescription.html\">some discursive documentation<\/a> and <a href=\"https:\/\/www.imgt.org\/imgt-kg\/kgdata.html\">some SPARQL query examples<\/a> that we can adapt.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This query gets the gene and allele for each instance of an immunoglobulin protein entity that IMGT has catalogued from the PDB, returning just the first ten entries.<\/p>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-1&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-1-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" data-wp-on--keydown=\"actions.handleKeyDown\" id=\"accordion-item-1\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\"><code>sample-query.rq<\/code><\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div inert aria-labelledby=\"accordion-item-1\" data-wp-bind--inert=\"!state.isOpen\" id=\"accordion-item-1-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">PREFIX imgt: &lt;https:\/\/www.imgt.org\/imgt-ontology#>\nPREFIX obo:  &lt;http:\/\/purl.obolibrary.org\/obo\/>\nPREFIX rdfs: &lt;http:\/\/www.w3.org\/2000\/01\/rdf-schema#>\n\nSELECT DISTINCT\n    ?pdb_link\n    ?pdb_entry\n    ?pdb_entity\n    ?pdb_chain_instance\n    ?chain_label\n    ?coding_region\n    ?prototype\n    ?gene\n    ?allele\nWHERE {\n    ?region imgt:hasAlignment ?alignment ;\n            obo:BFO_0000050 ?chain_resource .\n\n    ?chain_resource\n        rdfs:label ?pdb_chain_instance ;\n        imgt:hasImgtLabel\/rdfs:label ?chain_label ;\n        imgt:isChainInStruct ?structure .\n\n    ?alignment imgt:forAllele ?allele_resource .\n\n    ?allele_resource\n        obo:GENO_0000408 ?gene_resource ;\n        rdfs:label ?allele ;\n        imgt:isInRefSequence ?core .\n\n    ?gene_resource rdfs:label ?gene .\n\n    ?core\n        imgt:isInPrototype ?prototype_resource ;\n        imgt:hasImgtLabel\/rdfs:label ?coding_region .\n\n    ?prototype_resource\n        imgt:hasImgtLabel\/rdfs:label ?prototype ;\n        imgt:isPrototypeInSeq ?prototype_sequence .\n\n    ?crystal_sequence\n        rdfs:label ?pdb_entry ;\n        imgt:isCrystalOf ?structure ;\n        imgt:pdb_link ?pdb_link .\n\n    ?structure rdfs:label ?pdb_entity .\n\n    FILTER(CONTAINS(UCASE(STR(?coding_region)), \"REGION\"))\n}\nORDER BY\n    ?pdb_entry\n    ?pdb_entity\n    ?pdb_chain_instance\n    ?gene\n    ?allele\nLIMIT 10<\/pre>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Now we need to know where to send our query.  The SPARQL endpoint is documented in the IMGT-KG&#8217;s <a href=\"https:\/\/www.imgt.org\/imgt-kg\/void.ttl\">vocabulary of interlinked datasets (VoID)<\/a>. There are actually two documented endpoints, one with and one without an inference engine, but only the one without inference seems to be operational at the time of writing.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We can submit our query to that endpoint like this:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">curl 'https:\/\/www.imgt.org\/fuseki\/ImgtKg\/sparql' \\\n  -H 'Content-Type: application\/sparql-query' \\\n  -H 'Accept: application\/sparql-results+json' \\\n  --data-binary @sample-query.rq<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">And we get the following response:<\/p>\n\n\n\n<div data-wp-context=\"{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }\" data-wp-interactive=\"core\/accordion\" role=\"group\" class=\"wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow\">\n<div data-wp-class--is-open=\"state.isOpen\" data-wp-context=\"{ &quot;id&quot;: &quot;accordion-item-2&quot;, &quot;openByDefault&quot;: false }\" data-wp-init=\"callbacks.initAccordionItems\" data-wp-on-window--hashchange=\"callbacks.hashChange\" class=\"wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow\">\n<h3 class=\"wp-block-accordion-heading\"><button aria-expanded=\"false\" aria-controls=\"accordion-item-2-panel\" data-wp-bind--aria-expanded=\"state.isOpen\" data-wp-on--click=\"actions.toggle\" data-wp-on--keydown=\"actions.handleKeyDown\" id=\"accordion-item-2\" type=\"button\" class=\"wp-block-accordion-heading__toggle\"><span class=\"wp-block-accordion-heading__toggle-title\">Response JSON.<\/span><span class=\"wp-block-accordion-heading__toggle-icon\" aria-hidden=\"true\">+<\/span><\/button><\/h3>\n\n\n\n<div inert aria-labelledby=\"accordion-item-2\" data-wp-bind--inert=\"!state.isOpen\" id=\"accordion-item-2-panel\" role=\"region\" class=\"wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow\">\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"json\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n  \"head\": {\n    \"vars\": [\n      \"pdb_link\",\n      \"pdb_entry\",\n      \"pdb_entity\",\n      \"pdb_chain_instance\",\n      \"chain_label\",\n      \"coding_region\",\n      \"prototype\",\n      \"gene\",\n      \"allele\"\n    ]\n  },\n  \"results\": {\n    \"bindings\": [\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E81\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8M\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"L-KAPPA\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"C-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"C-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC*01\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E81\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8M\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"L-KAPPA\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"C-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"C-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC*02\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E81\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8M\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"L-KAPPA\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"J-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"J-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKJ5-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKJ5*01\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E81\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8M\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"L-KAPPA\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"V-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"V-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKV6-13-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKV6-13*01\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E81\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8P\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"VH-CH1\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"J-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"J-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHJ3-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHJ3*01\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E81\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8P\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"VH-CH1\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"V-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"V-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHV14-4-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHV14-4*02\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E82\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8H\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"VH-CH1\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"J-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"J-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHJ3-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHJ3*01\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E82\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8H\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"VH-CH1\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"V-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"V-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHV14-4-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGHV14-4*02\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E82\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8L\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"L-KAPPA\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"C-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"C-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC*01\"\n        }\n      },\n      {\n        \"pdb_link\": {\n          \"type\": \"literal\",\n          \"value\": \"https:\/\/www.ebi.ac.uk\/pdbe\/entry\/pdb\/12E8\"\n        },\n        \"pdb_entry\": {\n          \"type\": \"literal\",\n          \"value\": \"CrystalStruct-12E8\"\n        },\n        \"pdb_entity\": {\n          \"type\": \"literal\",\n          \"value\": \"Struct-12E82\"\n        },\n        \"pdb_chain_instance\": {\n          \"type\": \"literal\",\n          \"value\": \"Chain-12E8L\"\n        },\n        \"chain_label\": {\n          \"type\": \"literal\",\n          \"value\": \"L-KAPPA\"\n        },\n        \"coding_region\": {\n          \"type\": \"literal\",\n          \"value\": \"C-REGION\"\n        },\n        \"prototype\": {\n          \"type\": \"literal\",\n          \"value\": \"C-GENE\"\n        },\n        \"gene\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC-Gene\"\n        },\n        \"allele\": {\n          \"type\": \"literal\",\n          \"value\": \"Musmus_IGKC*02\"\n        }\n      }\n    ]\n  }\n}<\/pre>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Web services for science are difficult<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We at OPIG know all too well that running web services for the scientific community on an academic research group&#8217;s budget is hard.  <a href=\"https:\/\/opig.stats.ox.ac.uk\/resources\">We run several ourselves<\/a>, so we have sympathy for the folks at the IMGT trying to keep all of this valuable knowledge current and accessible.  Hopefully, their new ELIXIR support will help them iron out a few of the usability kinks.  That said, at the time of publishing this, the IMGT-KG servers have been inaccessible for two days&#8230;  Good luck trying out the example above!  \ud83d\ude15<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The IMGT have adopted a more permissive licence for their data. That is a really good thing. These days, they also have an API. But the service is somewhat hamstrung by usability issues. Also, detailed and digestible documentation for such a sprawling suite of databases and tools never just appears overnight, so this post includes [&hellip;]<\/p>\n","protected":false},"author":137,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","wikipediapreview_detectlinks":true,"_monsterinsights_skip_tracking":false,"ngg_post_thumbnail":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[466,361,341,186,272,15],"tags":[],"ppma_author":[874],"class_list":["post-14575","post","type-post","status-publish","format-standard","hentry","category-antibodies","category-data-science","category-databases","category-immunoinformatics","category-software-services","category-technical"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"authors":[{"term_id":874,"user_id":137,"is_guest":0,"slug":"ben","display_name":"Ben Williams","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/020ea273be8638c64bf77c36493144bb0116ead71fae7fa3c4f95093a9d81da9?s=96&d=mm&r=g","author_category":"","user_url":"","last_name":"Williams","first_name":"Ben","job_title":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts\/14575","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/users\/137"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/comments?post=14575"}],"version-history":[{"count":2,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts\/14575\/revisions"}],"predecessor-version":[{"id":14579,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/posts\/14575\/revisions\/14579"}],"wp:attachment":[{"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/media?parent=14575"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/categories?post=14575"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/tags?post=14575"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.blopig.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=14575"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}