object MetaCharacteristics; object DimensionStowChars; object PartitionChars; object GeneralStowChars extends MetaCharacteristics components: StowAreaAbove:string and StowAreaBelow:string and PreStowPODS:string* and PreStowPOES:string* and CargoTypes:string* and CargoVCG:number and ClassNum:number and Frozen:boolean and BrokenStowFactor:number and UtilizationArea:number and UtilizationMTONS:number and AssistStowFilled:boolean and Description:string and CellCode:number; end; obj Barge; obj ConainerTier; obj Seashed; obj Ramp; obj Flat; object StowableArea extends MetaCharacteristics = (*components:*) StowableAreaId:string and gsc:GeneralStowChars and DimensionStowChars and WeatherDeck:boolean and Alternate:string and StowOrder:number and DeckStress:number and RORO:boolean and (* is the area roll-on roll-off *) LOLO:boolean and (* is the area lift-on lift-off *) PartitionChars* and (* areas can have numerous partitions (walls)*) type: Barge or ContainerTier or Seashed or Ramp or Flat and notes:string*(*;*); operation checkPreStow(sa:StowableArea)->(answer:boolean) pre: ; post: if (answer = true) then ((sa.gsc.Frozen = false)); end;