### Hamara Spaces - SankhyaTechnologies - TechnicalArticles

ActivityMonitoringAnalysis ApplicationChain CInputOutputLibrary DistributedFaultTolerance DynamicProgramming EclipseUMLConcepts GridComputing LinuxResources ModelDrivenTransformation ObjectFileFormat ProcessDocumentation ProductDataManagement SoftwareDebugging_1 SoftwareDebugging_2 WhatIsCORBA an-sdk-for-your-processor.pdf BigDataNormalization.pdf DesignConsolidation.pdf idl_and_wsdl_comparison.pdf |
## Transformation Patterns## Glossary- Model
- Grammar
- Value
- A sequence of tokens conforming to a Model
- Document
- A value that conforms to a top level model element
## TransformationFor the purpose of this presentation, A transformation t is a function that maps a value v1 conforming to a model m1, to a corresponding value v2 conforming to a model m2. To summarize: v1 [m1] -> t -> v2 [m2] ## MorphingMorphing refers to the application of a sequence T of transformations t1 .. tn, sequentially on input document di, conforming to a model mi to produce a final output document do, conforming to a model mo. To summarize: di [mi] -> T -> do [mo] ## Transformational PatternsA transformation may add or remove information (Model Transformation) or replace or reorder the available information in a document (Value Transformation). - Model Transformation
- Transformation specified in terms of "model"
- Value Transformation
- Transformation specified in terms of "value"
## Model Transformations- Simple Model Transformation
- An input model element mi is mapped to an output model element mo
- Refinement
- Single input model elements map to multiple output model element
- Abstraction
- Multiple input model elements map to a single output model element
- Complex Model Transformation
- A combination of refinemant and abstraction in a single transformation.
## Value Transformations- Simple Transformation
- Replaces a value vi in the input with a value vo in the output
- Normalizing Transformation
- Replaces values v1 ... vn occurring at different locations in the input document with a single value v, and optionally references r1 .. rn to this value in the output
- Copy Transformation
- Replaces a value v, and optionally, possibly implicit references r1 .. rn to the value v1 in the input with values v1 .. vn occurring at different locations in the "output document".
- Complex Value Transformation
## Designing a Good Morphing SequenceIn general, a good transformation tool will support specification of transformations either in terms of model or value. A good morphing sequence will use what is best for each transformation step, an appropriate model or value transformation. In general, when information is added or removed, a model transformation should be considered. A value transformation is appropriate in all other cases. ## The Transformation Step- Check that the input document conforms to the input model mi
- Perform semantic checks, to the extent necessary to complete the transformation
- Apply the transformation
- [Optionally] check that the output document conforms to the output model mo
## The SANKHYA Translation Framework (STF)STF is a state of the art dynamic model driven transformation tool that can be used to implement both transformations and morphs. |