{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "chem-bla-ics",
  "description": "Chemblaics (pronounced chem-bla-ics) is the science that uses open science and computers to solve problems in chemistry, biochemistry and related fields.",
  "home_page_url": "https://chem-bla-ics.linkedchemistry.info/",
  "feed_url": "https://chem-bla-ics.linkedchemistry.info/2009/08/21/bioclipse-and-sparql-end-points-2.json",
  "icon": "https://chem-bla-ics.linkedchemistry.info/assets/images/chem-bla-ics_logo.png",
  "language": "en",
  "authors": [
    {
      "name": "Egon Willighagen",
      "url": "https://orcid.org/0000-0001-7542-0286",
      "_orcid": "0000-0001-7542-0286"
    }
  ],
  "items": [

    {
      "id": "https://doi.org/10.59350/qyshc-pn870",
      "url": "https://chem-bla-ics.linkedchemistry.info/2009/08/21/bioclipse-and-sparql-end-points-2.html",
      "title": "Bioclipse and SPARQL end points #2: MyExperiment",
      "content_html": "<p><a href=\"http://en.wikipedia.org/wiki/Resource_Description_Framework\">RDF</a> and <a href=\"http://en.wikipedia.org/wiki/SPARQL\">SPARQL</a>\nare two really useful Open Standards. <a href=\"http://github.com/egonw/bioclipse.rdf/tree/master\">Bioclipse-RDF</a> is a\nplugin for <a href=\"http://www.bioclipse.net/\">Bioclipse</a> that provide RDF functionality, among which using remote SPARQL end points.</p>\n\n<p>The <a href=\"http://www.myexperiment.org/\">MyExperiment</a> team has set up an excellent <a href=\"http://rdf.myexperiment.org/\">RDF front end</a>.\nFor example, this is <a href=\"http://rdf.myexperiment.org/User/286\">my MyExperiment account in RDF</a>. The storage gets updated\nonce every day (at this moment), but I’m sure that will become more often in the future. The SPARQL end point\nallows us to make any query against the database that <a href=\"http://rdf.myexperiment.org/ontologies/\">their ontologies</a>\nsupport. The above query showed up 132 workflows when I ran it today.</p>\n\n<h2 id=\"gists\">Gists</h2>\n\n<p>Now, so far I have been using <a href=\"http://gist.github.com/\">Gist</a> to share Bioclipse scripts and I wrote\nsome <a href=\"https://chem-bla-ics.linkedchemistry.info/2009/01/16/bioclipse-and-gist-integration.html\">Bioclipse GUI elements for downloading such gists <i class=\"fa-solid fa-recycle fa-xs\"></i></a>.\nTo annotate these gists, <a href=\"http://delicious.com/\">Delicious</a> has been used, and a listing of Bioclipse scripts can be found under the\ntags <a href=\"http://delicious.com/tag/bioclipse+gist\">bioclipse and gist</a>.</p>\n\n<p>MyExperiment also allows to share workflows, but originally only for <a href=\"http://taverna.sf.net/\">Taverna</a>.\nA recent change, however, made it possible to share other <em>types</em> of workflows too. And, MyExperiment\nitself also allows all the annotation which we may want to do.</p>\n\n<p>Now, using the Bioclipse-RDF functionality, I can query the MyExperiment database and use that information\ndo to stuff. If this stuff is a Bioclipse script, then I can just download it, as the download link of a\nworkflow is part of the RDF too, as we will see.</p>\n\n<h2 id=\"querying-a-sparql-end-point\">Querying a SPARQL end point</h2>\n\n<p>As we have seen in the <a href=\"https://chem-bla-ics.linkedchemistry.info/2009/08/16/bioclipse-and-sparql-end-points.html\">first article of this series <i class=\"fa-solid fa-recycle fa-xs\"></i></a>,\nthe RDF manager his a method to query a remote SPARQL end point. The complexity is mostly in formulating the SPARQL (and this one\nhappens to be available as <a href=\"http://www.myexperiment.org/workflows/890\">workflow on MyExperiment too</a>:</p>\n\n<p><img src=\"/assets/images/myExp890.png\" alt=\"\" /></p>\n\n<p>This is worsened by the fact that JavaScript does not have a type of multiline Strings, so the backslashes at\nthe end of the lines are JavaScript syntax and not part of the SPARQL. To simplify the SPARQL, I will show\nbelow the SPARQL only, and not the Bioclipse script wrapping as is done in the above code snippet.</p>\n\n<h2 id=\"list-all-taverna-2-workflows\">List all Taverna 2 workflows</h2>\n\n<p>Listing all Taverna 2 workflows, as shown in that earlier snippet, is done with the SPARQL:</p>\n\n<script src=\"https://gist.github.com/egonw/172138.js\"></script>\n\n<p>This query asks for a <code class=\"language-plaintext highlighter-rouge\">?workflow</code> and its <code class=\"language-plaintext highlighter-rouge\">?title</code>, and the workflow <code class=\"language-plaintext highlighter-rouge\">?type</code> must be of Class <code class=\"language-plaintext highlighter-rouge\">ContentType</code> as defined in the\n<code class=\"language-plaintext highlighter-rouge\">mebase</code> namespace, and we want to know the <code class=\"language-plaintext highlighter-rouge\">?typetitle</code> of that content type, because we are filtering that using a\n<a href=\"http://en.wikipedia.org/wiki/Regular_expression\">regular expression</a> to contain “Taverna 2”. Well, if you cannot\nfollow this, just <a href=\"http://www.bing.com/search?q=sparql+tutorial&amp;go=&amp;form=QBLH&amp;filt=all\">google for SPARQL</a>,\nand run one of those tutorials which are abundantly present on the web.</p>\n\n<h2 id=\"finding-tags-used-to-annotate-workflows\">Finding tags used to annotate workflows</h2>\n\n<p>To list all tags which have likely to do with metabolomics, I can do:</p>\n\n<script src=\"https://gist.github.com/egonw/172277.js\"></script>\n\n<p>And I can also list all workflows that are tagged like this. Because I could not get string matching to work, I used the tag’s URI instead:</p>\n\n<script src=\"https://gist.github.com/egonw/172685.js\"></script>\n\n<h2 id=\"all-myexperiments-users-in-sweden\">All MyExperiments Users in Sweden</h2>\n\n<p>I was also interested in all MyExperiment Users in Sweden, and again, a simple SPARQL tells me where they live:</p>\n\n<script src=\"https://gist.github.com/egonw/172129.js\"></script>\n\n<h2 id=\"finding-duncan-and-pierre\">Finding Duncan and Pierre</h2>\n\n<p>Very easy to find users, such as <a href=\"http://duncan.hull.name/\">Duncan</a>:</p>\n\n<script src=\"https://gist.github.com/egonw/172686.js\"></script>\n\n<p>Or <a href=\"http://plindenbaum.blogspot.com/\">Pierre</a>, who has not listed where he lives:</p>\n\n<script src=\"https://gist.github.com/egonw/172687.js\"></script>\n\n<h2 id=\"my-workflows\">My workflows</h2>\n\n<p>Given a user, it is also easy to get the workflows he <em>owns</em>. Again, I am using my URI instead of combining with a search\nfor my account, because the MyExperiment SPARQL end point is not particularly fast:</p>\n\n<script src=\"https://gist.github.com/egonw/172691.js\"></script>\n\n<p>Earlier in this series:</p>\n\n<ol>\n  <li><a href=\"https://chem-bla-ics.linkedchemistry.info/2009/08/16/bioclipse-and-sparql-end-points.html\">Bioclipse and SPARQL end points #1: DBPedia <i class=\"fa-solid fa-recycle fa-xs\"></i></a></li>\n</ol>",
      "summary": "RDF and SPARQL are two really useful Open Standards. Bioclipse-RDF is a plugin for Bioclipse that provide RDF functionality, among which using remote SPARQL end points.",
      "image": "https://chem-bla-ics.linkedchemistry.info/assets/images/myExp890.png",
      "date_published": "2009-08-21T00:00:00+00:00",
      "date_modified": "2025-10-26T00:00:00+00:00",
      "tags": ["bioclipse","rdf","foaf","myexperiment","rdf","sparql"],
      
      
      
      
      
      
        "authors": [ { "name": "Egon Willighagen", "url": "https://orcid.org/0000-0001-7542-0286" } ]
      
    }

  ]
}
