[ome-devel] Housekeeping..

Josiah Johnston siah at nih.gov
Fri Jul 23 20:45:55 BST 2004


The proposal outlined has been implemented. Also, the OME file  
generated by Imaris now imports successfully. See  
http://bugs.openmicroscopy.org.uk/show_bug.cgi?id=191 for more info.

-josiah

On Jul 21, 2004, at 2:57 PM, Josiah Johnston wrote:

>> Apropos OME format, I tried an ome file as generated by Imaris  
>> (4.0.5) and this
>> was a failure. Later in this message, the extract of error_log,  
>> regarding this
>> import operation.
>>
>> Any idea?  Bitplane? OME Team?
>
> Without seeing the file, I can't be sure, but I suspect the  
> ExperimenterRef tag under Image is absent (as the schema allows). The  
> back-end Image class requires an Experimenter field. The way we handle  
> this with other image formats is assume the image belongs to the user  
> that is importing it.
> If this is really the problem, my short answer is: It's our fault. We  
> [the OME team] need to solve it with a minor bit of code and adding a  
> rule to the schema to prevent data inconsistencies.
>
>
> The long answer (& proposal))
> ---------------------------------
>
> An obvious solution is to adopt the usual strategy for image in the  
> OME format that don't say who they belong to.
> A problem arises with Image in OME files that have qualified LSIDs.  
> (1) If such an image is imported into two separate OME installations  
> by two people, then the experimenter in the images will differ. This  
> introduces data inconsistencies: the two installations will return  
> contradictory objects for the same LSID.
> My proposed solution is to
> 	require an ExperimenterRef for Images with qualified LSIDs, and
> 	populate the Image's ExperimenterRef with the currently logged in  
> User for Images that lack an LSID and lack an ExperimenterRef
> This would be very easy to implement.
>
>
> The rejected solutions:
> ---------------------------------
>
> Make ExperimenterRef required in the schema.
> 	This disallows direct translation from an existing file that lacks an  
> Experimenter description to an OME file.
> Drop the Experimenter requirement in the back-end Image class
> 	The experimenter is a very important bit of information. If we did  
> drop this requirement, we could still reconstruct who imported the  
> image. However, the person who imports an Image could easily be  
> different from the person that took the image. It's excedingly useful  
> to guarantee a recording of who took the image (or minimally, knows  
> where it came from). One could claim the person who imports an image  
> should not be assumed to be the experimenter, but they most often will  
> be. *shrug* This solution has many more implications.
>
>
> Notes
> ---------------------------------
>
> (1) An LSID is a Globally Unique Identifier that can (in principle) be  
> resolved to an object by whoever issued it. Folks that want to write  
> OME files but don't want to bother with guaranteeing LSID resolution  
> will use typical xml ids instead.
>
>
> -josiah
>
>
>>
>> Regards, Claude
>>
>>
>> 04/07/21 15:54:10 serve.pl[3987]: OME::Tasks::OMEImport->importFile:  
>> imported
>> bla77_MLE.ome
>> 04/07/21 15:54:10 serve.pl[3987]:  
>> OME::ImportExport::HierarchyImport->new
>> called with parameters:
>>         session=>OME::Session=HASH(0x94f664c)
>>         semanticTypes=>
>>         semanticColumns=>
>>         _parser=>XML::LibXML=HASH(0x918ef8c)
>> 04/07/21 15:54:10 serve.pl[3987]:  
>> OME::ImportExport::HierarchyImport->new
>> returning successfully
>> 04/07/21 15:54:10 serve.pl[3987]:
>> OME::ImportExport::HierarchyImport->processDOM: Processing Projects
>> 04/07/21 15:54:10 serve.pl[3987]:
>> OME::ImportExport::HierarchyImport->processDOM: Processing Datasets
>> 04/07/21 15:54:10 serve.pl[3987]:
>> OME::ImportExport::HierarchyImport->processDOM: Processing Images
>> 04/07/21 15:54:10 serve.pl[3987]:
>> OME::ImportExport::HierarchyImport->importObject: Importing node  
>> Image type 1
>> [Wed Jul 21 15:54:10 2004] -e: DBD::Pg::st execute failed: ERROR:   
>> ExecInsert:
>> Fail to add null value in not null attribute experimenter_id at /usr
>> /lib/perl5/site_perl/5.8.0/OME/DBObject.pm line 2329.
>> 04/07/21 15:54:10 serve.pl[3987]: Error DBD::Pg::st execute failed:  
>> ERROR:
>>  ExecInsert: Fail to add null value in not null attribute  
>> experimenter_i
>> d at /usr/lib/perl5/site_perl/5.8.0/OME/DBObject.pm line 2329.
>>          
>> OME::Factory::newObject('OME::Factory=HASH(0x90f2c2c)','OME:: 
>> Image','HASH(0x8a29c24)')
>> called at /usr/lib/perl5/site_perl/5.8.0/OME/ImportE
>> xport/HierarchyImport.pm line 442
>> [SNIP]
>
> _______________________________________________
> ome-devel mailing list
> ome-devel at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>



More information about the ome-devel mailing list