FuGE | Building extensions to FuGE.Material (M3 version)
Extending FuGE Material and MaterialMeasurement
The FuGE Material diagram is displayed below:
Figure 1. The FuGE Material diagram.
Figures 1 displays the FuGE Material package. ProtocolApplication has an association to Material for the outputs of a process and an indirect association (inputMaterials) via the MaterialMeasurement class, which allows a measured source of material to be specified as input to the process. This means that the entire amount of the referenced Material does not have to be used in the process (modelled by ProtocolApplication), for instance to describe using only a proportion of a sample. It is expected that ProtocolApplication, MaterialMeasurement and Material will all be extended when building new formats to model the inputs and outputs to a process. Figure 2 displays an example of a ColumnSeparation in which the inputs are measured sources of a sample (with an association to the FuGE.GenericMaterial class) and the outputs are modelled by Fraction.
Figure 2. A hypothetical example of an extension of Material for column separations (technical note: the associations between subclasses extend from the associations between superclasses, not shown on the Figure).
The Material class has a self-association called Components. This association should also be extended for sub-classes of Material where one of the sub-classes is a sub-component of the other. Possible examples include a population and individuals or a 96 well plate and the individual wells, as shown on Figure 3.
Figure 3. A hypothetical example of two extension of Material for a 96 well plate and the individual wells. The association between the plate and the wells extends from the Material Components association.