diff options
Diffstat (limited to 'tests/org.eclipse.qvtd.build.etl.tests/src/org/eclipse/qvtd/build/etl/tests/UmlToRdbms/UmlToRdbmsSimple.qvtias')
-rw-r--r-- | tests/org.eclipse.qvtd.build.etl.tests/src/org/eclipse/qvtd/build/etl/tests/UmlToRdbms/UmlToRdbmsSimple.qvtias | 2137 |
1 files changed, 2137 insertions, 0 deletions
diff --git a/tests/org.eclipse.qvtd.build.etl.tests/src/org/eclipse/qvtd/build/etl/tests/UmlToRdbms/UmlToRdbmsSimple.qvtias b/tests/org.eclipse.qvtd.build.etl.tests/src/org/eclipse/qvtd/build/etl/tests/UmlToRdbms/UmlToRdbmsSimple.qvtias new file mode 100644 index 000000000..d58c40649 --- /dev/null +++ b/tests/org.eclipse.qvtd.build.etl.tests/src/org/eclipse/qvtd/build/etl/tests/UmlToRdbms/UmlToRdbmsSimple.qvtias @@ -0,0 +1,2137 @@ +<?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/3.1.0/Pivot" xmlns:qvtb="http://www.eclipse.org/qvt/0.9/QVTbase" + xmlns:qvtcb="http://www.eclipse.org/qvt/0.9/QVTcoreBase" xmlns:qvti="http://www.eclipse.org/qvt/0.9/QVTimperative" + xsi:schemaLocation="http://www.eclipse.org/ocl/3.1.0/Pivot java://org.eclipse.ocl.examples.pivot.PivotPackage http://www.eclipse.org/qvt/0.9/QVTbase java://org.eclipse.qvtd.pivot.qvtbase.QVTbasePackage http://www.eclipse.org/qvt/0.9/QVTcoreBase java://org.eclipse.qvtd.pivot.qvtcorebase.QVTcoreBasePackage http://www.eclipse.org/qvt/0.9/QVTimperative java://org.eclipse.qvtd.pivot.qvtimperative.QVTimperativePackage"> + <nestedPackage xsi:type="qvtb:Transformation" xmi:id="T.umlRdbms" name="umlRdbms"> + <modelParameter name="uml" usedPackage="SimpleUML.ecore.oclas#P.simpleuml"/> + <modelParameter name="rdbms" usedPackage="SimpleRDBMS.ecore.oclas#P.simplerdbms"/> + <modelParameter name="middle" usedPackage="UMLtoRDBMS.ecore.oclas#P.umltordbms"/> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.packageToSchema_MR" name="packageToSchema_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern/> + <bottomPattern> + <realizedVariable name="s" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern/> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.schema"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredVariable="#//@nestedPackage.0/@rule.0/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.0/@domain.1/@guardPattern/@variable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.0/@domain.1/@guardPattern/@variable.0"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredVariable="#//@nestedPackage.0/@rule.0/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.packageToSchema_LM" name="packageToSchema_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="p" type="SimpleUML.ecore.oclas#T.simpleuml.Package"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern/> + <bottomPattern> + <realizedVariable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + </bottomPattern> + </domain> + <guardPattern/> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.umlPackage"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.1/@domain.0/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.1/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.1/@domain.0/@guardPattern/@variable.0"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.1/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.integerToNumber_MR" name="integerToNumber_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern/> + <bottomPattern> + <realizedVariable name="sqlType" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + <variable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.IntegerToNumber"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.2/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.2/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.typeName"> + <value xsi:type="pivot:VariableExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredVariable="#//@nestedPackage.0/@rule.2/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.2/@domain.1/@guardPattern/@variable.1"/> + </assignment> + <assignment xsi:type="qvtcb:VariableAssignment" isDefault="false" targetVariable="#//@nestedPackage.0/@rule.2/@domain.0/@bottomPattern/@realizedVariable.0"> + <value xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="NUMBER"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.integerToNumber_LM" name="integerToNumber_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="p" type="SimpleUML.ecore.oclas#T.simpleuml.Package"/> + <variable name="prim" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.IntegerToNumber"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.umlPackage"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.PackageElement.namespace"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="Integer"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="2"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="NUMBER"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.IntegerToNumber" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.primitive"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.3/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.booleanToBoolean_LM" name="booleanToBoolean_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="p" type="SimpleUML.ecore.oclas#T.simpleuml.Package"/> + <variable name="prim" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.BooleanToBoolean"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.umlPackage"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="Boolean"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.PackageElement.namespace"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="2"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="BOOLEAN"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.BooleanToBoolean" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.primitive"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.4/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.booleanToBoolean_MR" name="booleanToBoolean_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern/> + <bottomPattern> + <realizedVariable name="sqlType" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + <variable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.BooleanToBoolean"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.5/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.5/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.typeName"> + <value xsi:type="pivot:VariableExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredVariable="#//@nestedPackage.0/@rule.5/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.5/@domain.1/@guardPattern/@variable.1"/> + </assignment> + <assignment xsi:type="qvtcb:VariableAssignment" isDefault="false" targetVariable="#//@nestedPackage.0/@rule.5/@domain.0/@bottomPattern/@realizedVariable.0"> + <value xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="BOOLEAN"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.stringToVarchar_MR" name="stringToVarchar_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern/> + <bottomPattern> + <realizedVariable name="sqlType" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + <variable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.StringToVarchar"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.6/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.6/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.typeName"> + <value xsi:type="pivot:VariableExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredVariable="#//@nestedPackage.0/@rule.6/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.6/@domain.1/@guardPattern/@variable.1"/> + </assignment> + <assignment xsi:type="qvtcb:VariableAssignment" isDefault="false" targetVariable="#//@nestedPackage.0/@rule.6/@domain.0/@bottomPattern/@realizedVariable.0"> + <value xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="VARCHAR"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.stringToVarchar_LM" name="stringToVarchar_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="p" type="SimpleUML.ecore.oclas#T.simpleuml.Package"/> + <variable name="prim" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.StringToVarchar"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.umlPackage"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="String"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.PackageElement.namespace"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="2"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="VARCHAR"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.StringToVarchar" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.primitive"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.7/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.classToTable_MR" name="classToTable_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern> + <variable name="s" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="t" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table"/> + <realizedVariable name="pk" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key"/> + <realizedVariable name="pc" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + <variable name="c2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.schema"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.1"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ToColumn.column"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.2"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.primaryKey"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.table"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.1/@guardPattern/@variable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="true" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.kind"> + <value xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="base"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Table.schema"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Key.owner"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.kind"> + <value xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="primary"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.owner"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.2"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="true" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.keys"> + <value xsi:type="pivot:CollectionLiteralExp" type="#//@nestedPackage.1/@ownedType.0" + kind="Set"> + <part xsi:type="pivot:CollectionItem" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key"> + <item xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.1"/> + </part> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.2"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="true" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.type"> + <value xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="NUMBER"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.2"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_tid"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.2"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.0"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_pk"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.8/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.classToTable_LM" name="classToTable_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="p" type="SimpleUML.ecore.oclas#T.simpleuml.Package"/> + <variable name="c" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="c2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.umlPackage"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.PackageElement.namespace"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="persistent"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.0/@guardPattern/@variable.1"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.umlClass"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.9/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.associationToForeignKey_MR" name="associationToForeignKey_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern> + <variable name="s" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema"/> + <variable name="st" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table"/> + <variable name="dt" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table"/> + <variable name="rk" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="fk" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey"/> + <realizedVariable name="fc" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + <variable name="sc2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + <variable name="dc2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + <variable name="a2f" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.table"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.schema"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.table"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.referenced"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Table.schema"> + <source xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Schema" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Key.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="primary"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.type"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.type"> + <source xsi:type="pivot:OperationCallExp" isRequired="false" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OrderedCollection.first"> + <source xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.1" + referredProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Key.column"> + <source xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.3"/> + </source> + </source> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.3"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_tid"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ToColumn.column"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.3"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.foreignKey"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.1/@guardPattern/@variable.3"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.ForeignKey.owner"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.owner"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.ForeignKey.refersTo"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@guardPattern/@variable.3"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="true" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.foreignKeys"> + <value xsi:type="pivot:CollectionLiteralExp" type="#//@nestedPackage.1/@ownedType.2" + kind="Set"> + <part xsi:type="pivot:CollectionItem" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey"> + <item xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.0"/> + </part> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.10/@domain.0/@bottomPattern/@realizedVariable.1"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.associationToForeignKey_LM" name="associationToForeignKey_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="p" type="SimpleUML.ecore.oclas#T.simpleuml.Package"/> + <variable name="sc" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="dc" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="a" type="SimpleUML.ecore.oclas#T.simpleuml.Association"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="p2s" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema"/> + <variable name="sc2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + <variable name="dc2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="a2f" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PackageToSchema.umlPackage"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.umlClass"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.umlClass"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PackageToSchema" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.PackageElement.namespace"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.destination"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.source"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.PackageElement.namespace"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Package" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <value xsi:type="pivot:IfExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"> + <condition xsi:type="pivot:OperationCallExp" name="and" isRequired="false" + type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.Boolean.and..ocl.Boolean"> + <source xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.destination"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.source"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </argument> + </condition> + <elseExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </elseExpression> + <thenExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@bottomPattern/@realizedVariable.0"/> + </thenExpression> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.association"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.name"> + <value xsi:type="pivot:IfExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"> + <condition xsi:type="pivot:OperationCallExp" name="and" isRequired="false" + type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.Boolean.and..ocl.Boolean"> + <source xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.destination"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.source"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </argument> + </condition> + <elseExpression xsi:type="pivot:IfExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"> + <condition xsi:type="pivot:OperationCallExp" name="and" isRequired="false" + type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.Boolean.and..ocl.Boolean"> + <source xsi:type="pivot:OperationCallExp" name="<>" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%60%%62%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.destination"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.source"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </argument> + </condition> + <elseExpression xsi:type="pivot:IfExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"> + <condition xsi:type="pivot:OperationCallExp" name="and" isRequired="false" + type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.Boolean.and..ocl.Boolean"> + <source xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.destination"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:OperationCallExp" name="<>" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%60%%62%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Association.source"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </argument> + </condition> + <elseExpression xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" + type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_"/> + </source> + <argument xsi:type="pivot:PropertyCallExp" isRequired="false" + type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </argument> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_"/> + </source> + <argument xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </argument> + </elseExpression> + <thenExpression xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_"/> + </source> + <argument xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.1"/> + </argument> + </thenExpression> + </elseExpression> + <thenExpression xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_"/> + </source> + <argument xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </argument> + </thenExpression> + </elseExpression> + <thenExpression xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Association" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.0/@guardPattern/@variable.3"/> + </thenExpression> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.referenced"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.2"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AssociationToForeignKey.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AssociationToForeignKey" + referredVariable="#//@nestedPackage.0/@rule.11/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.classPrimitiveAttributes_LM" + name="classPrimitiveAttributes_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="t" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType"/> + <variable name="c" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="a" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="fao" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + <variable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="fa" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.umlClass"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.primitive"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Classifier" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.type"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <value xsi:type="pivot:CollectionLiteralExp" type="#//@nestedPackage.1/@ownedType.3" + kind="Set"> + <part xsi:type="pivot:CollectionItem" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"> + <item xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </part> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.0/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AttributeToColumn.type"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.12/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.classComplexAttributes_LM" name="classComplexAttributes_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="t" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="c" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="a" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="fao" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="fa" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.umlClass"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Classifier" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.type"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <value xsi:type="pivot:IteratorExp" type="#//@nestedPackage.1/@ownedType.4" + implicit="true" referredIteration="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#i.ocl.Set.collect..T"> + <source xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.5" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttributeOwner.fromAttributes"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@guardPattern/@variable.0"/> + </source> + <body xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.3" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <source xsi:type="pivot:VariableExp" isRequired="false" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + implicit="true" referredVariable="#//@nestedPackage.0/@rule.13/@bottomPattern/@assignment.4/@value/@iterator.0"/> + </body> + <iterator name="1_" isRequired="false" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + implicit="true" representedParameter="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#i0i.ocl.Set.collect..T"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.0/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.13/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.complexAttributePrimitiveAttributes_LM" + name="complexAttributePrimitiveAttributes_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="ca" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute"/> + <variable name="c" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="t" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType"/> + <variable name="a" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="fao" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute"/> + <variable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="fa" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.primitive"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Classifier" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.type"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.PrimitiveDataType" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Classifier" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.type"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_"/> + </source> + <argument xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + </argument> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AttributeToColumn.type"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.0/@guardPattern/@variable.3"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <value xsi:type="pivot:CollectionLiteralExp" type="#//@nestedPackage.1/@ownedType.3" + kind="Set"> + <part xsi:type="pivot:CollectionItem" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"> + <item xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </part> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.14/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.complexAttributeComplexAttributes_LM" + name="complexAttributeComplexAttributes_LM"> + <domain xsi:type="qvtcb:CoreDomain" name="uml" isCheckable="false" isEnforceable="false" + typedModel="#//@nestedPackage.0/@modelParameter.0"> + <guardPattern> + <variable name="ca" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute"/> + <variable name="c" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="t" type="SimpleUML.ecore.oclas#T.simpleuml.Class"/> + <variable name="a" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute"/> + </guardPattern> + <bottomPattern/> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="true" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="fao" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="fa" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute"/> + </bottomPattern> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Classifier" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.type"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Classifier" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.type"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.Attribute.owner"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Class" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.attribute"> + <value xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <value xsi:type="pivot:IteratorExp" type="#//@nestedPackage.1/@ownedType.4" + implicit="true" referredIteration="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#i.ocl.Set.collect..T"> + <source xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.5" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttributeOwner.fromAttributes"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@guardPattern/@variable.0"/> + </source> + <body xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.3" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <source xsi:type="pivot:VariableExp" isRequired="false" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + implicit="true" referredVariable="#//@nestedPackage.0/@rule.15/@bottomPattern/@assignment.3/@value/@iterator.0"/> + </body> + <iterator name="1_" isRequired="false" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + implicit="true" representedParameter="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#i0i.ocl.Set.collect..T"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.kind"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <value xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:OperationCallExp" name="+" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%43%..ocl.String"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.NonLeafAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:StringLiteralExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + stringSymbol="_"/> + </source> + <argument xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="SimpleUML.ecore.oclas#p.simpleuml.UMLModelElement.name"> + <source xsi:type="pivot:VariableExp" type="SimpleUML.ecore.oclas#T.simpleuml.Attribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.0/@guardPattern/@variable.3"/> + </argument> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <value xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + referredVariable="#//@nestedPackage.0/@rule.15/@domain.1/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.attributeColumns_MR" name="attributeColumns_MR"> + <domain xsi:type="qvtcb:CoreDomain" name="rdbms" isCheckable="false" isEnforceable="true" + typedModel="#//@nestedPackage.0/@modelParameter.1"> + <guardPattern> + <variable name="t" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table"/> + <variable name="ct" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String"/> + </guardPattern> + <bottomPattern> + <realizedVariable name="c" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"/> + </bottomPattern> + </domain> + <domain xsi:type="qvtcb:CoreDomain" name="middle" isEnforceable="false" typedModel="#//@nestedPackage.0/@modelParameter.2"> + <guardPattern> + <variable name="c2t" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable"/> + <variable name="p2n" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName"/> + <variable name="a2c" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"/> + </guardPattern> + <bottomPattern/> + </domain> + <guardPattern> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" isRequired="false" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ClassToTable.table"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.0"/> + </source> + <argument xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.String.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.PrimitiveToName.typeName"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.1"/> + </source> + <argument xsi:type="pivot:VariableExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttributeOwner" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.owner"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.0"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.Collection.includes..ocl.OclAny"> + <source xsi:type="pivot:IteratorExp" type="#//@nestedPackage.1/@ownedType.4" + implicit="true" referredIteration="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#i.ocl.Set.collect..T"> + <source xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.5" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttributeOwner.fromAttributes"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.ClassToTable" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.0"/> + </source> + <body xsi:type="pivot:PropertyCallExp" type="#//@nestedPackage.1/@ownedType.3" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.leafs"> + <source xsi:type="pivot:VariableExp" isRequired="false" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + implicit="true" referredVariable="#//@nestedPackage.0/@rule.16/@guardPattern/@predicate.3/@conditionExpression/@source/@iterator.0"/> + </body> + <iterator name="1_" isRequired="false" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + implicit="true" representedParameter="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#i0i.ocl.Set.collect..T"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.2"/> + </conditionExpression> + </predicate> + <predicate> + <conditionExpression xsi:type="pivot:OperationCallExp" name="=" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#Boolean" + referredOperation="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#o.ocl.OclAny.%61%..ocl.OclSelf"> + <source xsi:type="pivot:PropertyCallExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.AttributeToColumn.type"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.2"/> + </source> + <argument xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.PrimitiveToName" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.1"/> + </conditionExpression> + </predicate> + </guardPattern> + <bottomPattern> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.name"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.name"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.ToColumn.column"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@bottomPattern/@realizedVariable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.2"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.RModelElement.kind"> + <value xsi:type="pivot:PropertyCallExp" isRequired="false" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredProperty="UMLtoRDBMS.ecore.oclas#p.umltordbms.FromAttribute.kind"> + <source xsi:type="pivot:VariableExp" type="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.1/@guardPattern/@variable.2"/> + </value> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.owner"> + <value xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Table" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@guardPattern/@variable.0"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + <assignment xsi:type="qvtcb:PropertyAssignment" isDefault="false" targetProperty="SimpleRDBMS.ecore.oclas#p.simplerdbms.Column.type"> + <value xsi:type="pivot:VariableExp" type="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#String" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@guardPattern/@variable.1"/> + <slotExpression xsi:type="pivot:VariableExp" type="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + referredVariable="#//@nestedPackage.0/@rule.16/@domain.0/@bottomPattern/@realizedVariable.0"/> + </assignment> + </bottomPattern> + </rule> + <rule xsi:type="qvti:Mapping" xmi:id="m.umlRdbms.__base__" name="__base__"> + <mappingCall referredMapping="#m.umlRdbms.packageToSchema_LM"/> + <mappingCall referredMapping="#m.umlRdbms.packageToSchema_MR"/> + <mappingCall referredMapping="#m.umlRdbms.classToTable_LM"/> + <mappingCall referredMapping="#m.umlRdbms.classToTable_MR"/> + <mappingCall referredMapping="#m.umlRdbms.associationToForeignKey_LM"/> + <mappingCall referredMapping="#m.umlRdbms.associationToForeignKey_MR"/> + <mappingCall referredMapping="#m.umlRdbms.classPrimitiveAttributes_LM"/> + <mappingCall referredMapping="#m.umlRdbms.classComplexAttributes_LM"/> + <mappingCall referredMapping="#m.umlRdbms.complexAttributeComplexAttributes_LM"/> + <mappingCall referredMapping="#m.umlRdbms.complexAttributePrimitiveAttributes_LM"/> + <mappingCall referredMapping="#m.umlRdbms.integerToNumber_LM"/> + <mappingCall referredMapping="#m.umlRdbms.integerToNumber_MR"/> + <mappingCall referredMapping="#m.umlRdbms.booleanToBoolean_LM"/> + <mappingCall referredMapping="#m.umlRdbms.booleanToBoolean_MR"/> + <mappingCall referredMapping="#m.umlRdbms.stringToVarchar_LM"/> + <mappingCall referredMapping="#m.umlRdbms.stringToVarchar_MR"/> + <mappingCall referredMapping="#m.umlRdbms.attributeColumns_MR"/> + </rule> + </nestedPackage> + <nestedPackage xmi:id="P.$$" name="$$" nsPrefix="orphanage" nsURI="http://www.eclipse.org/ocl/3.1.0/orphanage"> + <ownedType xsi:type="pivot:SetType" name="Set" superClass="#//@nestedPackage.1/@ownedType.6" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Set"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..SetT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:OrderedSetType" name="OrderedSet" superClass="#//@nestedPackage.1/@ownedType.7 #//@nestedPackage.1/@ownedType.8" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.OrderedSet"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..OrderedSetT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:SetType" name="Set" superClass="#//@nestedPackage.1/@ownedType.9" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Set"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..SetT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:SetType" name="Set" superClass="#//@nestedPackage.1/@ownedType.10" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Set"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..SetT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:BagType" name="Bag" superClass="#//@nestedPackage.1/@ownedType.11" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Bag"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..BagT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:SetType" name="Set" superClass="#//@nestedPackage.1/@ownedType.12" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Set"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..SetT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="UniqueCollection" superClass="#//@nestedPackage.1/@ownedType.13" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.UniqueCollection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..UniqueCollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="OrderedCollection" superClass="#//@nestedPackage.1/@ownedType.14" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.OrderedCollection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..OrderedCollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="UniqueCollection" superClass="#//@nestedPackage.1/@ownedType.14" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.UniqueCollection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..UniqueCollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="UniqueCollection" superClass="#//@nestedPackage.1/@ownedType.15" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.UniqueCollection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..UniqueCollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="UniqueCollection" superClass="#//@nestedPackage.1/@ownedType.11" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.UniqueCollection"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..UniqueCollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="Collection" superClass="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#T.ocl.OclAny" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Collection"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.AttributeToColumn" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..CollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="UniqueCollection" superClass="#//@nestedPackage.1/@ownedType.16" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.UniqueCollection"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..UniqueCollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="Collection" superClass="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#T.ocl.OclAny" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Key"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Collection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Key" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..CollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="Collection" superClass="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#T.ocl.OclAny" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.Column"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Collection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.Column" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..CollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="Collection" superClass="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#T.ocl.OclAny" + elementType="SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Collection"> + <parameterSubstitution actual="pivot:Class SimpleRDBMS.ecore.oclas#T.simplerdbms.ForeignKey" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..CollectionT"/> + </templateBinding> + </ownedType> + <ownedType xsi:type="pivot:CollectionType" name="Collection" superClass="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#T.ocl.OclAny" + elementType="UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute"> + <templateBinding signature="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#s.Collection"> + <parameterSubstitution actual="pivot:Class UMLtoRDBMS.ecore.oclas#T.umltordbms.FromAttribute" + formal="http://www.eclipse.org/ocl/3.1.0/OCL.oclstdlib.oclas#t.ocl..CollectionT"/> + </templateBinding> + </ownedType> + </nestedPackage> +</qvti:ImperativeModel> |