From maliha.aziz at yahoo.com Tue Aug 7 18:00:56 2007 From: maliha.aziz at yahoo.com (maliha aziz) Date: Tue, 7 Aug 2007 15:00:56 -0700 (PDT) Subject: [MOBY-l] About Moby central Message-ID: <497424.92214.qm@web57408.mail.re1.yahoo.com> I have a few question about the the way moby-central works? Do all the objects/ classes , service types that we define at some point in time when needed get stored in moby-central along with the web service information that the service providers provide when registering the service? what I am trying to say is that are the service type registries and the object registries and the service registries all present on the moby central or does it fetch it from some other place... Apart from this does anyone know of a good paper or website where i can read about how moby central functions. All the papers that I have read emphasize on the power of biomby but talk little about the architecture of the moby-central that is i think co-ordinating all the requests and responses thanks maliha --------------------------------- Yahoo! oneSearch: Finally, mobile search that gives answers, not web links. From mikedebo at gmail.com Tue Aug 7 18:28:29 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Tue, 7 Aug 2007 15:28:29 -0700 Subject: [MOBY-l] About Moby central In-Reply-To: <497424.92214.qm@web57408.mail.re1.yahoo.com> References: <497424.92214.qm@web57408.mail.re1.yahoo.com> Message-ID: <7F8048E3-99DC-4A8A-9C08-3D378CA77494@gmail.com> On 7-Aug-07, at 3:00 PM, maliha aziz wrote: > I have a few question about the the way moby-central works? > Do all the objects/ classes , service types that we define at some > point in time when needed get stored in moby-central along with the > web service information that the service providers provide when > registering the service? what I am trying to say is that are the > service type registries and the object registries and the service > registries all present on the moby central or does it fetch it from > some other place... > There are a bunch of files that actually store the specific registries and specifications that you speak of. The moby central script essentially provides a programmatic wrapper to those files. If you wanted to, you could parse them directly with Jena or something to extract the same information from them that Central does. For example, the object descriptions are at http:// mobycentral.icapture.ubc.ca/authority/RESOURCES/MOBY-S/Objects. > Apart from this does anyone know of a good paper or website where i > can read about how moby central functions. All the papers that I > have read emphasize on the power of biomby but talk little about > the architecture of the moby-central that is i think co-ordinating > all the requests and responses > The best way I found of learning how this stuff works was by playing with the jmoby Central* implementations. I'm pretty familiar with how it works at this point, so if you have a description of what it is exactly that you're trying to do, I could probably point you in some direction that approximates the correct one :) I am a recent Moby API consumer, and so the experience of figuring out how all the APIs work is still pretty fresh in my mind. -Mike From mikedebo at gmail.com Tue Aug 7 18:36:45 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Tue, 7 Aug 2007 15:36:45 -0700 Subject: [MOBY-l] About Moby central In-Reply-To: References: <497424.92214.qm@web57408.mail.re1.yahoo.com> <7F8048E3-99DC-4A8A-9C08-3D378CA77494@gmail.com> Message-ID: On 7-Aug-07, at 3:33 PM, Mark Wilkinson wrote: > On Tue, 07 Aug 2007 15:28:29 -0700, Michael DiBernardo > wrote: > > >> There are a bunch of files that actually store the specific >> registries and specifications that you speak of. The moby central >> script essentially provides a programmatic wrapper to those files. If >> you wanted to, you could parse them directly with Jena or something >> to extract the same information from them that Central does. >> >> For example, the object descriptions are at http:// >> mobycentral.icapture.ubc.ca/authority/RESOURCES/MOBY-S/Objects. > > > Hey Michael! > > That's actually not *quite* true... there are no "files" that store > the information in the way you suggest above. > > http://mobycentral.icapture.ubc.ca/authority/RESOURCES > > is a CGI script! It is auto-generating the document each time > based on a database-lookup... but effectively, yes, you can > retrieve a document from the RESOURCES script that contains the > ontology. Well, there you go. Just goes to show you that good abstractions go a long way to prevent you from worrying about what's actually going on :) -Mike From markw at illuminae.com Tue Aug 7 18:33:42 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Tue, 07 Aug 2007 15:33:42 -0700 Subject: [MOBY-l] About Moby central In-Reply-To: <7F8048E3-99DC-4A8A-9C08-3D378CA77494@gmail.com> References: <497424.92214.qm@web57408.mail.re1.yahoo.com> <7F8048E3-99DC-4A8A-9C08-3D378CA77494@gmail.com> Message-ID: On Tue, 07 Aug 2007 15:28:29 -0700, Michael DiBernardo wrote: > There are a bunch of files that actually store the specific > registries and specifications that you speak of. The moby central > script essentially provides a programmatic wrapper to those files. If > you wanted to, you could parse them directly with Jena or something > to extract the same information from them that Central does. > > For example, the object descriptions are at http:// > mobycentral.icapture.ubc.ca/authority/RESOURCES/MOBY-S/Objects. Hey Michael! That's actually not *quite* true... there are no "files" that store the information in the way you suggest above. http://mobycentral.icapture.ubc.ca/authority/RESOURCES is a CGI script! It is auto-generating the document each time based on a database-lookup... but effectively, yes, you can retrieve a document from the RESOURCES script that contains the ontology. M -- -- Mark Wilkinson Assistant Professor, Dept. Medical Genetics University of British Columbia PI Bioinformatics iCAPTURE Centre, St. Paul's Hospital Tel: 604 682 2344 x62129 Fax: 604 806 9274 ***CONFIDENTIALITY NOTICE*** This electronic message is intended only for the use of the addressee and may contain information that is privileged and confidential. Any dissemination, distribution or copying of this communication by unauthorized individuals is strictly prohibited. If you have received this communication in error, please notify the sender immediately by reply e-mail and delete the original and all copies from your system. From markw at illuminae.com Tue Aug 7 18:15:55 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Tue, 07 Aug 2007 15:15:55 -0700 Subject: [MOBY-l] About Moby central In-Reply-To: <497424.92214.qm@web57408.mail.re1.yahoo.com> References: <497424.92214.qm@web57408.mail.re1.yahoo.com> Message-ID: Hi Maliha, The ontologies are all served from Moby Central, and at the moment we have not planned for them to be separate from the service registry itself. Complete separation would be quite difficult to do because the Moby API does not allow an ontology node to be modified/deleted if it is being used by a registered service... There isn't a paper or website that describes how Moby Central "functions" per se. The best place to look for a description of Moby right now would be in the moby-live/Docs folder, where we have the latest version of the submitted 1.0 manuscript. It hasn't been accepted for publication yet, so it may still change, but it contains more detail than most of the earlier papers. Hope that helps! Mark On Tue, 07 Aug 2007 15:00:56 -0700, maliha aziz wrote: > I have a few question about the the way moby-central works? > Do all the objects/ classes , service types that we define at some point > in time when needed get stored in moby-central along with the web > service information that the service providers provide when registering > the service? what I am trying to say is that are the service type > registries and the object registries and the service registries all > present on the moby central or does it fetch it from some other place... > > Apart from this does anyone know of a good paper or website where i can > read about how moby central functions. All the papers that I have read > emphasize on the power of biomby but talk little about the architecture > of the moby-central that is i think co-ordinating all the requests and > responses > > thanks > > maliha > > --------------------------------- > Yahoo! oneSearch: Finally, mobile search that gives answers, not web > links. > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l -- -- Mark Wilkinson Assistant Professor, Dept. Medical Genetics University of British Columbia PI Bioinformatics iCAPTURE Centre, St. Paul's Hospital Tel: 604 682 2344 x62129 Fax: 604 806 9274 ***CONFIDENTIALITY NOTICE*** This electronic message is intended only for the use of the addressee and may contain information that is privileged and confidential. Any dissemination, distribution or copying of this communication by unauthorized individuals is strictly prohibited. If you have received this communication in error, please notify the sender immediately by reply e-mail and delete the original and all copies from your system. From martin.senger at gmail.com Tue Aug 7 18:54:39 2007 From: martin.senger at gmail.com (Martin Senger) Date: Tue, 7 Aug 2007 23:54:39 +0100 Subject: [MOBY-l] About Moby central In-Reply-To: References: <497424.92214.qm@web57408.mail.re1.yahoo.com> <7F8048E3-99DC-4A8A-9C08-3D378CA77494@gmail.com> Message-ID: <4d93f07c0708071554i30c0b641n4ac83a208bde665b@mail.gmail.com> Hi, I think that Mike gave you already a good answer. Just let me try to say it again :-) >> There are a bunch of files that actually store the specific > >> registries and specifications that you speak of. As you already noticed, there are no files, but dynamically created responses to the HTTP requests. All data in them are taken from a relational database (I think it is mySQL). You can get the same data using: 1) BioMoby API (and there are libraries in several languages implementing this API; Mike mentioned jMoby for Java), OR 2) Using HTTP GET method returning RDF files. Mike mentioned the URL - but this is just a coincidence that he knows it :-) Official way is to call a method getReosurcesURL() (or something like that, I forgot) - a method is part of the BioMOBY's API - and it returns the URL you should use. 3) Using method Dump() (os something like that) - again a part of the BioMoby's API - that gives you SQL dump of the relational database. But, it is not all: Some data (actually metadata) describing services may be provided, optionally, by service providers, by their web servers, using LSID resolution service. All such additional data can be obtained only from the outside of the central registry (they are not in the relational database there, they are not used in the registration process). Cheers, Martin -- Martin Senger email: martin.senger at gmail.com skype: martinsenger From ola.spjuth at farmbio.uu.se Wed Aug 8 17:10:19 2007 From: ola.spjuth at farmbio.uu.se (Ola Spjuth) Date: Wed, 8 Aug 2007 23:10:19 +0200 Subject: [MOBY-l] DataInputs for complex services Message-ID: <975EB52E-9893-415F-9818-A2E7D05E273D@farmbio.uu.se> Hello, Thanks for a great framework, I am excited to add BioMoby features to Bioclipse (http://www.bioclipse.net). However, I have some questions to get things running: How do I set up the PrimaryDataInput and SecondaryDatainputs for a more advanced service in jMoby? For example, the service 'runClustalwFast': MobyService templateService = new MobyService("runClustalwFast"); MobyService[] validServices = worker.findService(templateService); This gives me the following info from the service: Primary inputs: Name: 'sequences' - DataType: 'GenericSequence' Primary outputs: Name: 'alignment' - DataType: 'Clustalw_Text' Secondary inputs: Name: 'ktup' - DataType: 'Integer' Name: 'gapext' - DataType: 'Float' Name: 'transitions_weight' - DataType: 'Float' Name: 'window' - DataType: 'Integer' Name: 'topdiag' - DataType: 'Integer' Name: 'matrix' - DataType: 'String' Name: 'pairgap' - DataType: 'Integer' Name: 'endgaps' - DataType: 'String' Name: 'gapdist' - DataType: 'Integer' Name: 'gapopen' - DataType: 'Float' How do I set up the inputs with MobyDataObject's for this service? The sample clients in CVS only deal with simple setups (id and namespace) so some lines of example code would be really helpful. Another question: How can I from the MobyDataType tell what format I should expect to fill in? If it is 'GenericSequence', how can I tell if i'm supposed to add a String? Can I look that up somewhere? And do the MobyDataType's have constraints (like min/max values) etc? I have also not really understood the key-value-datatype. Is it possible to get the allowed keys from the MobyDataType in some way? Cheers, .../Ola Spjuth From ola.spjuth at farmbio.uu.se Thu Aug 9 09:13:05 2007 From: ola.spjuth at farmbio.uu.se (Ola Spjuth) Date: Thu, 9 Aug 2007 15:13:05 +0200 Subject: [MOBY-l] Determine if Central's cache is filled Message-ID: <19A864AE-0982-4273-BEFA-B782C5B6BE0F@farmbio.uu.se> Hello, In jMoby, how can I determine if the cache in my CentralDigestCachedImpl is filled with e.g. serviceTypes? I can get the age of the registry but that is not what I need. Cheers, .../Ola From martin.senger at gmail.com Thu Aug 9 09:54:12 2007 From: martin.senger at gmail.com (Martin Senger) Date: Thu, 9 Aug 2007 14:54:12 +0100 Subject: [MOBY-l] Determine if Central's cache is filled In-Reply-To: <19A864AE-0982-4273-BEFA-B782C5B6BE0F@farmbio.uu.se> References: <19A864AE-0982-4273-BEFA-B782C5B6BE0F@farmbio.uu.se> Message-ID: <4d93f07c0708090654p3e90d158y2addc33c8d26764d@mail.gmail.com> Hi, In jMoby, how can I determine if the cache in my > CentralDigestCachedImpl is filled with e.g. serviceTypes? I can get > the age of the registry but that is not what I need. There are some protected methods that could be made more public if needed. At the moment, however, you can use method public Properties getCacheInfo (String id); where as 'id' you can specify the cache you wish to investigate. For example, for service types cache, you use: getCacheInfo (CentralDigestCachedImpl.CACHE_PART_SERVICETYPES); You get back properties - and some properties are missing if the cache is empty. You can use as an example class CacheRegistryClient.java. This class can be invoked by run-cache-client: If a cache exists, it looks like this: senger at sherekhan:~/moby-live/Java$ build/run/run-cache-client -info-t -cachedir myCache/ Cache for Service Types Biomoby registry http://mobycentral.icapture.ubc.ca/cgi-bin/MOBY05/mobycentral.pl Number of entities 114 Oldest entry created Thu Sep 28 18:58:01 BST 2006 Oldest entry has age 314 days and 19:45:53.327 Youngest entry created Wed Jul 25 19:04:26 BST 2007 Youngest entry has age 14 days and 19:39:28.347 Size (in bytes) 28293 Location /home/senger/moby-live/Java/myCache/http58.47.47mobycentral46icapture46ubc46ca47cgi45bin47MOBY0547mobycentral46pl/serviceTypes When a removed the service type cache and run the same script again, I got only: senger at sherekhan:~/moby-live/Java$ build/run/run-cache-client -info-t -cachedir myCache/ Cache for Service Types Biomoby registry http://mobycentral.icapture.ubc.ca/cgi-bin/MOBY05/mobycentral.pl Location /home/senger/moby-live/Java/myCache/http58.47.47mobycentral46icapture46ubc46ca47cgi45bin47MOBY0547mobycentral46pl/serviceTypes Cheers, Martin -- Martin Senger email: martin.senger at gmail.com skype: martinsenger From gordonp at ucalgary.ca Thu Aug 9 10:51:33 2007 From: gordonp at ucalgary.ca (Paul Gordon) Date: Thu, 09 Aug 2007 08:51:33 -0600 Subject: [MOBY-l] DataInputs for complex services In-Reply-To: <975EB52E-9893-415F-9818-A2E7D05E273D@farmbio.uu.se> References: <975EB52E-9893-415F-9818-A2E7D05E273D@farmbio.uu.se> Message-ID: <46BB29F5.6080100@ucalgary.ca> Hi Ola, The key, if you are using the org.biomoby.shared.data package, is that everything is a primitive, or a composite. Composites are Java Maps, with member article names as the keys. See the examples below. May I suggest, if you have not already, to join the moby-dev mailing list, as the moby-l mailing list is primarily for non-technical discussion (I'm cross-posting this reply just in case you are not on moby-dev, and to show the moby-l-only folks that we are doing real work ;-)). > Hello, > > Thanks for a great framework, I am excited to add BioMoby features to > Bioclipse (http://www.bioclipse.net). However, I have some questions > to get things running: > > How do I set up the PrimaryDataInput and SecondaryDatainputs for a > more advanced service in jMoby? > For example, the service 'runClustalwFast': > > MobyService templateService = new MobyService("runClustalwFast"); > MobyService[] validServices = worker.findService(templateService); > > This gives me the following info from the service: > > Primary inputs: > Name: 'sequences' - DataType: 'GenericSequence' > /** Here is the 'Generic' solution, untested and off the cuff */ MobyDataComposite seq = new MobyDataComposite("GenericSequence"); for(MobyRelationship child: seq.getDataType().getAllChildren()){ String childTypeName = child.getDataTypeName(); // Things are either primitive, or composite if(PrimitiveType.isPrimitive(childTypeName)){ seq.put(child.getName(), MobyDataObject.createInstanceFromString(childTypeName, sourceDataStringForThisField)); } else{ // recursively populate the child as a MobyDataComposite } } > Primary outputs: > Name: 'alignment' - DataType: 'Clustalw_Text' > You don't need to do anything, the service will populate this for you (via MobyRequest.invokeService()). > Secondary inputs: > Name: 'ktup' - DataType: 'Integer' > Name: 'gapext' - DataType: 'Float' > Name: 'transitions_weight' - DataType: 'Float' > Name: 'window' - DataType: 'Integer' > Name: 'topdiag' - DataType: 'Integer' > Name: 'matrix' - DataType: 'String' > Name: 'pairgap' - DataType: 'Integer' > Name: 'endgaps' - DataType: 'String' > Name: 'gapdist' - DataType: 'Integer' > Name: 'gapopen' - DataType: 'Float' > public static void setSecondaries(MobyRequest mr, MobyService service){ MobySecondaryData[] secondaryData = service.getSecondaryInputs(); MobyDataSecondaryInstance[] secondaryInstances = new MobyDataSecondaryInstance[secondaryData.length]; for(int i = 0; i < secondaryData.length; i++){ MobySecondaryData param = secondaryData[i]; // Set specific values for the following param, just as an example if(param.getName().equals("strand")){ secondaryInstances[i] = new MobyDataSecondaryInstance(param, "Reverse"); } // Use default value for other parameters (if any), is set to the registered default value automagically else{ secondaryInstances[i] = new MobyDataSecondaryInstance(param); } } mr.setSecondaryInput(secondaryInstances); } > How do I set up the inputs with MobyDataObject's for this service? > The sample clients in CVS only deal with simple setups (id and > namespace) so some lines of example code would be really helpful. > > Another question: How can I from the MobyDataType tell what format I > should expect to fill in? If it is 'GenericSequence', how can I tell > if i'm supposed to add a String? Can I look that up somewhere? This is covered in the first example, mobyDataType.getAllChildren(); > And do > the MobyDataType's have constraints (like min/max values) etc? No, only Secondary parameters have constraints on values in Moby. > I have > also not really understood the key-value-datatype. Is it possible to > get the allowed keys from the MobyDataType in some way? > Do you mean namespace/id? You can get the list of valid namespaces with Central..|*getFullNamespaces *()| . There is no way to validate IDs except by submitting them to services are seeing if they work. Hope this helps! -Paul > Cheers, > > .../Ola Spjuth > > > > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l > > !DSPAM:60005,46ba331480211783021950! > > > > From markw at illuminae.com Thu Aug 9 17:30:21 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Thu, 09 Aug 2007 14:30:21 -0700 Subject: [MOBY-l] Request for BioMoby support letters Message-ID: Hi all Mobyers! I'm about to submit a grant proposal to Genome Canada with the plan to build 'Moby-2'. This is similar to Moby, but much more tightly integrated with semantic web technologies and especially with query tools like SPARQL and with DL reasoners. Effectively, the idea is that we can execute BioMoby-like services (that consume/generate RDF) inline with SPARQL queries and/or as part of OWL reasoning; the query is resolved after the required services are discovered and executed. This allows you to pose queries over data that does not exist at the time you constructed the query - the data "automagically" becomes available as a result of the question you asked. One could also think of it as query-based workflow construction, or model-is-workflow in the case of OWL. I just got the preliminary reviews back and they were wonderfully positive! (thanks to anyone out there who was a reviewer!) The primary concern from the reviewers was that I cannot prove that there will be "uptake" of this technology by any end-users. So that brings me to the point of this message. I'm wondering if any of you would be willing to provide letters of support for this grant proposal. In particular, the letter should say something to the effect that you are a user of BioMoby, and are looking forward to using this next-generation of Moby technology. The letter should also state who you are, what organization you represent, and what you use Moby for. I'm sorry for the late notice, but I need supporting letters before the end of the day on Tuesday the 14th! Email is fine, but a signed fax or PDF is better :-) The more letters I get, the more convincing my arguments will be! Contact details are below. Thanks to everyone for your support! Mark -- -- Mark Wilkinson Assistant Professor, Dept. Medical Genetics University of British Columbia PI Bioinformatics iCAPTURE Centre, St. Paul's Hospital Tel: +1 604 682 2344 x62129 Fax: + 1604 806 9274 ***CONFIDENTIALITY NOTICE*** This electronic message is intended only for the use of the addressee and may contain information that is privileged and confidential. Any dissemination, distribution or copying of this communication by unauthorized individuals is strictly prohibited. If you have received this communication in error, please notify the sender immediately by reply e-mail and delete the original and all copies from your system. From markw at illuminae.com Thu Aug 9 18:17:42 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Thu, 09 Aug 2007 15:17:42 -0700 Subject: [MOBY-l] Request for BioMoby support letters In-Reply-To: <46BB8F10.1030406@ucalgary.ca> References: <46BB8F10.1030406@ucalgary.ca> Message-ID: On Thu, 09 Aug 2007 15:02:56 -0700, Paul Gordon wrote: > The MOBY 2.0 idea (Mark, correct if I'm wrong), is to load up the > appropriate > facts (propositions) from services as they are needed to check the truth > of a > statement (scientific hypothesis). These facts are not necessarily from > a database, > it could be that a service returns a proposition like "ing1 and yng1 are > orthologs" > based on a BLAST you did on your server. Such a service would be > declared > with a signature: > > "I return facts of the form 'X and Y are orthologs'" more or less, that's what I'm saying, yes :-) It's a bit more than that... Let's take this example. Say I start with a database of raw, unannotated protein sequences. As a biological researcher, I don't know (and don't care!) what information is or is not in my database, I only care about the question I am asking... so I ask it! I pose a SPARQL query over this database: "Select 'Serine Threonine Kinase' where hasInhibitor 'Coumermycin A1'" Somewhere in the world is an OWL ontology that states: Class(Serine Threonine Kinase) is equivalent to Class(Protein) that hasFunctionalAnnotation 'serine-threonine kinase domain' The Classes in my query are first looked-up against the OWL model and the definition of "Serine Threonine Kinase" is determined. The Class resrictions of that class are deconstructed, and the system looks up "what Moby Services consume Protein and can provide a hasFunctionalAnnotation property?". That service is discovered and executed in the same way Moby works now. A DL reasoner then classifies these proteins into "Serine Threonine Kinase" or "other", and we return to the SPARQL query with our Serine Threonine Kinase's in-hand. The system then says "what services consume Protein and provide a hasInhibitor property? This moby service is auto-discovered and auto-invoked using the Serine Threonine Kinase's as input, and they come back with the hasInhibitor property attached to them. Now the SPARQL query can be completed, by returning those that have the value "Coumermycin A1" attached to them. so... starting from raw sequence, I was able to discover those sequences that are inhibited by a molecule of interest... and I didn't have to construct the workflow, I simply asked the question :-) It sounds a bit like black magic, but I am convinced that we can get something similar to this working in the next couple of years! the details of *how* we're going to do it are in the grant, but I can't make the grant proposal public at the moment... M -- -- Mark Wilkinson Assistant Professor, Dept. Medical Genetics University of British Columbia PI Bioinformatics iCAPTURE Centre, St. Paul's Hospital Tel: 604 682 2344 x62129 Fax: 604 806 9274 ***CONFIDENTIALITY NOTICE*** This electronic message is intended only for the use of the addressee and may contain information that is privileged and confidential. Any dissemination, distribution or copying of this communication by unauthorized individuals is strictly prohibited. If you have received this communication in error, please notify the sender immediately by reply e-mail and delete the original and all copies from your system. From gordonp at ucalgary.ca Thu Aug 9 18:02:56 2007 From: gordonp at ucalgary.ca (Paul Gordon) Date: Thu, 09 Aug 2007 16:02:56 -0600 Subject: [MOBY-l] Request for BioMoby support letters In-Reply-To: References: Message-ID: <46BB8F10.1030406@ucalgary.ca> Hi all, By the process of variable unification in first-order logic, you can very easily solve problems like "John lives next to Betty, Betty does not have green eyes, Phil is twice as old as Betty, etc.... What color are John's eyes?" If you have programmed in Prolog, you will know what I mean. Essentially, MOBY 1.0 is procedural, and MOBY 2.0 is declarative logic. The MOBY 2.0 idea (Mark, correct if I'm wrong), is to load up the appropriate facts (propositions) from services as they are needed to check the truth of a statement (scientific hypothesis). These facts are not necessarily from a database, it could be that a service returns a proposition like "ing1 and yng1 are orthologs" based on a BLAST you did on your server. Such a service would be declared with a signature: "I return facts of the form 'X and Y are orthologs'" > Effectively, the idea is that we can execute BioMoby-like services (that > consume/generate RDF) inline with SPARQL queries and/or as part of OWL > reasoning; the query is resolved after the required services are > discovered and executed. This allows you to pose queries over data that > does not exist at the time you constructed the query - the data > "automagically" becomes available as a result of the question you asked. > One could also think of it as query-based workflow construction, or > model-is-workflow in the case of OWL. > From gordonp at ucalgary.ca Thu Aug 9 19:33:32 2007 From: gordonp at ucalgary.ca (Paul Gordon) Date: Thu, 09 Aug 2007 17:33:32 -0600 Subject: [MOBY-l] Request for BioMoby support letters In-Reply-To: References: <46BB8F10.1030406@ucalgary.ca> Message-ID: <46BBA44C.7060701@ucalgary.ca> Yes, my "What color are John's eyes?" example was trying to be too untechnical perhaps. Equally as mind-numbing as the Serine Threonine Kinase example when you're writing an aptitude test though :-) > On Thu, 09 Aug 2007 15:02:56 -0700, Paul Gordon > wrote: > > >> The MOBY 2.0 idea (Mark, correct if I'm wrong), is to load up the >> appropriate >> facts (propositions) from services as they are needed to check the truth >> of a >> statement (scientific hypothesis). These facts are not necessarily from >> a database, >> it could be that a service returns a proposition like "ing1 and yng1 are >> orthologs" >> based on a BLAST you did on your server. Such a service would be >> declared >> with a signature: >> >> "I return facts of the form 'X and Y are orthologs'" >> > > > more or less, that's what I'm saying, yes :-) It's a bit more than that... > > > Let's take this example. Say I start with a database of raw, unannotated > protein sequences. > > As a biological researcher, I don't know (and don't care!) what > information is or is not in my database, I only care about the question I > am asking... so I ask it! I pose a SPARQL query over this database: > > "Select 'Serine Threonine Kinase' where hasInhibitor 'Coumermycin A1'" > > Somewhere in the world is an OWL ontology that states: > > Class(Serine Threonine Kinase) is equivalent to > Class(Protein) that > hasFunctionalAnnotation 'serine-threonine kinase domain' > > The Classes in my query are first looked-up against the OWL model and the > definition of "Serine Threonine Kinase" is determined. The Class > resrictions of that class are deconstructed, and the system looks up "what > Moby Services consume Protein and can provide a hasFunctionalAnnotation > property?". That service is discovered and executed in the same way Moby > works now. A DL reasoner then classifies these proteins into "Serine > Threonine Kinase" or "other", and we return to the SPARQL query with our > Serine Threonine Kinase's in-hand. The system then says "what services > consume Protein and provide a hasInhibitor property? This moby service is > auto-discovered and auto-invoked using the Serine Threonine Kinase's as > input, and they come back with the hasInhibitor property attached to > them. Now the SPARQL query can be completed, by returning those that have > the value "Coumermycin A1" attached to them. > > so... starting from raw sequence, I was able to discover those sequences > that are inhibited by a molecule of interest... and I didn't have to > construct the workflow, I simply asked the question :-) > > It sounds a bit like black magic, but I am convinced that we can get > something similar to this working in the next couple of years! the > details of *how* we're going to do it are in the grant, but I can't make > the grant proposal public at the moment... > > M > > > From groscurt at mpiz-koeln.mpg.de Fri Aug 10 03:45:46 2007 From: groscurt at mpiz-koeln.mpg.de (Andreas Groscurth) Date: Fri, 10 Aug 2007 09:45:46 +0200 Subject: [MOBY-l] getting the value for a relationship In-Reply-To: <46BB8F10.1030406@ucalgary.ca> References: <46BB8F10.1030406@ucalgary.ca> Message-ID: <200708100945.46652.groscurt@mpiz-koeln.mpg.de> Hi all, I have the following service result evidence code for the relationship reference TAIR accession for the relationship ATP-dependent helicase activity I'm able to retrieve all informations via Java except the value of 'Term' I have my MobyDataObject and extract the CrossReferences via getCrossReferences. getChildren return the MobyRelationship but I'm only able to say thats a string and 'Term' ... how do I get the actual value of that element ? thanks andreas -- Andreas Groscurth Diplom Bioinformatik - PhD Student Max Planck Institute for Plant Breeding Research Carl-von-Linn?-Weg 10 50829 Cologne Germany E-mail: ? ?groscurt at mpiz-koeln.mpg.de Phone: ? ?+49(0)221-5062-447 From goodb at interchange.ubc.ca Tue Aug 14 11:59:39 2007 From: goodb at interchange.ubc.ca (Benjamin Good) Date: Tue, 14 Aug 2007 08:59:39 -0700 Subject: [MOBY-l] client page is missing from website Message-ID: <70F39196-A7C8-4909-8184-313EF5334050@interchange.ubc.ca> http://biomoby.open-bio.org/index.php/moby-clients/ -> 404 From mikedebo at gmail.com Thu Aug 16 14:13:08 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Thu, 16 Aug 2007 11:13:08 -0700 Subject: [MOBY-l] Request for sample workflows Message-ID: <02FC4A01-3FAB-43B7-B0AB-9BC27F7FD087@gmail.com> Hi all, I've been working on a project that involves using automatic service composition to suggest "good" services to the user during the workflow assembly process, and I'm looking for sample workflows that I can use in my evaluation. Ideally these workflows would be restricted to using only Moby services, because I can't really handle anything but Moby services just yet. Workflow donations or pointers to repositories would be greatly appreciated! Thanks, -Mike From maliha.aziz at yahoo.com Fri Aug 17 04:17:24 2007 From: maliha.aziz at yahoo.com (maliha aziz) Date: Fri, 17 Aug 2007 01:17:24 -0700 (PDT) Subject: [MOBY-l] Service Instances Message-ID: <227201.76331.qm@web57405.mail.re1.yahoo.com> Hi I need help in reading RDF/OWL Service Instances document that I have downloaded from http://biomoby.org/RESOURCES/MOBY-S/ServiceInstances. I just need to extract the service names the inputs and outputs from this document. I am using the jena API and am writing my program in Java ( obviously) and the IDE is eclipse. My first question is .... am I on the right track here? The ServiceInstances is the file that contains all the services that are registered with biomoby right? Secondly what is the format of this document that I can specify while trying to extract what I need that is the name and the inputs and outputs ... Is there a simpler way to do this becuz reading the file is the simplest thing i could think of... my code in java is a requirement in this case.. thanks maliha --------------------------------- Moody friends. Drama queens. Your life? Nope! - their life, your story. Play Sims Stories at Yahoo! Games. From groscurt at mpiz-koeln.mpg.de Fri Aug 17 04:45:15 2007 From: groscurt at mpiz-koeln.mpg.de (Andreas Groscurth) Date: Fri, 17 Aug 2007 10:45:15 +0200 Subject: [MOBY-l] Service Instances In-Reply-To: <227201.76331.qm@web57405.mail.re1.yahoo.com> References: <227201.76331.qm@web57405.mail.re1.yahoo.com> Message-ID: <200708171045.15527.groscurt@mpiz-koeln.mpg.de> hi Maliha, is it also a requirement to read the rdf document ? because otherwise you could simple use the existing Java API (see org.biomoby.shared.Central) to retrieve the services with their full information. andreas On Friday 17 August 2007 10:17, maliha aziz wrote: > Hi > I need help in reading RDF/OWL Service Instances document that I have > downloaded from http://biomoby.org/RESOURCES/MOBY-S/ServiceInstances. I > just need to extract the service names the inputs and outputs from this > document. I am using the jena API and am writing my program in Java ( > obviously) and the IDE is eclipse. > My first question is .... am I on the right track here? The > ServiceInstances is the file that contains all the services that are > registered with biomoby right? Secondly what is the format of this document > that I can specify while trying to extract what I need that is the name and > the inputs and outputs ... Is there a simpler way to do this becuz reading > the file is the simplest thing i could think of... my code in java is a > requirement in this case.. > > thanks > maliha > > > --------------------------------- > Moody friends. Drama queens. Your life? Nope! - their life, your story. > Play Sims Stories at Yahoo! Games. > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l -- Andreas Groscurth Diplom Bioinformatik - PhD Student Max Planck Institute for Plant Breeding Research Carl-von-Linn?-Weg 10 50829 Cologne Germany E-mail: ? ?groscurt at mpiz-koeln.mpg.de Phone: ? ?+49(0)221-5062-447 From maliha.aziz at yahoo.com Fri Aug 17 05:08:22 2007 From: maliha.aziz at yahoo.com (maliha aziz) Date: Fri, 17 Aug 2007 02:08:22 -0700 (PDT) Subject: [MOBY-l] Service Instances In-Reply-To: <200708171045.15527.groscurt@mpiz-koeln.mpg.de> Message-ID: <996666.36315.qm@web57406.mail.re1.yahoo.com> Hi Andreas I actually need the service name its inputs as well as outputs ... I looked at the org.biomoby.shared.Central the maximum i could see was this function that could be of some use getServiceNamesByAuthority() Get a list of all authorities - and for each of them a list of their registered service names. But I will explore this option a lil further... thanks fer the reply :) maliha Andreas Groscurth wrote: hi Maliha, is it also a requirement to read the rdf document ? because otherwise you could simple use the existing Java API (see org.biomoby.shared.Central) to retrieve the services with their full information. andreas On Friday 17 August 2007 10:17, maliha aziz wrote: > Hi > I need help in reading RDF/OWL Service Instances document that I have > downloaded from http://biomoby.org/RESOURCES/MOBY-S/ServiceInstances. I > just need to extract the service names the inputs and outputs from this > document. I am using the jena API and am writing my program in Java ( > obviously) and the IDE is eclipse. > My first question is .... am I on the right track here? The > ServiceInstances is the file that contains all the services that are > registered with biomoby right? Secondly what is the format of this document > that I can specify while trying to extract what I need that is the name and > the inputs and outputs ... Is there a simpler way to do this becuz reading > the file is the simplest thing i could think of... my code in java is a > requirement in this case.. > > thanks > maliha > > > --------------------------------- > Moody friends. Drama queens. Your life? Nope! - their life, your story. > Play Sims Stories at Yahoo! Games. > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l -- Andreas Groscurth Diplom Bioinformatik - PhD Student Max Planck Institute for Plant Breeding Research Carl-von-Linn?-Weg 10 50829 Cologne Germany E-mail: groscurt at mpiz-koeln.mpg.de Phone: +49(0)221-5062-447 _______________________________________________ moby-l mailing list moby-l at lists.open-bio.org http://lists.open-bio.org/mailman/listinfo/moby-l --------------------------------- Ready for the edge of your seat? Check out tonight's top picks on Yahoo! TV. From edward.kawas at gmail.com Fri Aug 17 07:54:05 2007 From: edward.kawas at gmail.com (Edward Kawas) Date: Fri, 17 Aug 2007 04:54:05 -0700 Subject: [MOBY-l] Service Instances In-Reply-To: <200708171045.15527.groscurt@mpiz-koeln.mpg.de> References: <227201.76331.qm@web57405.mail.re1.yahoo.com> <200708171045.15527.groscurt@mpiz-koeln.mpg.de> Message-ID: <000c01c7e0c5$502ddab0$6400a8c0@notebook> Hi Maliha, Take a look at the package org.biomoby.shared.extended, specifically the class ServiceInstanceParser. This will help you parse the RDF and return MobyService Objects. Eddie > -----Original Message----- > From: moby-l-bounces at lists.open-bio.org [mailto:moby-l-bounces at lists.open- > bio.org] On Behalf Of Andreas Groscurth > Sent: Friday, August 17, 2007 1:45 AM > To: moby-l at lists.open-bio.org > Subject: Re: [MOBY-l] Service Instances > > hi Maliha, > > is it also a requirement to read the rdf document ? > > because otherwise you could simple use the existing Java API (see > org.biomoby.shared.Central) to retrieve the services with their full > information. > > andreas > > On Friday 17 August 2007 10:17, maliha aziz wrote: > > Hi > > I need help in reading RDF/OWL Service Instances document that I have > > downloaded from http://biomoby.org/RESOURCES/MOBY-S/ServiceInstances. I > > just need to extract the service names the inputs and outputs from this > > document. I am using the jena API and am writing my program in Java ( > > obviously) and the IDE is eclipse. > > My first question is .... am I on the right track here? The > > ServiceInstances is the file that contains all the services that are > > registered with biomoby right? Secondly what is the format of this > document > > that I can specify while trying to extract what I need that is the name > and > > the inputs and outputs ... Is there a simpler way to do this becuz > reading > > the file is the simplest thing i could think of... my code in java is a > > requirement in this case.. > > > > thanks > > maliha > > > > > > --------------------------------- > > Moody friends. Drama queens. Your life? Nope! - their life, your story. > > Play Sims Stories at Yahoo! Games. > > _______________________________________________ > > moby-l mailing list > > moby-l at lists.open-bio.org > > http://lists.open-bio.org/mailman/listinfo/moby-l > > -- > Andreas Groscurth > Diplom Bioinformatik - PhD Student > Max Planck Institute for Plant Breeding Research > Carl-von-Linn?-Weg 10 > 50829 Cologne > Germany > E-mail: ? ?groscurt at mpiz-koeln.mpg.de > Phone: ? ?+49(0)221-5062-447 > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l From mikedebo at gmail.com Fri Aug 17 10:21:37 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Fri, 17 Aug 2007 07:21:37 -0700 Subject: [MOBY-l] Service Instances In-Reply-To: <996666.36315.qm@web57406.mail.re1.yahoo.com> References: <996666.36315.qm@web57406.mail.re1.yahoo.com> Message-ID: On 17-Aug-07, at 2:08 AM, maliha aziz wrote: > Hi Andreas > I actually need the service name its inputs as well as outputs ... > I looked at the org.biomoby.shared.Central the maximum i could see > was this function that could be of some use > > getServiceNamesByAuthority() > Get a list of all authorities - and for each of them a > list of their registered service names. This is a gotcha in the API that tripped me up at first. If you just use the Central interface, you can only fetch the _names_ of the services. You then have to make a call to findServiceByName for each service to populate the other fields of each service interface. Alternately, you can use CentralDigestImpl directly and call getServices(). That will fetch you the inputs and outputs as well, but it still leaves some fields in each MobyService unpopulated. See: http://biomoby.open-bio.org/CVS_CONTENT/moby-live/Java/docs/API/ org/biomoby/client/CentralDigestImpl.html#getServices() Finally, if you don't want to go over the wire every time you execute your program, you can use a version of the central digest that supports caching (i.e. writes the results of your fetch to a directory on the local store): See: http://biomoby.open-bio.org/CVS_CONTENT/moby-live/Java/docs/API/org/ biomoby/client/CentralDigestCachedImpl.html http://biomoby.open-bio.org/CVS_CONTENT/moby-live/Java/docs/API/org/ biomoby/client/CentralDigestCachedImpl.html#getServices() Hope this helps, -Mike From mikedebo at gmail.com Fri Aug 17 10:28:44 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Fri, 17 Aug 2007 07:28:44 -0700 Subject: [MOBY-l] Service Instances In-Reply-To: References: <996666.36315.qm@web57406.mail.re1.yahoo.com> Message-ID: <38D813A6-FDFC-41F5-9EF8-69D595F22924@gmail.com> On 17-Aug-07, at 7:21 AM, Michael DiBernardo wrote: > > On 17-Aug-07, at 2:08 AM, maliha aziz wrote: > >> Hi Andreas >> I actually need the service name its inputs as well as outputs ... >> I looked at the org.biomoby.shared.Central the maximum i could see >> was this function that could be of some use >> >> getServiceNamesByAuthority() >> Get a list of all authorities - and for each of them a >> list of their registered service names. > > This is a gotcha in the API that tripped me up at first. If you > just use the Central interface, you can only fetch the _names_ of > the services. You then have to make a call to findServiceByName for > each service to populate the other fields of each service interface. > > Alternately, you can use CentralDigestImpl directly and call > getServices(). That will fetch you the inputs and outputs as well, > but it still leaves some fields in each MobyService unpopulated. A minor correction: There is an interface that specifies the getServices() call, it isn't just thrown into one of the implementation classes, as I implied here. http://biomoby.open-bio.org/CVS_CONTENT/moby-live/Java/docs/API/org/ biomoby/shared/CentralDigest.html -Mike From markw at illuminae.com Mon Aug 20 15:21:11 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Mon, 20 Aug 2007 12:21:11 -0700 Subject: [MOBY-l] Publication opportunity for Mobyers, especially TIGR workshop participants Message-ID: This sounds *perfect* for some of the interfaces that many of you have been developing. Especially the folks who have been attending the TIGR workshops! Deadline is only 11 days away... Special Issue of the Journal of Biomedical Informatics on Semantic BioMed Mashup Guest Editors: Kei-Hoi Cheung, Huajun Chen, Yimin Wang, Susie Stephens, Joanne Luciano, Vipul Kashyap Submission Deadline: August 31, 2007 Biomedical researchers need to be able to access all relevant data in order to make well-informed decisions. To reach this objective, data about genes, proteins, pathways, chemical compounds, diseases, and clinical trials must be effectively integrated and available to the scientist. Yet, integration of disparate biomedical data continues to be a challenge. Difficulties with data integration occur because many biomedical research disciplines require the integration of data sets that have been produced by using different experimental/clinical protocols using heterogeneous data formats, and that reflect different levels of abstraction. Further challenges include inconsistent use of terminology and identifiers, rapidly increasing data volumes, and the growing diversity in data types and formats. The goal of this special issue of the Journal of Biomedical Informatics (JBI) is to provide a forum for advanced research on methods for biomedical data mashup using Semantic Web technologies, as the quantity and diversity of biomedical datasets are growing rapidly on the Web. In accordance with the editorial policies of the Journal, we are soliciting full-length article submissions that explain and demonstrate the use of novel Semantic Web methodologies to integrate heterogeneous biomedical data (see a summary of JBI's editorial guidelines at http://www.elsevier.com/locate/yjbin). In addition to original research papers, we are soliciting one or more methodological review papers in the issue and we welcome submissions in this category. Possible topics for this special include: ? Integration of health care and/or life science data using semantic web technologies. ? Semantics of health care and/or life science data ? Semantic web applications for health care and/or life science data ? Semantic web services ? Ontology-based data integration ? RDF/OWL data querying languages ? Experience with novel methods using triple stores Any questions regarding the special issue may be sent to: kei.cheung at yale.edu. Inquiries about suitability should include a short paragraph describing the primary objectives of the manuscript. We would welcome advance notice of your intention to submit a paper. Submissions: Manuscripts should be submitted to the JBI authors' gateway (http://ees.elsevier.com/jbi/) no later than July 31, 2007. Please be sure that your manuscript follows the JBI instructions for authors available on that Web site. You will be offered an opportunity to specify the special issue as the preferred venue when you submit your manuscript to the gateway. Submissions will undergo standard peer review, and opportunities for revision will be provided as appropriate. Papers judged inappropriate for the special issue may be considered for publication in a regular issue of the Journal of Biomedical Informatics. The information transmitted in this electronic communication is intended only for the person or entity to whom it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you received this information in error, please contact the Compliance HelpLine at 800-856-1983 and properly dispose of this information. -- -- Mark Wilkinson Assistant Professor, Dept. Medical Genetics University of British Columbia PI Bioinformatics iCAPTURE Centre, St. Paul's Hospital Tel: 604 682 2344 x62129 Fax: 604 806 9274 ***CONFIDENTIALITY NOTICE*** This electronic message is intended only for the use of the addressee and may contain information that is privileged and confidential. Any dissemination, distribution or copying of this communication by unauthorized individuals is strictly prohibited. If you have received this communication in error, please notify the sender immediately by reply e-mail and delete the original and all copies from your system. From mikedebo at gmail.com Mon Aug 20 16:22:01 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Mon, 20 Aug 2007 13:22:01 -0700 Subject: [MOBY-l] text-plain and text_plain Message-ID: <57ADB696-B327-4A4E-BBAD-15E71089C8ED@gmail.com> I am peeking curiously at the types "text_plain" and "text-plain" in the Objects ontology. (One uses an underscore and the other uses a dash, if you weren't able to see the difference straightaway). Roughly 130 types in the Objects ontology derive from text-plain, while roughly 50 derive from text_plain. What is the reasoning behind this division, if any? Is this just a common typo/formatting issue that we haven't gotten around to dealing with yet? I would classify this as a pretty substantial annoyance, since it appears to make many compatible services appear incompatible with one another. Is there anything I might be able to do straightaway that could contribute to fixing this, if it indeed needs fixing? -Mike From markw at illuminae.com Mon Aug 20 16:50:09 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Mon, 20 Aug 2007 13:50:09 -0700 Subject: [MOBY-l] Publication opportunity for Mobyers, especially TIGR workshop participants In-Reply-To: <9F9FBD4CF09A1446BE3EDFA1F3A49E870188170C@EXCHANGE.TIGR.ORG> References: <9F9FBD4CF09A1446BE3EDFA1F3A49E870188170C@EXCHANGE.TIGR.ORG> Message-ID: On Mon, 20 Aug 2007 13:27:29 -0700, Town, Christopher D. wrote: > I'm not sure that what we've done so far really qualifies as "sematic", I think it does. The term "semantic" is not limited to "official" semantic web technologies... M From markw at illuminae.com Mon Aug 20 16:48:37 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Mon, 20 Aug 2007 13:48:37 -0700 Subject: [MOBY-l] text-plain and text_plain In-Reply-To: <57ADB696-B327-4A4E-BBAD-15E71089C8ED@gmail.com> References: <57ADB696-B327-4A4E-BBAD-15E71089C8ED@gmail.com> Message-ID: Ugh... Appendicitis! At some point someone registered text_plain when text-plain already existed... after that, people discovered one or the other and started building inheritence trees from both of them. As a community, we have agreed to use hyphens. We are supporting the underscores only until there are no longer any services that utilize those nodes or their children. At that point, we will prune that node off completely :-) So... please use hyphens preferentially. M On Mon, 20 Aug 2007 13:22:01 -0700, Michael DiBernardo wrote: > I am peeking curiously at the types "text_plain" and "text-plain" in > the Objects ontology. (One uses an underscore and the other uses a > dash, if you weren't able to see the difference straightaway). > > Roughly 130 types in the Objects ontology derive from text-plain, > while roughly 50 derive from text_plain. What is the reasoning behind > this division, if any? Is this just a common typo/formatting issue > that we haven't gotten around to dealing with yet? I would classify > this as a pretty substantial annoyance, since it appears to make many > compatible services appear incompatible with one another. > > Is there anything I might be able to do straightaway that could > contribute to fixing this, if it indeed needs fixing? > > -Mike > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l -- -- Mark Wilkinson Assistant Professor, Dept. Medical Genetics University of British Columbia PI Bioinformatics iCAPTURE Centre, St. Paul's Hospital Tel: 604 682 2344 x62129 Fax: 604 806 9274 ***CONFIDENTIALITY NOTICE*** This electronic message is intended only for the use of the addressee and may contain information that is privileged and confidential. Any dissemination, distribution or copying of this communication by unauthorized individuals is strictly prohibited. If you have received this communication in error, please notify the sender immediately by reply e-mail and delete the original and all copies from your system. From ddg at ncgr.org Mon Aug 20 18:08:38 2007 From: ddg at ncgr.org (Damian Gessler) Date: Mon, 20 Aug 2007 16:08:38 -0600 Subject: [MOBY-l] Publication opportunity for Mobyers, especially TIGR workshop participants In-Reply-To: References: <9F9FBD4CF09A1446BE3EDFA1F3A49E870188170C@EXCHANGE.TIGR.ORG> Message-ID: Always happy to see envelopes being pushed, though it does appear from the solicitation itself that the editors mean the "Semantic Web" notion of semantics: "The goal of this special issue of the Journal of Biomedical Informatics (JBI) is to provide a forum for advanced research on methods for biomedical data mashup using Semantic Web technologies, as the quantity and diversity of biomedical datasets are growing rapidly on the Web. In accordance with the editorial policies of the Journal, we are soliciting full-length article submissions that explain and demonstrate the use of novel Semantic Web methodologies to integrate heterogeneous biomedical data ..." See also of course Wikipedia for commonly accepted implications of "semantics" http://en.wikipedia.org/wiki/Semantic#Computer_science. I've got a paper almost ready, but I was thinking about BMC Bioinformatics as its home... . D. On Mon, 20 Aug 2007 14:50:09 -0600, Mark Wilkinson wrote: > On Mon, 20 Aug 2007 13:27:29 -0700, Town, Christopher D. > wrote: > >> I'm not sure that what we've done so far really qualifies as "sematic", > > I think it does. The term "semantic" is not limited to "official" > semantic web technologies... > > M > From Pieter.Neerincx at wur.nl Tue Aug 21 05:23:24 2007 From: Pieter.Neerincx at wur.nl (Pieter Neerincx) Date: Tue, 21 Aug 2007 11:23:24 +0200 Subject: [MOBY-l] Publication opportunity for Mobyers, especially TIGR workshop participants In-Reply-To: References: <9F9FBD4CF09A1446BE3EDFA1F3A49E870188170C@EXCHANGE.TIGR.ORG> Message-ID: On 20-Aug-2007, at 10:50 PM, Mark Wilkinson wrote: > On Mon, 20 Aug 2007 13:27:29 -0700, Town, Christopher D. > > wrote: > >> I'm not sure that what we've done so far really qualifies as >> "sematic", > > I think it does. The term "semantic" is not limited to "official" > semantic web technologies... I agree! More importantly BioMOBY actually works as in today not tomorrow. Surely there is more advanced semantic web technology out there alreay, but so far I haven't seen that picked up by such a large community of bioinformaticians providing a few hundred services. But unfortunately it appears to be a closed source journal. At least I don't see the 2 magical words "open" and "access" mentioned anywhere on their site. Bummer :(. Pi > > M > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l > ------------------------------------------------------------- Wageningen University and Research centre (WUR) Laboratory of Bioinformatics Transitorium (building 312) room 1034 Dreijenlaan 3 6703 HA Wageningen The Netherlands phone: 0317-483 060 fax: 0317-483 584 mobile: 06-143 66 783 mail: pieter.neerincx at wur.nl skype: pieter.online ------------------------------------------------------------ From Pieter.Neerincx at wur.nl Tue Aug 21 05:46:58 2007 From: Pieter.Neerincx at wur.nl (Pieter Neerincx) Date: Tue, 21 Aug 2007 11:46:58 +0200 Subject: [MOBY-l] text-plain and text_plain In-Reply-To: References: <57ADB696-B327-4A4E-BBAD-15E71089C8ED@gmail.com> Message-ID: Hi, On 20-Aug-2007, at 10:48 PM, Mark Wilkinson wrote: > Ugh... Appendicitis! > > At some point someone registered text_plain when text-plain already > existed... after that, people discovered one or the other and started > building inheritence trees from both of them. > > As a community, we have agreed to use hyphens. We are supporting the > underscores only until there are no longer any services that > utilize those > nodes or their children. At that point, we will prune that node off > completely :-) Is there a deadline for saying by by to text_plain or is it possible to make these depreciated nodes "read only" so people can not register new services or make more complex objects based on them? Otherwise I bet such depreciated nodes will be stuck in the ontology forever. Cheers, Pi > So... please use hyphens preferentially. > > M > > > > > > On Mon, 20 Aug 2007 13:22:01 -0700, Michael DiBernardo > wrote: > >> I am peeking curiously at the types "text_plain" and "text-plain" in >> the Objects ontology. (One uses an underscore and the other uses a >> dash, if you weren't able to see the difference straightaway). >> >> Roughly 130 types in the Objects ontology derive from text-plain, >> while roughly 50 derive from text_plain. What is the reasoning behind >> this division, if any? Is this just a common typo/formatting issue >> that we haven't gotten around to dealing with yet? I would classify >> this as a pretty substantial annoyance, since it appears to make many >> compatible services appear incompatible with one another. >> >> Is there anything I might be able to do straightaway that could >> contribute to fixing this, if it indeed needs fixing? >> >> -Mike >> _______________________________________________ >> moby-l mailing list >> moby-l at lists.open-bio.org >> http://lists.open-bio.org/mailman/listinfo/moby-l > > > > -- > -- > Mark Wilkinson > Assistant Professor, Dept. Medical Genetics > University of British Columbia > PI Bioinformatics > iCAPTURE Centre, St. Paul's Hospital > Tel: 604 682 2344 x62129 > Fax: 604 806 9274 > > ***CONFIDENTIALITY NOTICE*** > This electronic message is intended only for the use of the > addressee and > may contain information that is privileged and confidential. Any > dissemination, distribution or copying of this communication by > unauthorized individuals is strictly prohibited. If you have > received this > communication in error, please notify the sender immediately by reply > e-mail and delete the original and all copies from your system. > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l > ------------------------------------------------------------- Wageningen University and Research centre (WUR) Laboratory of Bioinformatics Transitorium (building 312) room 1034 Dreijenlaan 3 6703 HA Wageningen The Netherlands phone: 0317-483 060 fax: 0317-483 584 mobile: 06-143 66 783 mail: pieter.neerincx at wur.nl skype: pieter.online ------------------------------------------------------------ From markw at illuminae.com Tue Aug 21 11:01:35 2007 From: markw at illuminae.com (Mark Wilkinson) Date: Tue, 21 Aug 2007 08:01:35 -0700 Subject: [MOBY-l] text-plain and text_plain In-Reply-To: References: <57ADB696-B327-4A4E-BBAD-15E71089C8ED@gmail.com> Message-ID: The last time this was discussed I believe that the conclusion was that we (whoever was interested in the particular node-conflict) would write to the host of the "offending" service and politely ask them to use the more accepted node. It was not discussed beyond that, but it makes sense that it would then fall as the responsibility of the reporting person to de-register the unused nodes if/when the provider agrees (since it is in their interests to do so) It may well be that many of those "offending" nodes are not being used - I may sit at Taverna for a couple of hours one day this week and do some pruning... It's nice that the API prevents you from deregistering anything that is being used, so basically one just needs to sit there and "hit the delete button" until your fingers get tired :-) I think the problem is that some of the most obviously useful nodes are hidden below non-obviously useful nodes (e.g. DNA Sequence is under VirtualSequence), so people don't know where to look to find things that are already there. The Encyclopaedia helps (http://mobycentral.icapture.ubc.ca/cgi-bin/list.services.cgi), and that's what I generally use since that particular search functionality isn't in any of the other main registry clients (e.g. Dashboard). Maybe we can convince Eddie or Martin to put the functionality in? :-) M On Tue, 21 Aug 2007 02:46:58 -0700, Pieter Neerincx wrote: > Hi, > > On 20-Aug-2007, at 10:48 PM, Mark Wilkinson wrote: > >> Ugh... Appendicitis! >> >> At some point someone registered text_plain when text-plain already >> existed... after that, people discovered one or the other and started >> building inheritence trees from both of them. >> >> As a community, we have agreed to use hyphens. We are supporting the >> underscores only until there are no longer any services that >> utilize those >> nodes or their children. At that point, we will prune that node off >> completely :-) > > Is there a deadline for saying by by to text_plain or is it possible > to make these depreciated nodes "read only" so people can not > register new services or make more complex objects based on them? > Otherwise I bet such depreciated nodes will be stuck in the ontology > forever. > > Cheers, > > Pi > > >> So... please use hyphens preferentially. >> >> M >> >> >> >> >> >> On Mon, 20 Aug 2007 13:22:01 -0700, Michael DiBernardo >> wrote: >> >>> I am peeking curiously at the types "text_plain" and "text-plain" in >>> the Objects ontology. (One uses an underscore and the other uses a >>> dash, if you weren't able to see the difference straightaway). >>> >>> Roughly 130 types in the Objects ontology derive from text-plain, >>> while roughly 50 derive from text_plain. What is the reasoning behind >>> this division, if any? Is this just a common typo/formatting issue >>> that we haven't gotten around to dealing with yet? I would classify >>> this as a pretty substantial annoyance, since it appears to make many >>> compatible services appear incompatible with one another. >>> >>> Is there anything I might be able to do straightaway that could >>> contribute to fixing this, if it indeed needs fixing? >>> >>> -Mike >>> _______________________________________________ >>> moby-l mailing list >>> moby-l at lists.open-bio.org >>> http://lists.open-bio.org/mailman/listinfo/moby-l >> >> >> >> -- >> -- >> Mark Wilkinson >> Assistant Professor, Dept. Medical Genetics >> University of British Columbia >> PI Bioinformatics >> iCAPTURE Centre, St. Paul's Hospital >> Tel: 604 682 2344 x62129 >> Fax: 604 806 9274 >> >> ***CONFIDENTIALITY NOTICE*** >> This electronic message is intended only for the use of the >> addressee and >> may contain information that is privileged and confidential. Any >> dissemination, distribution or copying of this communication by >> unauthorized individuals is strictly prohibited. If you have >> received this >> communication in error, please notify the sender immediately by reply >> e-mail and delete the original and all copies from your system. >> >> _______________________________________________ >> moby-l mailing list >> moby-l at lists.open-bio.org >> http://lists.open-bio.org/mailman/listinfo/moby-l >> > > ------------------------------------------------------------- > Wageningen University and Research centre (WUR) > Laboratory of Bioinformatics > Transitorium (building 312) room 1034 > > Dreijenlaan 3 > 6703 HA Wageningen > The Netherlands > > phone: 0317-483 060 > fax: 0317-483 584 > mobile: 06-143 66 783 > mail: pieter.neerincx at wur.nl > skype: pieter.online > ------------------------------------------------------------ > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l From mikedebo at gmail.com Wed Aug 22 02:12:17 2007 From: mikedebo at gmail.com (Michael DiBernardo) Date: Tue, 21 Aug 2007 23:12:17 -0700 Subject: [MOBY-l] text-plain and text_plain In-Reply-To: References: <57ADB696-B327-4A4E-BBAD-15E71089C8ED@gmail.com> Message-ID: On 21-Aug-07, at 8:01 AM, Mark Wilkinson wrote: > I think the problem is that some of the most obviously useful nodes > are > hidden below non-obviously useful nodes (e.g. DNA Sequence is under > VirtualSequence), so people don't know where to look to find things > that > are already there. In what sense do you mean 'hidden'? If you mean that in all of the existing interfaces, we use hierarchical tree widgets (like the Java JTree) to display hierarchies and thus obscure these more 'useful' types, then yes, they are certainly hidden. However, it occurred to me if we were to look at the frequency with which each type is used in a service interface, we could display the type hierarchy as a treemap and adjust the size of each cell in the map to be relative to this frequency. This is just something I came up with while walking home with groceries; I'm sure there exist better visualizations and better metrics to assess type 'popularity' than what I've suggested here. Even a radial tree, where node sizes are weighted by popularity, would probably be much more useful than your average hierarchical view. Some handy refs on treemaps, for those who are interested: http://www.cs.umd.edu/hcil/treemap-history/ http://en.wikipedia.org/wiki/Treemapping -Mike > > > On Tue, 21 Aug 2007 02:46:58 -0700, Pieter Neerincx > wrote: > >> Hi, >> >> On 20-Aug-2007, at 10:48 PM, Mark Wilkinson wrote: >> >>> Ugh... Appendicitis! >>> >>> At some point someone registered text_plain when text-plain already >>> existed... after that, people discovered one or the other and >>> started >>> building inheritence trees from both of them. >>> >>> As a community, we have agreed to use hyphens. We are supporting >>> the >>> underscores only until there are no longer any services that >>> utilize those >>> nodes or their children. At that point, we will prune that node off >>> completely :-) >> >> Is there a deadline for saying by by to text_plain or is it possible >> to make these depreciated nodes "read only" so people can not >> register new services or make more complex objects based on them? >> Otherwise I bet such depreciated nodes will be stuck in the ontology >> forever. >> >> Cheers, >> >> Pi >> >> >>> So... please use hyphens preferentially. >>> >>> M >>> >>> >>> >>> >>> >>> On Mon, 20 Aug 2007 13:22:01 -0700, Michael DiBernardo >>> wrote: >>> >>>> I am peeking curiously at the types "text_plain" and "text- >>>> plain" in >>>> the Objects ontology. (One uses an underscore and the other uses a >>>> dash, if you weren't able to see the difference straightaway). >>>> >>>> Roughly 130 types in the Objects ontology derive from text-plain, >>>> while roughly 50 derive from text_plain. What is the reasoning >>>> behind >>>> this division, if any? Is this just a common typo/formatting issue >>>> that we haven't gotten around to dealing with yet? I would classify >>>> this as a pretty substantial annoyance, since it appears to make >>>> many >>>> compatible services appear incompatible with one another. >>>> >>>> Is there anything I might be able to do straightaway that could >>>> contribute to fixing this, if it indeed needs fixing? >>>> >>>> -Mike >>>> _______________________________________________ >>>> moby-l mailing list >>>> moby-l at lists.open-bio.org >>>> http://lists.open-bio.org/mailman/listinfo/moby-l >>> >>> >>> >>> -- >>> -- >>> Mark Wilkinson >>> Assistant Professor, Dept. Medical Genetics >>> University of British Columbia >>> PI Bioinformatics >>> iCAPTURE Centre, St. Paul's Hospital >>> Tel: 604 682 2344 x62129 >>> Fax: 604 806 9274 >>> >>> ***CONFIDENTIALITY NOTICE*** >>> This electronic message is intended only for the use of the >>> addressee and >>> may contain information that is privileged and confidential. Any >>> dissemination, distribution or copying of this communication by >>> unauthorized individuals is strictly prohibited. If you have >>> received this >>> communication in error, please notify the sender immediately by >>> reply >>> e-mail and delete the original and all copies from your system. >>> >>> _______________________________________________ >>> moby-l mailing list >>> moby-l at lists.open-bio.org >>> http://lists.open-bio.org/mailman/listinfo/moby-l >>> >> >> ------------------------------------------------------------- >> Wageningen University and Research centre (WUR) >> Laboratory of Bioinformatics >> Transitorium (building 312) room 1034 >> >> Dreijenlaan 3 >> 6703 HA Wageningen >> The Netherlands >> >> phone: 0317-483 060 >> fax: 0317-483 584 >> mobile: 06-143 66 783 >> mail: pieter.neerincx at wur.nl >> skype: pieter.online >> ------------------------------------------------------------ >> >> _______________________________________________ >> moby-l mailing list >> moby-l at lists.open-bio.org >> http://lists.open-bio.org/mailman/listinfo/moby-l > > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l From edward.kawas at gmail.com Thu Aug 23 11:12:14 2007 From: edward.kawas at gmail.com (Edward Kawas) Date: Thu, 23 Aug 2007 08:12:14 -0700 Subject: [MOBY-l] Perl MoSeS on CPAN Message-ID: <000f01c7e597$fcfd2760$6500a8c0@notebook> Hello Everyone, Following the suggestions of some of the others on the list, I have created and distributed a cpan release of Perl MoSeS. The distribution is called MOSES-MOBY and can be found at http://search.cpan.org/~ekawas/MOSES-MOBY-0.81/ (and most likely at many other mirror sites). The distribution is slightly different than the one that is in the cvs as the cpan version no longer depends on the BioMOBY JAVA command line clients and is entirely self-contained. All of the testing scripts that Martin created are used by the cpan release. The documentation for getting started is mainly contained in the module MOSES/MOBY.pm (again mainly from the Perl MoSeS documentation that Martin wrote). Most interested parties will not have to worry about the other modules. I am very interested in feedback (both to improve the service creation experience and to improve the documentation). Thanks a lot, Eddie From maliha.aziz at yahoo.com Fri Aug 24 15:37:09 2007 From: maliha.aziz at yahoo.com (maliha aziz) Date: Fri, 24 Aug 2007 12:37:09 -0700 (PDT) Subject: [MOBY-l] help in registering a new service Message-ID: <957039.64706.qm@web57404.mail.re1.yahoo.com> As suggested by Mark Wilkinson I am emailing on this list to get some input on this issue .... We are interested in registering a BIPASS service with BioMoby.We have some questions about registering new data types such as "cluster" and "variant". (BIPASS http://bip.umiacs.umd.edu:8080 is a alternative splice database server. It has been registered with NAR in 2007. /http://www.pubmedcentral.nih.gov/articlerender.fcgi?artid=1933140) The variables used are as follows ? Identifier (input) ? OrganismName (input) ? ClusterID (input and output) ? Variant ? TranscriptID ? Chromosome The four services that we are planning to deploy are as follows BIPSearchTranscriptsByTranscriptID ? takes transcript Id as input and generates cluster ids as output BIPSearchTranscriptsByAnnotation ? takes Annotation as input and generates cluster ids as output BIPSearchTranscriptsByAnyField ? takes either Annotation or transcript Id as input and generates cluster ids as output BIPGetClusterInfo ? takes cluster Id as input and generates the corresponding Variant, TranscriptID ,Chromosome as outputs. The only two things that I find to be new and generated only by BIPASS as they are relevant to BIPASS only ( I dont know how useful they are to the community as they can only be consumed by the BIPASS service next inline) are as follows Cluster - generated by BIPSearchTranscriptsByTranscriptID BIPSearchTranscriptsByAnnotation BIPSearchTranscriptsByAnyField This object needs to be of the following format Cluster ID ISA Object HAS string Variant - which tells us whether the particular cluster generated by the BIPASS tool contains an alternative splicing case This object needs to be of the following format Variant ISA Object HASA BOOLEAN type For registering both of these we would also have to register a new namespace Namespace : BIPASS So for the rest of the inputs and outputs what i think needs to be done is as follows \u003cbr\>\u003c/span\>INPUTS\u003c/span\>\u003cbr\>\u003cbr\>\n\n\n1. Identifier\u003cbr\>article name \u003d Identifier\u003cbr\>class \u003d Global_Keyword\u003cbr\>namespace \u003d Genbank etc (multiple namespaces can be selected... it depends on which repository are we including in BIPASS )\u003cbr\>\u003cbr\>2. OrganismName\u003cbr\>\n\n\narticle name \u003d OrganismName\u003cbr\>\nclass \u003d TaxonScientificName\u003cbr\>\nnamespace \u003d Genbank etc (multiple namespaces can be\nselected... it depends on which repository are we including in BIPASS )\u003cbr\>\n\u003cbr\>\u003cspan style\u003d\"font-weight:bold\"\>OUTPUTS\u003c/span\>\u003cbr style\u003d\"font-weight:bold\"\>\u003cbr\>1. ClusterID\u003cbr\>article name \u003d ClusterID\u003cbr\>\n\n\nclass \u003d Cluster\u003cbr\>\n\n\nnamespace \u003d BIPASS\u003cbr\>\n\n\n\u003cbr\>2. Variant\u003cbr\>article name \u003d Variant\u003cbr\>\n\n\n\nclass \u003d Variant\u003cbr\>\n\n\n\nnamespace \u003d BIPASS\u003cbr\>\u003cbr\> 3.TranscriptID \u003cbr\>article name \u003d TranscriptID \u003cbr\>\n\nclass \u003d object\u003cbr\>\n\nnamespace \u003d Genbank etc (multiple namespaces can be\nselected... it depends on which repository are we including in BIPASS )\u003cbr\>\n\n\u003cbr\> 4.Chromosome\u003cbr\>article name \u003d Chromosome\u003cbr\>\n\nclass \u003d GeneticElement\u003cbr\>\n\nnamespace \u003d BIPASS\u003cbr\>\u003cbr\>As\nfar as the issue about how would the user know which web service takes\nannotation as an input and which takes transcript idz we can name the\nservice in such a way that it becomes explicit that this webservice\ntakes annotations and this takes transcript ids and this third one take\ntranscripts or annotations.\n\u003cbr\>\u003cbr\>Hopefully if this line of thought is approved we can get the webservices registered before the end of this month\u003cbr\>\u003cbr\>regards\u003cbr\>",1] ); //--> INPUTS 1. Identifier article name = Identifier class = Global_Keyword namespace = Genbank etc (multiple namespaces can be selected... it depends on which repository are we including in BIPASS ) 2. OrganismName article name = OrganismName class = TaxonScientificName namespace = Genbank etc (multiple namespaces can be selected... it depends on which repository are we including in BIPASS ) OUTPUTS 1. ClusterID article name = ClusterID class = Cluster namespace = BIPASS 2. Variant article name = Variant class = Variant namespace = BIPASS 3.TranscriptID article name = TranscriptID class = object namespace = Genbank etc (multiple namespaces can be selected... it depends on which repository are we including in BIPASS ) 4.Chromosome article name = Chromosome class = GeneticElement namespace = BIPASS Your feedback would be highly appreciated Thanks Maliha Aziz --------------------------------- Pinpoint customers who are looking for what you sell. From goodb at interchange.ubc.ca Fri Aug 24 15:43:56 2007 From: goodb at interchange.ubc.ca (Benjamin Good) Date: Fri, 24 Aug 2007 12:43:56 -0700 Subject: [MOBY-l] open semi-semantic annotation tool Message-ID: <22D10789-748C-42CD-BA89-1DD7DA378188@interchange.ubc.ca> Hi all, I hope you might be interested in a little project that Eddie Kawas and I have been working on over the summer that is now basically functional. It (ED the Entity Describer) is a GreaseMonkey extension to the Connotea social bookmarking system. Very simply, it provides Connotea users with the opportunity to use terms from controlled vocabularies in combination with their own tags when they post bookmarks. It is designed to provide many of the benefits of controlled vocabularies (consistency, non-ambiguity, relations between terms) while maintaining all of the benefits of tagging (speed, flexibility, personalization). You can find out more about what ED does, how to install it, and how to use it on its wiki page: http://www.connotea.org/wiki/ EntityDescriber I'm very curious to hear what you think about it! best regards -Ben From edward.kawas at gmail.com Fri Aug 24 16:27:02 2007 From: edward.kawas at gmail.com (Edward Kawas) Date: Fri, 24 Aug 2007 13:27:02 -0700 Subject: [MOBY-l] open semi-semantic annotation tool In-Reply-To: <22D10789-748C-42CD-BA89-1DD7DA378188@interchange.ubc.ca> References: <22D10789-748C-42CD-BA89-1DD7DA378188@interchange.ubc.ca> Message-ID: <004201c7e68d$270f2670$6500a8c0@notebook> Just to clarify the link for the wiki page, it would be: http://www.connotea.org/wiki/EntityDescriber Eddie > -----Original Message----- > From: moby-l-bounces at lists.open-bio.org [mailto:moby-l-bounces at lists.open- > bio.org] On Behalf Of Benjamin Good > Sent: Friday, August 24, 2007 12:44 PM > To: Robert Stevens; Marco Roos; Scott Marshall; Joseph T. Tennis; mobyl; > Yeliz Yesilada; Sean Bechhofer; Timothy Chklovski > Subject: [MOBY-l] open semi-semantic annotation tool > > Hi all, > > I hope you might be interested in a little project that Eddie Kawas > and I have been working on over the summer that is now basically > functional. > > It (ED the Entity Describer) is a GreaseMonkey extension to the > Connotea social bookmarking system. Very simply, it provides > Connotea users with the opportunity to use terms from controlled > vocabularies in combination with their own tags when they post > bookmarks. It is designed to provide many of the benefits of > controlled vocabularies (consistency, non-ambiguity, relations > between terms) while maintaining all of the benefits of tagging > (speed, flexibility, personalization). > > You can find out more about what ED does, how to install it, and > how to use it on its wiki page: http://www.connotea.org/wiki/ > EntityDescriber > > I'm very curious to hear what you think about it! > > best regards > -Ben > > > > > _______________________________________________ > moby-l mailing list > moby-l at lists.open-bio.org > http://lists.open-bio.org/mailman/listinfo/moby-l