[ome-devel] importing multiples pixel sets ?

Tom Macura tm289 at cam.ac.uk
Thu Feb 2 11:34:32 GMT 2006


Hey Kris,

Subclassing STs is described, briefly, on the bottom of
http://www.openmicroscopy.org.uk/api/xml/STs/newSTs.html

Image is not a ST but a container (like datasets and projects). Subclassing
of the Pixels ST is absolutely vital to data-modeling the OME "Signature
Chain" analysis chain. This paradigm is used many times in the Signature
Chain. We've been using this for almost 18 months and support for this is
far from "transient".

Our support for inheritance is really an agreement on a convention. If a ST
has an SE of name "Parent" and type "reference" then the current ST is a
sub-class of the ST referenced by Parent. What does "being a sub-class of a
ST" gain you? Currently, it has major implications to the Analysis Engine's
MATLAB Handlers and some affects on the web-ui's thumbnails.

In your specialized renderer, you would be carrying on the tradition.
Here is some example XML of how your specialized type would look like:

<SemanticType Name="SpecialisedPixels" AppliesTo="I">
	<Description> We're so special	</Description>
	<Element
		Name="Parent"
		DBLocation="SPECIALISED_PIXELS.PARENT "
		DataType = "reference"
		RefersTo = "Pixels"/>
	<Element
		Name="MetaDataSpecial_1"
		DBLocation="SPECIALISED_PIXELS.META_DATA_1"
		DataType = "string"/>
	<Element
		Name="MetaDataSpecial_1"
		DBLocation="SPECIALISED_PIXELS.META_DATA_1"
		DataType = "string"/>
</SemanticType>

Your renderer will have some high-level logic that will say: 
if ST of the input is "SpecialisedPixels"
	we render in a special way
else if ST of the image is "OtherSpecialisedPixels"
	we render in another way
else if the ST has SE parent and it references Pixels
	we render the ST's referenced parent pixels in a "regular way"

Tom




More information about the ome-devel mailing list