ENTITY si_unit SUBTYPE OF (named_unit); prefix : OPTIONAL si_prefix; name : si_unit_name; DERIVE SELF\named_unit.dimensions : dimensional_exponents := dimensions_for_si_unit(name); WHERE wr1: NOT(('MEASURE_SCHEMA.MASS_UNIT' IN TYPEOF(SELF)) AND (SIZEOF(USEDIN(SELF,'MEASURE_SCHEMA.DERIVED_UNIT_ELEMENT.UNIT')) > 0)) OR (prefix = si_prefix.kilo); END_ENTITY; -- si_unit |
Entity data types and their attributesnamed_unitdimensions: dimensional_exponents; si_unit (OPT) prefix: si_prefix; name: si_unit_name; (RT) (DER) dimensions: dimensional_exponents; |
Global rules for this entity data type- |
public interface ESi_unit extends ENamed_unitprefix (explicit attribute)boolean testPrefix(ESi_unit type)int getPrefix(ESi_unit type) void setPrefix(ESi_unit type, int value) void unsetPrefix(ESi_unit type) name (explicit attribute)boolean testName(ESi_unit type)int getName(ESi_unit type) void setName(ESi_unit type, int value) void unsetName(ESi_unit type) |
public class CSi_unit implements ESi_unitstatic EAttribute attributePrefix(ESi_unit type)static EAttribute attributeName(ESi_unit type) static EAttribute attributeDimensions(ESi_unit type) static int usedinDimensions(ESi_unit type, EDimensional_exponents instance, ASdaiModel domain, ASi_unit result) |
public class ASi_unit extends AEntitypublic ESi_unit getByIndex(int index)public ESi_unit getCurrentMember(SdaiIterator it) |