220 likes | 262 Views
Understand the base and application models in ASAM ODS for storing test and measurement data efficiently. Learn about constructs, entities, attributes, and relationships. Practical examples provided for clarity.
E N D
Data Modelling in ASAM ODS Presentation by Helmut J. Helpenstein, June 2005
y x Technical data Application A Application B Meta information ASAM ODS supports a particular way of storing data
Goals of ODS way • Combination of data and meta data • Meta data according to a Base Model • The Base Model • defines common attributes and relationships for all test and measurement data • defines rules and methods how to derive customized (application specific) data models from the ASAM ODS Base Model
Base Model and Application Model applicationmodel basemodel derivation
Application Model • It has several tasks: • support the application • express any wanted details in a recognizable way • enable clients to understand semantics For each purpose the application model should use those constructs that are provided in the base model for that purpose. Base model influences application model. Application model influences data.
Application Model and Data applicationmodel instantiation data
Constructs in the Base Model • Hierarchical structurestests - measurements, equipments - devices, … • Valuesapplication attributes, instance attributes, parameters • Measurement datasubmatrices, local columns, value sequence • References • pointers to other elements • Groupsunits, quantities, users
Test SET children INV parent Test ' SET children INV parent Test " SET measurements INV test Measurement . . . . . Hierarchical Structures • Parent entity has a set of references in a „children“ attribute (main browse direction) • Child entity has single reference in a „parent“ attribute (inverse direction)
Add a value to one or more instances Application attribute: - is attached to ALL instances - easily recognizable by application - ideal for generic clientInstance attribute: - is attached to 1 instance - recognizable by application - acceptable for generic clientParameter: - has reference to 1 instance of specific type - requires special application model - not for use in generic clients Entity A Attribute a Instance A1 InstAtt a1 value Entity A Instance A1 Instance P1 Parameter P value
Measurement data Entity A Attribute a Application attribute: - recognizable by special application - single values Instance attribute or Parameter: - extremely special Local columns: - ODS way => easily recognizable by applications and generic clients - sequences of values - concept of submatrices to handle all measurement cases - dedicated entities Instance A1 InstAtt a1 value Entity A Instance A1 Instance P1 Parameter P value AoMeasurement AoMeasurementQuantity AoSubmatrix AoLocalColumn
Submatrices and value matrix Submatrix sma Time MeaQ_A 0.1 xxx1 0.2 xxx2 0.3 xxx3 0.4 xxx4 Value matrix Time MeaQ_A MeaQ_B 0.1 xxx1 0.2 xxx2 yyy1 0.24 yyy2 0.28 yyy3 0.3 xxx3 0.32 yyy4 0.36 yyy5 0.4 xxx4 yyy6 Submatrix smb Time MeaQ_B 0.2 yyy1 0.24 yyy2 0.28 yyy3 0.32 yyy4 0.36 yyy5 0.4 yyy6
Base model for measurement values BASEELEM AoMeasurement - name - id - measurement_quantities - submatrices BASEELEM AoMeasurementQuantity - name - id - local_columns BAESELEM AoSubmatrix - name - id - number_of_rows - local_columns BASEELEM AoLocalColumn - name - id - sequence_representation - generation_parameters - values - external_component seq_rep values gen_pars ext_comp explicit x implicit_linear x raw_linear x x external_comp x raw_lin_ext x x
References / Relations • In a model, each entity is determined by ist attributes. • In ASAM ODS application models, entities are called Application Elements, their attributes can contain values (numerical or text) or relations (references to other objects). • Example: In a directory there are some files. INSTELEM directory - "c:\meyer\abc" - 177 - 29,56,115 INSTELEM file - "house.doc" - 29 - 177 INSTELEM file - "car.txt" - 56 - 177 INSTELEM file - "list.xls" - 115 - 177 c:\meyer\abc (177) APPLELEM directory - name (string) - id (integer) - files (set of file) APPLELEM file - name (string) - id (integer) - home (directory) house.doc (29) car.txt (56) list.xls (115)
Groups • An item belongs to one or more groups • A group has one or more items • This is a many-to-many relationship (n:m) BASEELEM AoUnit name (string) id (integer) groups (SET of AoUnitGroup) phys_dim (AoPhysicalDimension) factor (double) offset (double) BASEELEM AoUnitGroup name (string) id (integer) units (SET of AoUnit) AoUnit AoUnitGroup
Example of application model TestBed (AoTest) | | Test (AoSubTest) | | | | | -----------------------------------+ | +--------------------+ | | | Engine (AoUnitUnderTest) Measurement (AoMeasurement) User (AoUser) | | test engineer | | User (AoUser) MeaQuantity (AoMeasurementQuantity) design engineer
Filtered data TestBed Location="Aachen" | | Test Type="class C" | || | |-----------------+ | +-----+ | | | | Measurement | | Begin > 200502 | | | | | | | | Engine Fuel="Diesel" | | | NumberOfCylinders=5 MeaQuantity | | | | test engineer | Description="Test Engineer" | Division="Block D" | (Test.Type="class C") | | | Description="Design Engineer" design engineer Division="Block D"
Select Measurements in DIAdem • Precondition: Modelling according to ODS way • Size of example data: 45 MBmany TestBeds, each with many Tests • Measurements can be imported with their MeasurementQuantities • We want to find data in a limited set, described by filtering with conditions - enabled by modelling in ODS way • MeasurementQuantities can be displayed • Screenshots display the filtering process