[MOBY-dev] data by reference - a request for comments

Pieter Neerincx pieter.neerincx at gmail.com
Fri Jul 25 12:28:43 UTC 2008


Hi,

On 25•Jul•2008, at 1:35 PM, Martin Senger wrote:

>> What i dont understand is why do we need references for only  
>> primitives ? I
>> dont understand what a reference for a primitive is good for ?
>
>
> If you do not understand, it is my fault - I have tried to explain  
> it, but
> obviously  have not done it well.
>
> The discussion is now, however, a bit farer.Your first question is  
> probably
> obsolete - the forming RFC seems to be that the references will be  
> able to
> be anywhere (or not only on primitives).
>
> Your second question: We need to allow reference on primitives if we  
> want to
> reuse existing references on not-yet-moby objects (such as uniprot
> sequences).

Yes :) !

> The same with URLs of existing images - as in your use case. What  
> you are
> describing is exactly what we are going to do. You will have a  
> choice: a)
> You store somewhere an XML moby message (its part) and send a  
> reference to
> it, or b) you store somewhere only the image (not wrapped in a moby  
> message)
> and you send a moby message with a reference attached to a primitive.

Eh, but in the case of images they must be encoded to put then inside  
a String primitive. So, since the data the reference points to must be  
the same as in the case where you would not use a reference, it musty  
also be encoded. Hence, you can not replace the object with a  
reference to a plain (un-encoded) JPEG for example. Take for example  
the b64_encoded_jpeg Object. That would look like:

<b64_encoded_jpeg id='' namespace=''>
	<String id='' namespace='' articleName='content'>
		afr78e349tu9rghjerewptu59hgfirhegwug9uwguwujw9-
	</String>
</b64_encoded_jpeg>

If you want to replace this with a reference the actual data would  
still have to be a base64 encoded piece of text. So you can not make a  
reference to an image that exists as a plain JPEG, GIF, etc. on a web  
server. We don't have a datatype to send un-encoded binary stuff. You  
could create a new (un-encoded) JPEG object and use references, but  
than you are required to always send a reference as you can not send  
that BioMoby datatype un-encoded as part of the SOAP payload! This is  
again not optimal though as you would have different objects for  
encoded and un-encoded images limiting the discovery of potentially  
compatible services. I couldn't care less about whether it's encoded  
or not. I just want to send or receive an image and the optional  
encoding is just the side effect of a workaround. I don't see how we  
can easily solve that. Does anyone have suggestion how we should  
handle this?...

Cheers,

Pi

> Martin
>
> -- 
> Martin Senger
> email: martin.senger at gmail.com,m.senger at cgiar.org
> skype: martinsenger
> _______________________________________________
> MOBY-dev mailing list
> MOBY-dev at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/moby-dev

-------------------------------------------------------------
Wageningen University and Research centre (WUR)
Laboratory of Bioinformatics
Transitorium (building 312) room 1034

Dreijenlaan 3
6703 HA Wageningen
The Netherlands

phone:  +31 (0)317-483 060
mobile: +31 (0)6-143 66 783
e-mail: pieter.neerincx at gmail.com
skype:  pieter.online
------------------------------------------------------------





More information about the MOBY-dev mailing list