International Conference on Concurrent Enterprising TU Dresden, Lst. für Computeranwendung im...
-
Upload
adrian-lamb -
Category
Documents
-
view
215 -
download
2
Transcript of International Conference on Concurrent Enterprising TU Dresden, Lst. für Computeranwendung im...
International Conference on Concurrent Enterprising
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
A Generic Approach to the Mapping Problems in Cooperative Design
U. Wagner, Dr. P. Katranuschkov, Prof. Dr. R. J. SchererTU Dresden, Germany
Presentation at ICE 2001Bremen, Germany, June 2001
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Overview
The Problem DomainThe Problem Domain
The Model Mapping ApproachThe Model Mapping Approach
The Mapping SystemThe Mapping System
• Mapping languageMapping language
• Mapping language parserMapping language parser
• Implementation of the mapping engineImplementation of the mapping engine
• ExampleExample
ConclusionConclusion
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
The Problem Domain
There are several differences b/n Building Construction and other industries :• Lower profits, lower IT investment• Lack of large key organisations as technology drivers• Complex supply and communication chains
Therefore:Concurrent engineering & cooperative design have to deal withcomplex model transformations in a distributed non homogeneous model world
Such transformations may be needed e.g. for:• Data exchange between major CAD-Applications• Generation of views (presentation, documentation, pre- and post-processing)• Coordinated change management• Extracting of management information for control and monitoring etc.
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
The Problem Domain
Architect
StructuralEngineer
HVACEngineer
ControlsEngineer
Constr.Manager
FacilitiesManager
BuildingOwner
CivilEngineer
SHAREDPROJECTMODEL
Architect
StructuralEngineer
HVACEngineer
ControlsEngineer
Constr.Manager
FacilitiesManager
BuildingOwner
CivilEngineer
Not fully Not fully sufficientsufficient
The IAI Vision of Interoperability
Not fully sufficient are also all known database integration approachesNot fully sufficient are also all known database integration approachesNot fully sufficient are also all known database integration approachesNot fully sufficient are also all known database integration approaches
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
The Model Mapping Approach
Background:Background:
• Underlying product modelling framework (IFC)
• Non fully harmonised domain / application models
• Distributed, a-priori non coordinated data
• Distributed C/S architecture with underlying shared data repository
Note: Note:
Mapping is an alternative to full harmonisation/integration methodsMapping is an alternative to full harmonisation/integration methods
But: Model mapping supports and does not contradict to integration!But: Model mapping supports and does not contradict to integration!
Principal approach:Principal approach:
Consolidation of the project data Consolidation of the project data only at discrete co-ordination points only at discrete co-ordination points
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
The Model Mapping Approach
T1T0
Struct. ModelS 0map(A 0)
MAPPING
S 1map(A 1)
Arch. Model A 0
Matching
Struct. ModelS 1merged
Merging
models are diff.
Struct. ModelS 1local
Arch. ModelA 1
design changes
design changes
models are semantically equivalent
MAPPING
coordination point
T0 T1 TN
process phase
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
The Mapping System
A mapping language - CSMLA mapping language - CSML
A generic parser - MaLaPaGA generic parser - MaLaPaG
Explicit public operations enabling Explicit public operations enabling
distributed C/S realisationsdistributed C/S realisations
A set of implementation methods A set of implementation methods
comprising the interoperability enginecomprising the interoperability engine
(server-side object-oriented methods (server-side object-oriented methods
based on set theory)based on set theory)
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Characteristics of CSML
Declarative languageDeclarative language
Mapping of two (full or partial) modelsMapping of two (full or partial) models
Context-free grammarContext-free grammar
Recursively specified Recursively specified the rules are directly realizable the rules are directly realizable
Predefined mapping patterns for typical problemsPredefined mapping patterns for typical problems
on class, instance and attribute levelon class, instance and attribute level
Better suited to real-time distributed systems than EXPRESS-XBetter suited to real-time distributed systems than EXPRESS-X
Less suited for model evolution and model migrationLess suited for model evolution and model migration
Still under development …Still under development …
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
The Generic Parser (MaLaPaG)
Basically, instead of developing parsing rules for all language Basically, instead of developing parsing rules for all language constructs, the language itself is used as input in the parser constructs, the language itself is used as input in the parser
More difficult to realize than a static parserMore difficult to realize than a static parser But: applicable for a class of similar languagesBut: applicable for a class of similar languages Easy to modify by changes in the language specificationEasy to modify by changes in the language specification Static vs. Generic Parser:Static vs. Generic Parser:
Static Parser:Static Parser:
• statically integrated rulesstatically integrated rules• designed for a specific designed for a specific
languagelanguage• low development effort low development effort • high maintenance efforthigh maintenance effort
Generic Parser:
• rules are externally stored• suitable for different
languages• high development effort• low maintenance effort
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Hashing the Rule Map
MAP
'('
FROM
mapping_spec_set
')'
mapping_spec_decl
[ PARTIALLY ]
PARTIALLY
optional
{ schema }+
schema
min. 1 mal
{ schema }+
min. 1 mal
schema
MAP
'('
FROM
mapping_spec_set
')'
mapping_spec_decl
[ PARTIALLY ]
PARTIALLY
optional
{ schema }+
schema
min. 1 mal
{ schema }+
min. 1 mal
schema
'PARTIALLY'
PARTIALLY
'MAP'
MAP
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Implementation of the Mapping Engine
Input data sets:Input data sets:• The source and target schemas in EXPRESS• The source model data• The CSML specification providing the mapping rules for the
translation of the source model data into the target model data Processing:Processing:
• Parsing of the EXPRESS schemas• Parsing of the CSML specification• Recursive generation of the source & target data sets• Compressing the target data by eliminating redundancies
Output data set:Output data set:• The target model data e.g. in the form of a STEP exchange file
or as a XML document (see ifcXML)
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Example
Source Schema: Source Schema: Target Schema:Target Schema:
SCHEMA SCHEMA shared_modelshared_model; ;
ENTITY circle; ENTITY circle;
centre: point; centre: point;
radius: REAL; radius: REAL;
END_ENTITY; END_ENTITY;
ENTITY Point; ENTITY Point;
x, y, z: REAL; x, y, z: REAL;
END_ENTITY; END_ENTITY;
END_SCHEMA;END_SCHEMA;
SCHEMA SCHEMA local_modellocal_model;;
ENTITY circ; ENTITY circ;
centre : point;centre : point;
diameter : REAL;diameter : REAL;
END_ENTITY;END_ENTITY;
ENTITY Point;ENTITY Point;
x_coord : REAL; x_coord : REAL;
y_coord : REAL; y_coord : REAL;
z_coord : REAL; z_coord : REAL;
END_ENTITY; END_ENTITY;
END_SCHEMA;END_SCHEMA;
((MAP MAP local_modellocal_model FROM FROM shared_modelshared_model CLASSESCLASSES ( MAP CLASS circ FROM circle( MAP CLASS circ FROM circle ATTRIBUTESATTRIBUTES (SAME centre)(SAME centre) (MAKE diameter FROM radius APPLY (MAKE diameter FROM radius APPLY (LAMBDA (X) (* X 2.0))))(LAMBDA (X) (* X 2.0)))) DEPENDENT-CLASSESDEPENDENT-CLASSES (MAP CLASS point FROM point(MAP CLASS point FROM point ATTRIBUTESATTRIBUTES (SAME x_coord y_coord z_coord AS x y z)(SAME x_coord y_coord z_coord AS x y z) )) ))
((MAP MAP local_modellocal_model FROM FROM shared_modelshared_model CLASSESCLASSES ( MAP CLASS circ FROM circle( MAP CLASS circ FROM circle ATTRIBUTESATTRIBUTES (SAME centre)(SAME centre) (MAKE diameter FROM radius APPLY (MAKE diameter FROM radius APPLY (LAMBDA (X) (* X 2.0))))(LAMBDA (X) (* X 2.0)))) DEPENDENT-CLASSESDEPENDENT-CLASSES (MAP CLASS point FROM point(MAP CLASS point FROM point ATTRIBUTESATTRIBUTES (SAME x_coord y_coord z_coord AS x y z)(SAME x_coord y_coord z_coord AS x y z) )) ))
Mapping Specification:Mapping Specification:
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Parser Tree for the Example
MAP : local_modelFROM : shared_model
CLASSES
MAKE : diameterFROM : radiusAPPLY : (LAMBDA (X) (* X 2.0))
MAP CLASS: circFROM : circle
MAP CLASS: pointFROM : point
SAME: centreSAME : x_coord y_coord z_coordAS x y z
ATTRIBUTES
DEPENDENT-CLASSES
ATTRIBUTES
Schema mapping
Class mapping
Leaf nodesAttr. mappings
TU Dresden, Lst. für Computeranwendung im Bauwesen C Wagner, Katranuschkov, Scherer 27-June-2001
Conclusions
The modular mapping system provides The modular mapping system provides greatest greatest
freedom for independent, parallel design workfreedom for independent, parallel design work
The integration of a generic parser provides a high level The integration of a generic parser provides a high level
of flexibility enabling easy re-adjustment of the of flexibility enabling easy re-adjustment of the
environmentenvironment
As a whole, the presented approach fulfils major As a whole, the presented approach fulfils major
interoperability requirements of a concurrent interoperability requirements of a concurrent
engineering environment in building designengineering environment in building design