blob: e47a1815ee63e6bfc200216f8fe2f4bc738770b2 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<qvti:ImperativeModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pivot="http://www.eclipse.org/ocl/2015/Pivot"
xmlns:qvtb="http://www.eclipse.org/qvt/2015/QVTbase" xmlns:qvti="http://www.eclipse.org/qvt/2016/QVTimperative" xsi:schemaLocation="http://www.eclipse.org/ocl/2015/Pivot java://org.eclipse.ocl.pivot.PivotPackage http://www.eclipse.org/qvt/2015/QVTbase java://org.eclipse.qvtd.pivot.qvtbase.QVTbasePackage http://www.eclipse.org/qvt/2016/QVTimperative java://org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage"
name="HSV2HSL.qvti" externalURI="file:/E:/GIT/org.eclipse.qvtd/tests/org.eclipse.qvtd.xtext.qvtimperative.tests/bin/org/eclipse/qvtd/xtext/qvtimperative/tests/HSV2HSL/HSV2HSL.qvti">
<ownedImports importedNamespace="pivot:Package HSVTree.ecore.oclas#P.HSVTree"/>
<ownedImports importedNamespace="pivot:Package HSLTree.ecore.oclas#P.HSLTree"/>
<ownedImports name="hsv2hsl_0" importedNamespace="pivot:Package HSV2HSL.ecore.oclas#P.HSV2HSL"/>
<ownedPackages xmi:id="P." name="">
<ownedClasses xsi:type="qvti:ImperativeTransformation" xmi:id="T..hsv2hsl" name="hsv2hsl" superClasses="http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.OclElement">
<ownedOperations xsi:type="qvtb:Function" xmi:id="o..hsv2hsl.hsl2rgb..HSLTree.HSL" name="hsl2rgb" isRequired="false" type="pivot:DataType HSV2HSL.ecore.oclas#T.HSV2HSL.RGB">
<ownedParameters xsi:type="qvtb:FunctionParameter" xmi:id="p0o..hsv2hsl.hsl2rgb..HSLTree.HSL" name="color" isRequired="false"
type="pivot:DataType HSLTree.ecore.oclas#T.HSLTree.HSL"/>
</ownedOperations>
<ownedOperations xsi:type="qvtb:Function" xmi:id="o..hsv2hsl.hsv2rgb..HSVTree.HSV" name="hsv2rgb" isRequired="false" type="pivot:DataType HSV2HSL.ecore.oclas#T.HSV2HSL.RGB">
<ownedParameters xsi:type="qvtb:FunctionParameter" xmi:id="p0o..hsv2hsl.hsv2rgb..HSVTree.HSV" name="color" isRequired="false"
type="pivot:DataType HSVTree.ecore.oclas#T.HSVTree.HSV"/>
</ownedOperations>
<ownedOperations xsi:type="qvtb:Function" xmi:id="o..hsv2hsl.rgb2hsl..HSV2HSL.RGB" name="rgb2hsl" isRequired="false" type="pivot:DataType HSLTree.ecore.oclas#T.HSLTree.HSL">
<ownedParameters xsi:type="qvtb:FunctionParameter" xmi:id="p0o..hsv2hsl.rgb2hsl..HSV2HSL.RGB" name="color" isRequired="false"
type="pivot:DataType HSV2HSL.ecore.oclas#T.HSV2HSL.RGB"/>
</ownedOperations>
<ownedOperations xsi:type="qvtb:Function" xmi:id="o..hsv2hsl.rgb2hsv..HSV2HSL.RGB" name="rgb2hsv" isRequired="false" type="pivot:DataType HSVTree.ecore.oclas#T.HSVTree.HSV">
<ownedParameters xsi:type="qvtb:FunctionParameter" xmi:id="p0o..hsv2hsl.rgb2hsv..HSV2HSL.RGB" name="color" isRequired="false"
type="pivot:DataType HSV2HSL.ecore.oclas#T.HSV2HSL.RGB"/>
</ownedOperations>
<modelParameter xsi:type="qvti:ImperativeTypedModel" xmi:id="qT..hsv2hsl.hsv" name="hsv" usedPackage="HSVTree.ecore.oclas#P.HSVTree"
isChecked="true">
<ownedContext xsi:type="pivot:ParameterVariable" xmi:id="qV..hsv2hsl.hsv.hsv" name="hsv" type="pivot:Class http://www.eclipse.org/qvt/2016/QVTimperativeLibrary.oclas#T.qvtruntimelibrary.Model"/>
</modelParameter>
<modelParameter xsi:type="qvti:ImperativeTypedModel" xmi:id="qT..hsv2hsl.hsl" name="hsl" usedPackage="HSLTree.ecore.oclas#P.HSLTree"
isEnforced="true">
<ownedContext xsi:type="pivot:ParameterVariable" xmi:id="qV..hsv2hsl.hsl.hsl" name="hsl" type="pivot:Class http://www.eclipse.org/qvt/2016/QVTimperativeLibrary.oclas#T.qvtruntimelibrary.Model"/>
</modelParameter>
<modelParameter xsi:type="qvti:ImperativeTypedModel" xmi:id="qT..hsv2hsl.middle" name="middle" usedPackage="HSV2HSL.ecore.oclas#P.HSV2HSL">
<ownedContext xsi:type="pivot:ParameterVariable" xmi:id="qV..hsv2hsl.middle.middle" name="middle" type="pivot:Class http://www.eclipse.org/qvt/2016/QVTimperativeLibrary.oclas#T.qvtruntimelibrary.Model"/>
</modelParameter>
<rule xsi:type="qvti:Mapping" xmi:id="m..hsv2hsl.__root__" name="__root__">
<ownedStatements xsi:type="qvti:MappingLoop">
<ownedIterators name="hsvRoot" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"/>
<ownedMappingStatements xsi:type="qvti:MappingCall" referredMapping="#m..hsv2hsl.HSV2MiddleRoot">
<ownedMappingParameterBindings xsi:type="qvti:LoopParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.1/@ownedMappingParameters.0"
value="#//@ownedPackages.0/@ownedClasses.0/@rule.0/@ownedStatements.0/@ownedIterators.0"/>
</ownedMappingStatements>
<ownedExpression xsi:type="pivot:OperationCallExp" type="#//@ownedPackages.1/@ownedClasses.0" referredOperation="http://www.eclipse.org/qvt/2016/QVTimperativeLibrary.oclas#o.qvtruntimelibrary.Model.objectsOfKind..TT">
<ownedSource xsi:type="pivot:VariableExp" type="pivot:Class http://www.eclipse.org/qvt/2016/QVTimperativeLibrary.oclas#T.qvtruntimelibrary.Model"
referredVariable="#qV..hsv2hsl.hsv.hsv"/>
<ownedArguments xsi:type="pivot:TypeExp" type="pivot:Class http://www.eclipse.org/ocl/2015/Pivot.oclas#T.pivot.Class" referredType="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"/>
</ownedExpression>
</ownedStatements>
</rule>
<rule xsi:type="qvti:Mapping" xmi:id="m..hsv2hsl.HSV2MiddleRoot" name="HSV2MiddleRoot">
<ownedMappingParameters xsi:type="qvti:GuardParameter" name="hsvRoot" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"
referredTypedModel="#qT..hsv2hsl.hsv"/>
<ownedStatements xsi:type="qvti:CheckStatement">
<ownedExpression xsi:type="pivot:OperationCallExp" name="=" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#Boolean"
referredOperation="http://www.eclipse.org/ocl/2015/Library.oclas#o.ocl.OclAny.%61%..ocl.OclSelf">
<ownedSource xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"
referredProperty="HSVTree.ecore.oclas#p.HSVTree.HSVNode.parent">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.1/@ownedMappingParameters.0"/>
</ownedSource>
<ownedArguments xsi:type="pivot:NullLiteralExp" isRequired="false" type="pivot:VoidType http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.OclVoid"/>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:NewStatement" xmi:id="qV..hsv2hsl.HSV2MiddleRoot.middleRoot" name="middleRoot" isRequired="false"
type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" referredTypedModel="#qT..hsv2hsl.middle"/>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.HSV2MiddleRoot.middleRoot" targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.hsv">
<ownedExpression xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.1/@ownedMappingParameters.0"/>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.HSV2MiddleRoot.middleRoot" targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.name">
<ownedExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
referredProperty="HSVTree.ecore.oclas#p.HSVTree.HSVNode.name">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.1/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:MappingLoop">
<ownedIterators name="hsvChild" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"/>
<ownedMappingStatements xsi:type="qvti:MappingCall" referredMapping="#m..hsv2hsl.HSV2MiddleRecursion">
<ownedMappingParameterBindings xsi:type="qvti:LoopParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.0"
value="#//@ownedPackages.0/@ownedClasses.0/@rule.1/@ownedStatements.4/@ownedIterators.0"/>
<ownedMappingParameterBindings xsi:type="qvti:SimpleParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.1">
<value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#qV..hsv2hsl.HSV2MiddleRoot.middleRoot"/>
</ownedMappingParameterBindings>
</ownedMappingStatements>
<ownedExpression xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.1" referredProperty="HSVTree.ecore.oclas#p.HSVTree.HSVNode.children">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.1/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:MappingCall" referredMapping="#m..hsv2hsl.Middle2HSLRoot">
<ownedMappingParameterBindings xsi:type="qvti:SimpleParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.3/@ownedMappingParameters.0">
<value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" referredVariable="#qV..hsv2hsl.HSV2MiddleRoot.middleRoot"/>
</ownedMappingParameterBindings>
</ownedStatements>
</rule>
<rule xsi:type="qvti:Mapping" xmi:id="m..hsv2hsl.HSV2MiddleRecursion" name="HSV2MiddleRecursion">
<ownedMappingParameters xsi:type="qvti:GuardParameter" name="hsvNode" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"
referredTypedModel="#qT..hsv2hsl.hsv"/>
<ownedMappingParameters xsi:type="qvti:SimpleParameter" name="middleParent" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredTypedModel="#qT..hsv2hsl.middle"/>
<ownedStatements xsi:type="qvti:NewStatement" xmi:id="qV..hsv2hsl.HSV2MiddleRecursion.middleNode" name="middleNode" isRequired="false"
type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" referredTypedModel="#qT..hsv2hsl.middle"/>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.HSV2MiddleRecursion.middleNode" targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.parent">
<ownedExpression xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.1"/>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.HSV2MiddleRecursion.middleNode" targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.hsv">
<ownedExpression xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.0"/>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.HSV2MiddleRecursion.middleNode" targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.name">
<ownedExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
referredProperty="HSVTree.ecore.oclas#p.HSVTree.HSVNode.name">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:MappingLoop">
<ownedIterators name="hsvChild" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode"/>
<ownedMappingStatements xsi:type="qvti:MappingCall" referredMapping="#m..hsv2hsl.HSV2MiddleRecursion">
<ownedMappingParameterBindings xsi:type="qvti:LoopParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.0"
value="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedStatements.4/@ownedIterators.0"/>
<ownedMappingParameterBindings xsi:type="qvti:SimpleParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.1">
<value xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#qV..hsv2hsl.HSV2MiddleRecursion.middleNode"/>
</ownedMappingParameterBindings>
</ownedMappingStatements>
<ownedExpression xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.1" referredProperty="HSVTree.ecore.oclas#p.HSVTree.HSVNode.children">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.2/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
</rule>
<rule xsi:type="qvti:Mapping" xmi:id="m..hsv2hsl.Middle2HSLRoot" name="Middle2HSLRoot">
<ownedMappingParameters xsi:type="qvti:SimpleParameter" name="middleNode" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredTypedModel="#qT..hsv2hsl.middle"/>
<ownedStatements xsi:type="qvti:NewStatement" xmi:id="qV..hsv2hsl.Middle2HSLRoot.hslNode" name="hslNode" isRequired="false" type="pivot:Class HSLTree.ecore.oclas#T.HSLTree.HSLNode"
referredTypedModel="#qT..hsv2hsl.hsl"/>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.Middle2HSLRoot.hslNode" targetProperty="HSLTree.ecore.oclas#p.HSLTree.HSLNode.parent">
<ownedExpression xsi:type="pivot:NullLiteralExp" isRequired="false" type="pivot:VoidType http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.OclVoid"/>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.3/@ownedMappingParameters.0"
targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.hsl">
<ownedExpression xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSLTree.ecore.oclas#T.HSLTree.HSLNode" referredVariable="#qV..hsv2hsl.Middle2HSLRoot.hslNode"/>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.Middle2HSLRoot.hslNode" targetProperty="HSLTree.ecore.oclas#p.HSLTree.HSLNode.name">
<ownedExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
referredProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.name">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.3/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:MappingLoop">
<ownedIterators name="middleChild" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"/>
<ownedMappingStatements xsi:type="qvti:MappingCall" referredMapping="#m..hsv2hsl.Middle2HSLRecursion">
<ownedMappingParameterBindings xsi:type="qvti:LoopParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedMappingParameters.0"
value="#//@ownedPackages.0/@ownedClasses.0/@rule.3/@ownedStatements.4/@ownedIterators.0"/>
</ownedMappingStatements>
<ownedExpression xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.2" referredProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.children">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.3/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
</rule>
<rule xsi:type="qvti:Mapping" xmi:id="m..hsv2hsl.Middle2HSLRecursion" name="Middle2HSLRecursion">
<ownedMappingParameters xsi:type="qvti:GuardParameter" name="middleNode" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredTypedModel="#qT..hsv2hsl.middle"/>
<ownedStatements xsi:type="qvti:NewStatement" xmi:id="qV..hsv2hsl.Middle2HSLRecursion.hslNode" name="hslNode" isRequired="false"
type="pivot:Class HSLTree.ecore.oclas#T.HSLTree.HSLNode" referredTypedModel="#qT..hsv2hsl.hsl"/>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.Middle2HSLRecursion.hslNode" targetProperty="HSLTree.ecore.oclas#p.HSLTree.HSLNode.parent">
<ownedExpression xsi:type="pivot:PropertyCallExp" type="pivot:Class HSLTree.ecore.oclas#T.HSLTree.HSLNode" referredProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.hsl">
<ownedSource xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.parent">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedMappingParameters.0"/>
</ownedSource>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedMappingParameters.0"
targetProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.hsl">
<ownedExpression xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSLTree.ecore.oclas#T.HSLTree.HSLNode" referredVariable="#qV..hsv2hsl.Middle2HSLRecursion.hslNode"/>
</ownedStatements>
<ownedStatements xsi:type="qvti:SetStatement" targetVariable="#qV..hsv2hsl.Middle2HSLRecursion.hslNode" targetProperty="HSLTree.ecore.oclas#p.HSLTree.HSLNode.name">
<ownedExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="pivot:PrimitiveType http://www.eclipse.org/ocl/2015/Library.oclas#String"
referredProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.name">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
<ownedStatements xsi:type="qvti:MappingLoop">
<ownedIterators name="middleChild" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"/>
<ownedMappingStatements xsi:type="qvti:MappingCall" referredMapping="#m..hsv2hsl.Middle2HSLRecursion">
<ownedMappingParameterBindings xsi:type="qvti:LoopParameterBinding" boundVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedMappingParameters.0"
value="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedStatements.4/@ownedIterators.0"/>
</ownedMappingStatements>
<ownedExpression xsi:type="pivot:PropertyCallExp" type="#//@ownedPackages.1/@ownedClasses.2" referredProperty="HSV2HSL.ecore.oclas#p.HSV2HSL.HSVNode2HSLNode.children">
<ownedSource xsi:type="pivot:VariableExp" isRequired="false" type="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode"
referredVariable="#//@ownedPackages.0/@ownedClasses.0/@rule.4/@ownedMappingParameters.0"/>
</ownedExpression>
</ownedStatements>
</rule>
<ownedContext xsi:type="pivot:ParameterVariable" xmi:id="qV..hsv2hsl.this" name="this" type="#T..hsv2hsl"/>
</ownedClasses>
</ownedPackages>
<ownedPackages xmi:id="P.$$" name="$$" URI="http://www.eclipse.org/ocl/2015/Orphanage" nsPrefix="orphanage">
<ownedClasses xsi:type="pivot:SetType" name="Set" superClasses="#//@ownedPackages.1/@ownedClasses.3">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..SetT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:OrderedSetType" name="OrderedSet" superClasses="#//@ownedPackages.1/@ownedClasses.4 #//@ownedPackages.1/@ownedClasses.3" isNullFree="true">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..OrderedSetT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:OrderedSetType" name="OrderedSet" superClasses="#//@ownedPackages.1/@ownedClasses.5 #//@ownedPackages.1/@ownedClasses.6" isNullFree="true">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..OrderedSetT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:CollectionType" name="UniqueCollection" superClasses="#//@ownedPackages.1/@ownedClasses.7">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..UniqueCollectionT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:CollectionType" name="OrderedCollection" superClasses="#//@ownedPackages.1/@ownedClasses.7">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..OrderedCollectionT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:CollectionType" name="OrderedCollection" superClasses="#//@ownedPackages.1/@ownedClasses.8">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..OrderedCollectionT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:CollectionType" name="UniqueCollection" superClasses="#//@ownedPackages.1/@ownedClasses.8">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..UniqueCollectionT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:CollectionType" name="Collection" superClasses="http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.OclAny">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSVTree.ecore.oclas#T.HSVTree.HSVNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..CollectionT"/>
</ownedBindings>
</ownedClasses>
<ownedClasses xsi:type="pivot:CollectionType" name="Collection" superClasses="http://www.eclipse.org/ocl/2015/Library.oclas#T.ocl.OclAny">
<ownedBindings>
<ownedSubstitutions actual="pivot:Class HSV2HSL.ecore.oclas#T.HSV2HSL.HSVNode2HSLNode" formal="http://www.eclipse.org/ocl/2015/Library.oclas#t.ocl..CollectionT"/>
</ownedBindings>
</ownedClasses>
</ownedPackages>
</qvti:ImperativeModel>