blob: 6f0afc82e8fa60729ff4d4864da8c3ae3cb061b7 [file] [log] [blame]
<!-- This file was created using the HTML documentation generator. -->
<!-- Creation date: Mon Apr 05 13:15:06 BST 2021-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Metamodel Documentation (platform:/resource/org.eclipse.efbt.cocalimo.dtm.model.core/model/transformation.ecore)</title>
<script type="text/javascript">
//<![CDATA[
// TOC script based on code taken from http://www.quirksmode.org/dom/toc.html
function makeTOC() {
var toc = document.createElement('div')
toc.id = "toc";
toc.innerHTML = "Table of Contents"
document.body.appendChild(toc);
var innertocDiv = createTOC()
toc.appendChild(innertocDiv);
}
function createTOC() {
var y = document.createElement('div');
y.id = 'innertoc';
//var a = y.appendChild(document.createElement('span'));
//a.onclick = showhideTOC;
//a.id = 'contentheader';
//a.innerHTML = 'Show Table of Contents';
var z = y.appendChild(document.createElement('div'));
//z.onclick = showhideTOC;
var toBeTOCced = getElementsByTagNames('h1,h2,h3');
if (toBeTOCced.length < 2) return false;
var hCount = 0;
var hhCount = 0;
var hhhCount = 0;
for (var i=0;i<toBeTOCced.length;i++) {
var tmp = document.createElement('a');
tmp.className = 'page';
var text;
var textPre;
if (toBeTOCced[i].nodeName == 'h2'){
tmp.className += ' indent';
textPre = hCount + "."+ ++hhCount + ". ";
}
else if (toBeTOCced[i].nodeName == 'h3'){
tmp.className += ' extraindent';
textPre = hCount + "."+ hhCount + "."+ ++hhhCount +". ";
}
else {
textPre = ++hCount + ". ";
hhCount = 0;
hhhCount = 0;
}
text = textPre + toBeTOCced[i].textContent;
toBeTOCced[i].innerHTML = textPre + toBeTOCced[i].innerHTML;
tmp.innerHTML = text;
z.appendChild(tmp);
var headerId = toBeTOCced[i].id || 'link' + i;
tmp.href = '#' + headerId;
toBeTOCced[i].id = headerId;
}
return y;
}
function getElementsByTagNames(list,obj) {
if (!obj) var obj = document;
var tagNames = list.split(',');
var resultArray = new Array();
for (var i=0;i<tagNames.length;i++) {
var tags = obj.getElementsByTagName(tagNames[i]);
for (var j=0;j<tags.length;j++) {
resultArray.push(tags[j]);
}
}
var testNode = resultArray[0];
if (!testNode) return [];
if (testNode.sourceIndex) {
resultArray.sort(function (a,b) {
return a.sourceIndex - b.sourceIndex;
});
}
else if (testNode.compareDocumentPosition) {
resultArray.sort(function (a,b) {
return 3 - (a.compareDocumentPosition(b) & 6);
});
}
return resultArray;
}
//]]>
</script>
<link rel="stylesheet" type="text/css" href="https://raw.github.com/necolas/normalize.css/master/normalize.css" />
<style>
#toc {
position: fixed;
right: 0;
top: 0;
background-color:#eee;
overflow: scroll;
border: 1px dashed;
}
#toc #innertoc {
display: none;
height: 500px;
} /* Hide the full TOC by default */
#toc:hover #innertoc{
display: block; /* Show it on hover */
}
td {
border: 1px solid;
}
.page{
display:table-row;
}
.indent {
text-indent:12pt;
}
.extraindent {
text-indent:14pt;
}
</style>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body onload="makeTOC();">
<h1 id="transformation"><a href="#transformation"><span class="packageName">transformation</span> package</a></h1>
<p>This package describes DataSetTransformations used to derive DerivedCubes, and the grouping of these DataSetTransformations into Schemes and Modules.</p>
<div class="">EPackage properties:</div>
<div class="keyValue"><span class="label">Namespace Prefix: </span><span class="teletype">transformation</span></div>
<div class="keyValue"><span class="label">Namespace URI: </span><span class="teletype">http://www.eclipse.org/efbt/transformation</span></div>
<h2 id="transformationDataSetTransformation"><a href="#transformationDataSetTransformation"><a href="#transformationDataSetTransformation">DataSetTransformation</a></a></h2>
<p>A DataSetTransformations is used to derive DerivedCubes.
The DataSetTransformation links the DerivedCube to the logic which is used to derive the cubes structure from the structure of its source cubes, and to derive its data from populated source cubes.
Note that the DataSetTransformations has many subsclasses, currently they represent structures from the TraceableReportingLanguage (dtm), and soon these will be replaced by subclasses which represent structures from VTL.</p>
<table>
<tr>
<th colspan="3"><div class="tableHeader">Attributes</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationDataSetTransformation.name" class="teletype">name</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype">EString</span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Identifier</div>
</td> <td><p>The name of this DataSetTransformation</p>
</td>
</tr></table>
<a href="#transformation.DataSetTransformation.attr"></a>
<table>
<tr>
<th colspan="3"><div class="tableHeader">References</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationDataSetTransformation.cube" class="teletype">cube</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#cubesDerivedCube">DerivedCube</a></span></div>
<div class="label">Cardinality: [0..1]</div>
</td>
<td> <p>The DerivedCube associated with this DataSetTransformation</p>
</td>
</tr></table>
<a href="#transformation.DataSetTransformation.ref"></a>
<h2 id="transformationRelease"><a href="#transformationRelease"><a href="#transformationRelease">Release</a></a></h2>
<p>a VersionedComponentSet which represents a final release.</p>
<h4><b>Supertype:</b><a href="#transformationVersionedComponentsSet">VersionedComponentsSet</a></h4><table>
<tr>
<th colspan="3"><div class="tableHeader">Attributes</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationRelease.version" class="teletype">version</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype">EString</span></div>
<div class="label">Cardinality: [0..1]</div>
</td> <td><p>The version number associated with the release.</p>
</td>
</tr></table>
<a href="#transformation.Release.attr"></a>
<h2 id="transformationVersionedComponentsSet"><a href="#transformationVersionedComponentsSet"><a href="#transformationVersionedComponentsSet">VersionedComponentsSet</a></a></h2>
<p>VersionedComponentsSet contains all the information required to translate a FunctionalModule and its dependent FunctionalModules into an AttributeLineageModel
It is this component set that contains the cub scehma structures ,and the actual DataSetTransformations.</p>
<table>
<tr>
<th colspan="3"><div class="tableHeader">Attributes</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationVersionedComponentsSet.license" class="teletype">license</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype">EString</span></div>
<div class="label">Cardinality: [0..1]</div>
</td> <td><p>The license under which this VersionedComponentSet is distributed</p>
</td>
</tr><tr> <td><div id="transformationVersionedComponentsSet.name" class="teletype">name</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype">EString</span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Identifier</div>
</td> <td><p>The name of the VersionedComponentSet</p>
</td>
</tr></table>
<a href="#transformation.VersionedComponentsSet.attr"></a>
<table>
<tr>
<th colspan="3"><div class="tableHeader">References</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationVersionedComponentsSet.cubeSchemaModules" class="teletype">cubeSchemaModules</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#transformationVersionedCubeSchemaModule">VersionedCubeSchemaModule</a></span></div>
<div class="label">Cardinality: [0..*]</div>
</td>
<td> <p>The set of VersionedCubeSchemaModules. Note that VersionedCubeSchemaModules state which ReadDataFunctionalModule they are associated with in the functionalModule reference.</p>
</td>
</tr><tr> <td><div id="transformationVersionedComponentsSet.datasetTransformationModules" class="teletype">datasetTransformationModules</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#dtmsqlviewsVersionedSQLViewsModule">VersionedSQLViewsModule</a></span></div>
<div class="label">Cardinality: [0..*]</div>
</td>
<td> <p>The set of DataSetTransformationModules, note that each DataSetTransformationModule states which DataSetTransformationFunctionalModule they are associated with in the functionalModule reference.</p>
</td>
</tr><tr> <td><div id="transformationVersionedComponentsSet.reportCellViewModules" class="teletype">reportCellViewModules</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#dtmreportcellviewsReportCellViewModule">ReportCellViewModule</a></span></div>
<div class="label">Cardinality: [0..*]</div>
</td>
<td> <p>The set of ReportCellViewModules, note that each ReportCellViewModule states which ReportCellCreationFunctionalModule they are associated with in the functionalModule reference.</p>
</td>
</tr></table>
<a href="#transformation.VersionedComponentsSet.ref"></a>
<h2 id="transformationVersionedCubeSchemaModule"><a href="#transformationVersionedCubeSchemaModule"><a href="#transformationVersionedCubeSchemaModule">VersionedCubeSchemaModule</a></a></h2>
<p>A module of VersionedCubeSchemas</p>
<h4><b>Supertype:</b><a href="#modulemanagementModule">Module</a></h4><table>
<tr>
<th colspan="3"><div class="tableHeader">References</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationVersionedCubeSchemaModule.schemas" class="teletype">schemas</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#cubeschemaCubeSchema">CubeSchema</a></span></div>
<div class="label">Cardinality: [0..*]</div>
<div class="label">Containment</div>
</td>
<td> <p>The schemas in the module</p>
</td>
</tr></table>
<a href="#transformation.VersionedCubeSchemaModule.ref"></a>
<h2 id="transformationVersionedFunctionalModuleLogic"><a href="#transformationVersionedFunctionalModuleLogic"><a href="#transformationVersionedFunctionalModuleLogic">VersionedFunctionalModuleLogic</a></a></h2>
<p>A Module containing a set of DataSetTransformations </p>
<h4><b>Supertype:</b><a href="#modulemanagementModule">Module</a></h4><h2 id="transformationdtmExecutableLogic"><a href="#transformationdtmExecutableLogic"><a href="#transformationdtmExecutableLogic">dtmExecutableLogic</a></a></h2>
<table>
<tr>
<th colspan="3"><div class="tableHeader">Attributes</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationdtmExecutableLogic.name" class="teletype">name</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype">EString</span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Identifier</div>
</td> <td></td>
</tr></table>
<a href="#transformation.dtmExecutableLogic.attr"></a>
<table>
<tr>
<th colspan="3"><div class="tableHeader">References</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationdtmExecutableLogic.cubeSchemaModules" class="teletype">cubeSchemaModules</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#transformationVersionedCubeSchemaModule">VersionedCubeSchemaModule</a></span></div>
<div class="label">Cardinality: [0..*]</div>
<div class="label">Containment</div>
</td>
<td> <p>The set of VersionedCubeSchemaModules. Note that VersionedCubeSchemaModules state which ReadDataFunctionalModule they are associated with in the functionalModule reference.</p>
</td>
</tr><tr> <td><div id="transformationdtmExecutableLogic.cubesHierarchyModule" class="teletype">cubesHierarchyModule</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#cubesFreeBIRDToolsCubeHierarchyRelationshipModule">FreeBIRDToolsCubeHierarchyRelationshipModule</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmExecutableLogic.cubesModule" class="teletype">cubesModule</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#cubesFreeBirdToolsCubeModule">FreeBirdToolsCubeModule</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmExecutableLogic.datasetTransformationModules" class="teletype">datasetTransformationModules</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#dtmsqlviewsVersionedSQLViewsModule">VersionedSQLViewsModule</a></span></div>
<div class="label">Cardinality: [0..*]</div>
<div class="label">Containment</div>
</td>
<td> <p>The set of DataSetTransformationModules, note that each DataSetTransformationModule states which DataSetTransformationFunctionalModule they are associated with in the functionalModule reference.</p>
</td>
</tr><tr> <td><div id="transformationdtmExecutableLogic.functionSpecModule" class="teletype">functionSpecModule</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#functionsFunctionSpecModule">FunctionSpecModule</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmExecutableLogic.reportCellViewModules" class="teletype">reportCellViewModules</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#dtmreportcellviewsReportCellViewModule">ReportCellViewModule</a></span></div>
<div class="label">Cardinality: [0..*]</div>
<div class="label">Containment</div>
</td>
<td> <p>The set of ReportCellViewModules, note that each ReportCellViewModule states which ReportCellCreationFunctionalModule they are associated with in the functionalModule reference.</p>
</td>
</tr></table>
<a href="#transformation.dtmExecutableLogic.ref"></a>
<h2 id="transformationdtmProgram"><a href="#transformationdtmProgram"><a href="#transformationdtmProgram">dtmProgram</a></a></h2>
<table>
<tr>
<th colspan="3"><div class="tableHeader">References</div></th>
</tr>
<tr>
<th><div class="columnHeader">Name</div></th>
<th><div class="columnHeader">Properties</div></th>
<th><div class="columnHeader">Documentation</div></th>
</tr>
<tr> <td><div id="transformationdtmProgram.arrayTypedVariablesModule" class="teletype">arrayTypedVariablesModule</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#efbtadvanceddatadefinitionArrayTypedVariableModule">ArrayTypedVariableModule</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmProgram.executableLogic" class="teletype">executableLogic</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#transformationdtmExecutableLogic">dtmExecutableLogic</a></span></div>
<div class="label">Cardinality: [0..*]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmProgram.release" class="teletype">release</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#transformationRelease">Release</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmProgram.smcubesStaticModel" class="teletype">smcubesStaticModel</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#cocamoSMCubesStaticModel">SMCubesStaticModel</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr><tr> <td><div id="transformationdtmProgram.structVariablesModule" class="teletype">structVariablesModule</div>
</td>
<td><div class="keyValue"><span class="label">T: </span><span class="teletype"><a href="#efbtadvanceddatadefinitionStructTypedVariablesModule">StructTypedVariablesModule</a></span></div>
<div class="label">Cardinality: [0..1]</div>
<div class="label">Containment</div>
</td>
<td> </td>
</tr></table>
<a href="#transformation.dtmProgram.ref"></a>
</body>
</html>