Fix reset of properties with default value
[qt:qtmodeling.git] / src / uml / qobjects / qumloperationobject.cpp
1 /****************************************************************************
2 **
3 ** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org>
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the QtUml module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia.  For licensing terms and
14 ** conditions see http://qt.digia.com/licensing.  For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file.  Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights.  These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file.  Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 #include "qumloperationobject_p.h"
42 #include "private/qmodelingobject_p.h"
43
44 #include <QtUml/QUmlOperation>
45 #include <QtUml/QUmlBehavior>
46 #include <QtUml/QUmlClass>
47 #include <QtUml/QUmlClassifier>
48 #include <QtUml/QUmlComment>
49 #include <QtUml/QUmlConstraint>
50 #include <QtUml/QUmlDataType>
51 #include <QtUml/QUmlDependency>
52 #include <QtUml/QUmlElement>
53 #include <QtUml/QUmlElementImport>
54 #include <QtUml/QUmlInterface>
55 #include <QtUml/QUmlNamedElement>
56 #include <QtUml/QUmlNamespace>
57 #include <QtUml/QUmlOperationTemplateParameter>
58 #include <QtUml/QUmlPackage>
59 #include <QtUml/QUmlPackageableElement>
60 #include <QtUml/QUmlPackageImport>
61 #include <QtUml/QUmlParameter>
62 #include <QtUml/QUmlParameterableElement>
63 #include <QtUml/QUmlParameterSet>
64 #include <QtUml/QUmlRedefinableElement>
65 #include <QtUml/QUmlStringExpression>
66 #include <QtUml/QUmlTemplateBinding>
67 #include <QtUml/QUmlTemplateParameter>
68 #include <QtUml/QUmlTemplateSignature>
69 #include <QtUml/QUmlType>
70
71 QT_BEGIN_NAMESPACE
72
73 QUmlOperationObject::QUmlOperationObject(QUmlOperation *modelingElement)
74 {
75     setProperty("modelingElement", QVariant::fromValue(static_cast<QModelingElement *>(modelingElement)));
76     setGroupProperties();
77     setPropertyData();
78 }
79
80 // OWNED ATTRIBUTES [Element]
81
82 const QSet<QObject *> QUmlOperationObject::ownedComments() const
83 {
84     QSet<QObject *> set;
85     foreach (QUmlComment *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedComments())
86         set.insert(element->asQModelingObject());
87     return set;
88 }
89
90 const QSet<QObject *> QUmlOperationObject::ownedElements() const
91 {
92     QSet<QObject *> set;
93     foreach (QUmlElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedElements())
94         set.insert(element->asQModelingObject());
95     return set;
96 }
97
98 QObject *QUmlOperationObject::owner() const
99 {
100     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->owner())
101         return 0;
102     else
103         return qmodelingelementproperty_cast<QUmlOperation *>(this)->owner()->asQModelingObject();
104 }
105
106 // OWNED ATTRIBUTES [TemplateableElement]
107
108 QObject *QUmlOperationObject::ownedTemplateSignature() const
109 {
110     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedTemplateSignature())
111         return 0;
112     else
113         return qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedTemplateSignature()->asQModelingObject();
114 }
115
116 const QSet<QObject *> QUmlOperationObject::templateBindings() const
117 {
118     QSet<QObject *> set;
119     foreach (QUmlTemplateBinding *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->templateBindings())
120         set.insert(element->asQModelingObject());
121     return set;
122 }
123
124 // OWNED ATTRIBUTES [NamedElement]
125
126 const QSet<QObject *> QUmlOperationObject::clientDependencies() const
127 {
128     QSet<QObject *> set;
129     foreach (QUmlDependency *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->clientDependencies())
130         set.insert(element->asQModelingObject());
131     return set;
132 }
133
134 QString QUmlOperationObject::name() const
135 {
136     return qmodelingelementproperty_cast<QUmlOperation *>(this)->name();
137 }
138
139 QObject *QUmlOperationObject::nameExpression() const
140 {
141     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->nameExpression())
142         return 0;
143     else
144         return qmodelingelementproperty_cast<QUmlOperation *>(this)->nameExpression()->asQModelingObject();
145 }
146
147 QObject *QUmlOperationObject::namespace_() const
148 {
149     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->namespace_())
150         return 0;
151     else
152         return qmodelingelementproperty_cast<QUmlOperation *>(this)->namespace_()->asQModelingObject();
153 }
154
155 QString QUmlOperationObject::qualifiedName() const
156 {
157     return qmodelingelementproperty_cast<QUmlOperation *>(this)->qualifiedName();
158 }
159
160 QtUml::VisibilityKind QUmlOperationObject::visibility() const
161 {
162     return qmodelingelementproperty_cast<QUmlOperation *>(this)->visibility();
163 }
164
165 // OWNED ATTRIBUTES [Namespace]
166
167 const QSet<QObject *> QUmlOperationObject::elementImports() const
168 {
169     QSet<QObject *> set;
170     foreach (QUmlElementImport *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->elementImports())
171         set.insert(element->asQModelingObject());
172     return set;
173 }
174
175 const QSet<QObject *> QUmlOperationObject::importedMembers() const
176 {
177     QSet<QObject *> set;
178     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->importedMembers())
179         set.insert(element->asQModelingObject());
180     return set;
181 }
182
183 const QSet<QObject *> QUmlOperationObject::members() const
184 {
185     QSet<QObject *> set;
186     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->members())
187         set.insert(element->asQModelingObject());
188     return set;
189 }
190
191 const QSet<QObject *> QUmlOperationObject::ownedMembers() const
192 {
193     QSet<QObject *> set;
194     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedMembers())
195         set.insert(element->asQModelingObject());
196     return set;
197 }
198
199 const QSet<QObject *> QUmlOperationObject::ownedRules() const
200 {
201     QSet<QObject *> set;
202     foreach (QUmlConstraint *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedRules())
203         set.insert(element->asQModelingObject());
204     return set;
205 }
206
207 const QSet<QObject *> QUmlOperationObject::packageImports() const
208 {
209     QSet<QObject *> set;
210     foreach (QUmlPackageImport *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->packageImports())
211         set.insert(element->asQModelingObject());
212     return set;
213 }
214
215 // OWNED ATTRIBUTES [RedefinableElement]
216
217 bool QUmlOperationObject::isLeaf() const
218 {
219     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isLeaf();
220 }
221
222 const QSet<QObject *> QUmlOperationObject::redefinedElements() const
223 {
224     QSet<QObject *> set;
225     foreach (QUmlRedefinableElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->redefinedElements())
226         set.insert(element->asQModelingObject());
227     return set;
228 }
229
230 const QSet<QObject *> QUmlOperationObject::redefinitionContexts() const
231 {
232     QSet<QObject *> set;
233     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->redefinitionContexts())
234         set.insert(element->asQModelingObject());
235     return set;
236 }
237
238 // OWNED ATTRIBUTES [Feature]
239
240 const QSet<QObject *> QUmlOperationObject::featuringClassifiers() const
241 {
242     QSet<QObject *> set;
243     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->featuringClassifiers())
244         set.insert(element->asQModelingObject());
245     return set;
246 }
247
248 bool QUmlOperationObject::isStatic() const
249 {
250     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isStatic();
251 }
252
253 // OWNED ATTRIBUTES [BehavioralFeature]
254
255 QtUml::CallConcurrencyKind QUmlOperationObject::concurrency() const
256 {
257     return qmodelingelementproperty_cast<QUmlOperation *>(this)->concurrency();
258 }
259
260 bool QUmlOperationObject::isAbstract() const
261 {
262     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isAbstract();
263 }
264
265 const QSet<QObject *> QUmlOperationObject::methods() const
266 {
267     QSet<QObject *> set;
268     foreach (QUmlBehavior *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->methods())
269         set.insert(element->asQModelingObject());
270     return set;
271 }
272
273 const QSet<QObject *> QUmlOperationObject::ownedParameterSets() const
274 {
275     QSet<QObject *> set;
276     foreach (QUmlParameterSet *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedParameterSets())
277         set.insert(element->asQModelingObject());
278     return set;
279 }
280
281 // OWNED ATTRIBUTES [ParameterableElement]
282
283 QObject *QUmlOperationObject::owningTemplateParameter() const
284 {
285     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->owningTemplateParameter())
286         return 0;
287     else
288         return qmodelingelementproperty_cast<QUmlOperation *>(this)->owningTemplateParameter()->asQModelingObject();
289 }
290
291 // OWNED ATTRIBUTES [Operation]
292
293 QObject *QUmlOperationObject::bodyCondition() const
294 {
295     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->bodyCondition())
296         return 0;
297     else
298         return qmodelingelementproperty_cast<QUmlOperation *>(this)->bodyCondition()->asQModelingObject();
299 }
300
301 QObject *QUmlOperationObject::class_() const
302 {
303     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->class_())
304         return 0;
305     else
306         return qmodelingelementproperty_cast<QUmlOperation *>(this)->class_()->asQModelingObject();
307 }
308
309 QObject *QUmlOperationObject::datatype() const
310 {
311     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->datatype())
312         return 0;
313     else
314         return qmodelingelementproperty_cast<QUmlOperation *>(this)->datatype()->asQModelingObject();
315 }
316
317 QObject *QUmlOperationObject::interface_() const
318 {
319     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->interface_())
320         return 0;
321     else
322         return qmodelingelementproperty_cast<QUmlOperation *>(this)->interface_()->asQModelingObject();
323 }
324
325 bool QUmlOperationObject::isOrdered() const
326 {
327     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isOrdered();
328 }
329
330 bool QUmlOperationObject::isQuery() const
331 {
332     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isQuery();
333 }
334
335 bool QUmlOperationObject::isUnique() const
336 {
337     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isUnique();
338 }
339
340 int QUmlOperationObject::lower() const
341 {
342     return qmodelingelementproperty_cast<QUmlOperation *>(this)->lower();
343 }
344
345 const QList<QObject *> QUmlOperationObject::ownedParameters() const
346 {
347     QList<QObject *> list;
348     foreach (QUmlParameter *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->ownedParameters())
349         list.append(element->asQModelingObject());
350     return list;
351 }
352
353 const QSet<QObject *> QUmlOperationObject::postconditions() const
354 {
355     QSet<QObject *> set;
356     foreach (QUmlConstraint *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->postconditions())
357         set.insert(element->asQModelingObject());
358     return set;
359 }
360
361 const QSet<QObject *> QUmlOperationObject::preconditions() const
362 {
363     QSet<QObject *> set;
364     foreach (QUmlConstraint *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->preconditions())
365         set.insert(element->asQModelingObject());
366     return set;
367 }
368
369 const QSet<QObject *> QUmlOperationObject::raisedExceptions() const
370 {
371     QSet<QObject *> set;
372     foreach (QUmlType *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->raisedExceptions())
373         set.insert(element->asQModelingObject());
374     return set;
375 }
376
377 const QSet<QObject *> QUmlOperationObject::redefinedOperations() const
378 {
379     QSet<QObject *> set;
380     foreach (QUmlOperation *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->redefinedOperations())
381         set.insert(element->asQModelingObject());
382     return set;
383 }
384
385 QObject *QUmlOperationObject::templateParameter() const
386 {
387     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->templateParameter())
388         return 0;
389     else
390         return qmodelingelementproperty_cast<QUmlOperation *>(this)->templateParameter()->asQModelingObject();
391 }
392
393 QObject *QUmlOperationObject::type() const
394 {
395     if (!qmodelingelementproperty_cast<QUmlOperation *>(this)->type())
396         return 0;
397     else
398         return qmodelingelementproperty_cast<QUmlOperation *>(this)->type()->asQModelingObject();
399 }
400
401 int QUmlOperationObject::upper() const
402 {
403     return qmodelingelementproperty_cast<QUmlOperation *>(this)->upper();
404 }
405
406 // OPERATIONS [Element]
407
408 QSet<QObject *> QUmlOperationObject::allOwnedElements() const
409 {
410     QSet<QObject *> set;
411     foreach (QUmlElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->allOwnedElements())
412         set.insert(element->asQModelingObject());
413     return set;
414 }
415
416 bool QUmlOperationObject::mustBeOwned() const
417 {
418     return qmodelingelementproperty_cast<QUmlOperation *>(this)->mustBeOwned();
419 }
420
421 // OPERATIONS [TemplateableElement]
422
423 bool QUmlOperationObject::isTemplate() const
424 {
425     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isTemplate();
426 }
427
428 QSet<QObject *> QUmlOperationObject::parameterableElements() const
429 {
430     QSet<QObject *> set;
431     foreach (QUmlParameterableElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->parameterableElements())
432         set.insert(element->asQModelingObject());
433     return set;
434 }
435
436 // OPERATIONS [NamedElement]
437
438 QList<QObject *> QUmlOperationObject::allNamespaces() const
439 {
440     QList<QObject *> set;
441     foreach (QUmlNamespace *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->allNamespaces())
442         set.append(element->asQModelingObject());
443     return set;
444 }
445
446 QSet<QObject *> QUmlOperationObject::allOwningPackages() const
447 {
448     QSet<QObject *> set;
449     foreach (QUmlPackage *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->allOwningPackages())
450         set.insert(element->asQModelingObject());
451     return set;
452 }
453
454 QString QUmlOperationObject::separator() const
455 {
456     return qmodelingelementproperty_cast<QUmlOperation *>(this)->separator();
457 }
458
459 // OPERATIONS [Namespace]
460
461 QSet<QObject *> QUmlOperationObject::excludeCollisions(QSet<QObject *> imps) const
462 {
463     QSet<QUmlPackageableElement *> impsConverted;
464     foreach (QObject *object, imps)
465         impsConverted.insert(qmodelingelementproperty_cast<QUmlPackageableElement *>(object));
466     QSet<QObject *> set;
467     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->excludeCollisions(impsConverted))
468         set.insert(element->asQModelingObject());
469     return set;
470 }
471
472 QSet<QString> QUmlOperationObject::getNamesOfMember(QObject *element) const
473 {
474     return qmodelingelementproperty_cast<QUmlOperation *>(this)->getNamesOfMember(qmodelingelementproperty_cast<QUmlNamedElement *>(element));
475 }
476
477 QSet<QObject *> QUmlOperationObject::importMembers(QSet<QObject *> imps) const
478 {
479     QSet<QUmlPackageableElement *> impsConverted;
480     foreach (QObject *object, imps)
481         impsConverted.insert(qmodelingelementproperty_cast<QUmlPackageableElement *>(object));
482     QSet<QObject *> set;
483     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->importMembers(impsConverted))
484         set.insert(element->asQModelingObject());
485     return set;
486 }
487
488 bool QUmlOperationObject::membersAreDistinguishable() const
489 {
490     return qmodelingelementproperty_cast<QUmlOperation *>(this)->membersAreDistinguishable();
491 }
492
493 // OPERATIONS [RedefinableElement]
494
495 bool QUmlOperationObject::isRedefinitionContextValid(QObject *redefined) const
496 {
497     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isRedefinitionContextValid(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefined));
498 }
499
500 // OPERATIONS [BehavioralFeature]
501
502 bool QUmlOperationObject::isDistinguishableFrom(QObject *n, QObject *ns) const
503 {
504     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isDistinguishableFrom(qmodelingelementproperty_cast<QUmlNamedElement *>(n), qmodelingelementproperty_cast<QUmlNamespace *>(ns));
505 }
506
507 // OPERATIONS [ParameterableElement]
508
509 bool QUmlOperationObject::isCompatibleWith(QObject *p) const
510 {
511     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isCompatibleWith(qmodelingelementproperty_cast<QUmlParameterableElement *>(p));
512 }
513
514 bool QUmlOperationObject::isTemplateParameter() const
515 {
516     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isTemplateParameter();
517 }
518
519 // OPERATIONS [Operation]
520
521 bool QUmlOperationObject::isConsistentWith(QObject *redefinee) const
522 {
523     return qmodelingelementproperty_cast<QUmlOperation *>(this)->isConsistentWith(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefinee));
524 }
525
526 QSet<QObject *> QUmlOperationObject::returnResult() const
527 {
528     QSet<QObject *> set;
529     foreach (QUmlParameter *element, qmodelingelementproperty_cast<QUmlOperation *>(this)->returnResult())
530         set.insert(element->asQModelingObject());
531     return set;
532 }
533
534 // SLOTS FOR OWNED ATTRIBUTES [Element]
535
536 void QUmlOperationObject::addOwnedComment(QObject *ownedComment)
537 {
538     qmodelingelementproperty_cast<QUmlOperation *>(this)->addOwnedComment(qmodelingelementproperty_cast<QUmlComment *>(ownedComment));
539 }
540
541 void QUmlOperationObject::removeOwnedComment(QObject *ownedComment)
542 {
543     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeOwnedComment(qmodelingelementproperty_cast<QUmlComment *>(ownedComment));
544 }
545
546 void QUmlOperationObject::addOwnedElement(QObject *ownedElement)
547 {
548     qmodelingelementproperty_cast<QUmlOperation *>(this)->addOwnedElement(qmodelingelementproperty_cast<QUmlElement *>(ownedElement));
549 }
550
551 void QUmlOperationObject::removeOwnedElement(QObject *ownedElement)
552 {
553     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeOwnedElement(qmodelingelementproperty_cast<QUmlElement *>(ownedElement));
554 }
555
556 void QUmlOperationObject::setOwner(QObject *owner)
557 {
558     qmodelingelementproperty_cast<QUmlOperation *>(this)->setOwner(qmodelingelementproperty_cast<QUmlElement *>(owner));
559 }
560
561 // SLOTS FOR OWNED ATTRIBUTES [TemplateableElement]
562
563 void QUmlOperationObject::setOwnedTemplateSignature(QObject *ownedTemplateSignature)
564 {
565     qmodelingelementproperty_cast<QUmlOperation *>(this)->setOwnedTemplateSignature(qmodelingelementproperty_cast<QUmlTemplateSignature *>(ownedTemplateSignature));
566 }
567
568 void QUmlOperationObject::addTemplateBinding(QObject *templateBinding)
569 {
570     qmodelingelementproperty_cast<QUmlOperation *>(this)->addTemplateBinding(qmodelingelementproperty_cast<QUmlTemplateBinding *>(templateBinding));
571 }
572
573 void QUmlOperationObject::removeTemplateBinding(QObject *templateBinding)
574 {
575     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeTemplateBinding(qmodelingelementproperty_cast<QUmlTemplateBinding *>(templateBinding));
576 }
577
578 // SLOTS FOR OWNED ATTRIBUTES [NamedElement]
579
580 void QUmlOperationObject::addClientDependency(QObject *clientDependency)
581 {
582     qmodelingelementproperty_cast<QUmlOperation *>(this)->addClientDependency(qmodelingelementproperty_cast<QUmlDependency *>(clientDependency));
583 }
584
585 void QUmlOperationObject::removeClientDependency(QObject *clientDependency)
586 {
587     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeClientDependency(qmodelingelementproperty_cast<QUmlDependency *>(clientDependency));
588 }
589
590 void QUmlOperationObject::setName(QString name)
591 {
592     qmodelingelementproperty_cast<QUmlOperation *>(this)->setName(name);
593 }
594
595 void QUmlOperationObject::setNameExpression(QObject *nameExpression)
596 {
597     qmodelingelementproperty_cast<QUmlOperation *>(this)->setNameExpression(qmodelingelementproperty_cast<QUmlStringExpression *>(nameExpression));
598 }
599
600 void QUmlOperationObject::setNamespace(QObject *namespace_)
601 {
602     qmodelingelementproperty_cast<QUmlOperation *>(this)->setNamespace(qmodelingelementproperty_cast<QUmlNamespace *>(namespace_));
603 }
604
605 void QUmlOperationObject::setQualifiedName(QString qualifiedName)
606 {
607     qmodelingelementproperty_cast<QUmlOperation *>(this)->setQualifiedName(qualifiedName);
608 }
609
610 void QUmlOperationObject::setVisibility(QtUml::VisibilityKind visibility)
611 {
612     qmodelingelementproperty_cast<QUmlOperation *>(this)->setVisibility(visibility);
613 }
614
615 // SLOTS FOR OWNED ATTRIBUTES [Namespace]
616
617 void QUmlOperationObject::addElementImport(QObject *elementImport)
618 {
619     qmodelingelementproperty_cast<QUmlOperation *>(this)->addElementImport(qmodelingelementproperty_cast<QUmlElementImport *>(elementImport));
620 }
621
622 void QUmlOperationObject::removeElementImport(QObject *elementImport)
623 {
624     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeElementImport(qmodelingelementproperty_cast<QUmlElementImport *>(elementImport));
625 }
626
627 void QUmlOperationObject::addImportedMember(QObject *importedMember)
628 {
629     qmodelingelementproperty_cast<QUmlOperation *>(this)->addImportedMember(qmodelingelementproperty_cast<QUmlPackageableElement *>(importedMember));
630 }
631
632 void QUmlOperationObject::removeImportedMember(QObject *importedMember)
633 {
634     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeImportedMember(qmodelingelementproperty_cast<QUmlPackageableElement *>(importedMember));
635 }
636
637 void QUmlOperationObject::addMember(QObject *member)
638 {
639     qmodelingelementproperty_cast<QUmlOperation *>(this)->addMember(qmodelingelementproperty_cast<QUmlNamedElement *>(member));
640 }
641
642 void QUmlOperationObject::removeMember(QObject *member)
643 {
644     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeMember(qmodelingelementproperty_cast<QUmlNamedElement *>(member));
645 }
646
647 void QUmlOperationObject::addOwnedMember(QObject *ownedMember)
648 {
649     qmodelingelementproperty_cast<QUmlOperation *>(this)->addOwnedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(ownedMember));
650 }
651
652 void QUmlOperationObject::removeOwnedMember(QObject *ownedMember)
653 {
654     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeOwnedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(ownedMember));
655 }
656
657 void QUmlOperationObject::addOwnedRule(QObject *ownedRule)
658 {
659     qmodelingelementproperty_cast<QUmlOperation *>(this)->addOwnedRule(qmodelingelementproperty_cast<QUmlConstraint *>(ownedRule));
660 }
661
662 void QUmlOperationObject::removeOwnedRule(QObject *ownedRule)
663 {
664     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeOwnedRule(qmodelingelementproperty_cast<QUmlConstraint *>(ownedRule));
665 }
666
667 void QUmlOperationObject::addPackageImport(QObject *packageImport)
668 {
669     qmodelingelementproperty_cast<QUmlOperation *>(this)->addPackageImport(qmodelingelementproperty_cast<QUmlPackageImport *>(packageImport));
670 }
671
672 void QUmlOperationObject::removePackageImport(QObject *packageImport)
673 {
674     qmodelingelementproperty_cast<QUmlOperation *>(this)->removePackageImport(qmodelingelementproperty_cast<QUmlPackageImport *>(packageImport));
675 }
676
677 // SLOTS FOR OWNED ATTRIBUTES [RedefinableElement]
678
679 void QUmlOperationObject::setLeaf(bool isLeaf)
680 {
681     qmodelingelementproperty_cast<QUmlOperation *>(this)->setLeaf(isLeaf);
682 }
683
684 void QUmlOperationObject::unsetLeaf()
685 {
686     Q_D(QModelingObject);
687     setLeaf(false);
688     d->modifiedResettableProperties.removeAll(QStringLiteral("leaf"));
689 }
690
691 void QUmlOperationObject::addRedefinedElement(QObject *redefinedElement)
692 {
693     qmodelingelementproperty_cast<QUmlOperation *>(this)->addRedefinedElement(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefinedElement));
694 }
695
696 void QUmlOperationObject::removeRedefinedElement(QObject *redefinedElement)
697 {
698     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeRedefinedElement(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefinedElement));
699 }
700
701 void QUmlOperationObject::addRedefinitionContext(QObject *redefinitionContext)
702 {
703     qmodelingelementproperty_cast<QUmlOperation *>(this)->addRedefinitionContext(qmodelingelementproperty_cast<QUmlClassifier *>(redefinitionContext));
704 }
705
706 void QUmlOperationObject::removeRedefinitionContext(QObject *redefinitionContext)
707 {
708     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeRedefinitionContext(qmodelingelementproperty_cast<QUmlClassifier *>(redefinitionContext));
709 }
710
711 // SLOTS FOR OWNED ATTRIBUTES [Feature]
712
713 void QUmlOperationObject::addFeaturingClassifier(QObject *featuringClassifier)
714 {
715     qmodelingelementproperty_cast<QUmlOperation *>(this)->addFeaturingClassifier(qmodelingelementproperty_cast<QUmlClassifier *>(featuringClassifier));
716 }
717
718 void QUmlOperationObject::removeFeaturingClassifier(QObject *featuringClassifier)
719 {
720     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeFeaturingClassifier(qmodelingelementproperty_cast<QUmlClassifier *>(featuringClassifier));
721 }
722
723 void QUmlOperationObject::setStatic(bool isStatic)
724 {
725     qmodelingelementproperty_cast<QUmlOperation *>(this)->setStatic(isStatic);
726 }
727
728 void QUmlOperationObject::unsetStatic()
729 {
730     Q_D(QModelingObject);
731     setStatic(false);
732     d->modifiedResettableProperties.removeAll(QStringLiteral("static"));
733 }
734
735 // SLOTS FOR OWNED ATTRIBUTES [BehavioralFeature]
736
737 void QUmlOperationObject::setConcurrency(QtUml::CallConcurrencyKind concurrency)
738 {
739     qmodelingelementproperty_cast<QUmlOperation *>(this)->setConcurrency(concurrency);
740 }
741
742 void QUmlOperationObject::unsetConcurrency()
743 {
744     Q_D(QModelingObject);
745     setConcurrency(QtUml::CallConcurrencyKindSequential);
746     d->modifiedResettableProperties.removeAll(QStringLiteral("concurrency"));
747 }
748
749 void QUmlOperationObject::setAbstract(bool isAbstract)
750 {
751     qmodelingelementproperty_cast<QUmlOperation *>(this)->setAbstract(isAbstract);
752 }
753
754 void QUmlOperationObject::unsetAbstract()
755 {
756     Q_D(QModelingObject);
757     setAbstract(false);
758     d->modifiedResettableProperties.removeAll(QStringLiteral("abstract"));
759 }
760
761 void QUmlOperationObject::addMethod(QObject *method)
762 {
763     qmodelingelementproperty_cast<QUmlOperation *>(this)->addMethod(qmodelingelementproperty_cast<QUmlBehavior *>(method));
764 }
765
766 void QUmlOperationObject::removeMethod(QObject *method)
767 {
768     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeMethod(qmodelingelementproperty_cast<QUmlBehavior *>(method));
769 }
770
771 void QUmlOperationObject::addOwnedParameterSet(QObject *ownedParameterSet)
772 {
773     qmodelingelementproperty_cast<QUmlOperation *>(this)->addOwnedParameterSet(qmodelingelementproperty_cast<QUmlParameterSet *>(ownedParameterSet));
774 }
775
776 void QUmlOperationObject::removeOwnedParameterSet(QObject *ownedParameterSet)
777 {
778     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeOwnedParameterSet(qmodelingelementproperty_cast<QUmlParameterSet *>(ownedParameterSet));
779 }
780 // SLOTS FOR OWNED ATTRIBUTES [ParameterableElement]
781
782 void QUmlOperationObject::setOwningTemplateParameter(QObject *owningTemplateParameter)
783 {
784     qmodelingelementproperty_cast<QUmlOperation *>(this)->setOwningTemplateParameter(qmodelingelementproperty_cast<QUmlTemplateParameter *>(owningTemplateParameter));
785 }
786 // SLOTS FOR OWNED ATTRIBUTES [Operation]
787
788 void QUmlOperationObject::setBodyCondition(QObject *bodyCondition)
789 {
790     qmodelingelementproperty_cast<QUmlOperation *>(this)->setBodyCondition(qmodelingelementproperty_cast<QUmlConstraint *>(bodyCondition));
791 }
792
793 void QUmlOperationObject::setClass(QObject *class_)
794 {
795     qmodelingelementproperty_cast<QUmlOperation *>(this)->setClass(qmodelingelementproperty_cast<QUmlClass *>(class_));
796 }
797
798 void QUmlOperationObject::setDatatype(QObject *datatype)
799 {
800     qmodelingelementproperty_cast<QUmlOperation *>(this)->setDatatype(qmodelingelementproperty_cast<QUmlDataType *>(datatype));
801 }
802
803 void QUmlOperationObject::setInterface(QObject *interface_)
804 {
805     qmodelingelementproperty_cast<QUmlOperation *>(this)->setInterface(qmodelingelementproperty_cast<QUmlInterface *>(interface_));
806 }
807
808 void QUmlOperationObject::setOrdered(bool isOrdered)
809 {
810     qmodelingelementproperty_cast<QUmlOperation *>(this)->setOrdered(isOrdered);
811 }
812
813 void QUmlOperationObject::unsetOrdered()
814 {
815     Q_D(QModelingObject);
816     setOrdered(false);
817     d->modifiedResettableProperties.removeAll(QStringLiteral("ordered"));
818 }
819
820 void QUmlOperationObject::setQuery(bool isQuery)
821 {
822     qmodelingelementproperty_cast<QUmlOperation *>(this)->setQuery(isQuery);
823 }
824
825 void QUmlOperationObject::unsetQuery()
826 {
827     Q_D(QModelingObject);
828     setQuery(false);
829     d->modifiedResettableProperties.removeAll(QStringLiteral("query"));
830 }
831
832 void QUmlOperationObject::setUnique(bool isUnique)
833 {
834     qmodelingelementproperty_cast<QUmlOperation *>(this)->setUnique(isUnique);
835 }
836
837 void QUmlOperationObject::unsetUnique()
838 {
839     Q_D(QModelingObject);
840
841     setUnique(true);
842     d->modifiedResettableProperties.removeAll(QStringLiteral("unique"));
843 }
844
845 void QUmlOperationObject::setLower(int lower)
846 {
847     qmodelingelementproperty_cast<QUmlOperation *>(this)->setLower(lower);
848 }
849
850 void QUmlOperationObject::unsetLower()
851 {
852     Q_D(QModelingObject);
853     setLower(1);
854     d->modifiedResettableProperties.removeAll(QStringLiteral("lower"));
855 }
856
857 void QUmlOperationObject::addOwnedParameter(QObject *ownedParameter)
858 {
859     qmodelingelementproperty_cast<QUmlOperation *>(this)->addOwnedParameter(qmodelingelementproperty_cast<QUmlParameter *>(ownedParameter));
860 }
861
862 void QUmlOperationObject::removeOwnedParameter(QObject *ownedParameter)
863 {
864     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeOwnedParameter(qmodelingelementproperty_cast<QUmlParameter *>(ownedParameter));
865 }
866
867 void QUmlOperationObject::addPostcondition(QObject *postcondition)
868 {
869     qmodelingelementproperty_cast<QUmlOperation *>(this)->addPostcondition(qmodelingelementproperty_cast<QUmlConstraint *>(postcondition));
870 }
871
872 void QUmlOperationObject::removePostcondition(QObject *postcondition)
873 {
874     qmodelingelementproperty_cast<QUmlOperation *>(this)->removePostcondition(qmodelingelementproperty_cast<QUmlConstraint *>(postcondition));
875 }
876
877 void QUmlOperationObject::addPrecondition(QObject *precondition)
878 {
879     qmodelingelementproperty_cast<QUmlOperation *>(this)->addPrecondition(qmodelingelementproperty_cast<QUmlConstraint *>(precondition));
880 }
881
882 void QUmlOperationObject::removePrecondition(QObject *precondition)
883 {
884     qmodelingelementproperty_cast<QUmlOperation *>(this)->removePrecondition(qmodelingelementproperty_cast<QUmlConstraint *>(precondition));
885 }
886
887 void QUmlOperationObject::addRaisedException(QObject *raisedException)
888 {
889     qmodelingelementproperty_cast<QUmlOperation *>(this)->addRaisedException(qmodelingelementproperty_cast<QUmlType *>(raisedException));
890 }
891
892 void QUmlOperationObject::removeRaisedException(QObject *raisedException)
893 {
894     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeRaisedException(qmodelingelementproperty_cast<QUmlType *>(raisedException));
895 }
896
897 void QUmlOperationObject::addRedefinedOperation(QObject *redefinedOperation)
898 {
899     qmodelingelementproperty_cast<QUmlOperation *>(this)->addRedefinedOperation(qmodelingelementproperty_cast<QUmlOperation *>(redefinedOperation));
900 }
901
902 void QUmlOperationObject::removeRedefinedOperation(QObject *redefinedOperation)
903 {
904     qmodelingelementproperty_cast<QUmlOperation *>(this)->removeRedefinedOperation(qmodelingelementproperty_cast<QUmlOperation *>(redefinedOperation));
905 }
906
907 void QUmlOperationObject::setTemplateParameter(QObject *templateParameter)
908 {
909     qmodelingelementproperty_cast<QUmlOperation *>(this)->setTemplateParameter(qmodelingelementproperty_cast<QUmlOperationTemplateParameter *>(templateParameter));
910 }
911
912 void QUmlOperationObject::setType(QObject *type)
913 {
914     qmodelingelementproperty_cast<QUmlOperation *>(this)->setType(qmodelingelementproperty_cast<QUmlType *>(type));
915 }
916
917 void QUmlOperationObject::setUpper(int upper)
918 {
919     qmodelingelementproperty_cast<QUmlOperation *>(this)->setUpper(upper);
920 }
921
922 void QUmlOperationObject::unsetUpper()
923 {
924     Q_D(QModelingObject);
925     setUpper(1);
926     d->modifiedResettableProperties.removeAll(QStringLiteral("upper"));
927 }
928
929
930 void QUmlOperationObject::setGroupProperties()
931 {
932     Q_D(QModelingObject);
933     const QMetaObject *metaObject = this->metaObject();
934
935     d->propertyGroups << QStringLiteral("QObject");
936     d->groupProperties.insert(QStringLiteral("QObject"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("objectName"))));
937
938     d->propertyGroups << QStringLiteral("QUmlElement");
939     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedComments"))));
940     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedElements"))));
941     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("owner"))));
942
943     d->propertyGroups << QStringLiteral("QUmlTemplateableElement");
944     d->groupProperties.insert(QStringLiteral("QUmlTemplateableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedTemplateSignature"))));
945     d->groupProperties.insert(QStringLiteral("QUmlTemplateableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("templateBindings"))));
946
947     d->propertyGroups << QStringLiteral("QUmlNamedElement");
948     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("clientDependencies"))));
949     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("name"))));
950     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("nameExpression"))));
951     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("namespace_"))));
952     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("qualifiedName"))));
953     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("visibility"))));
954
955     d->propertyGroups << QStringLiteral("QUmlNamespace");
956     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("elementImports"))));
957     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("importedMembers"))));
958     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("members"))));
959     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedMembers"))));
960     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedRules"))));
961     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("packageImports"))));
962
963     d->propertyGroups << QStringLiteral("QUmlRedefinableElement");
964     d->groupProperties.insert(QStringLiteral("QUmlRedefinableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isLeaf"))));
965     d->groupProperties.insert(QStringLiteral("QUmlRedefinableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("redefinedElements"))));
966     d->groupProperties.insert(QStringLiteral("QUmlRedefinableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("redefinitionContexts"))));
967
968     d->propertyGroups << QStringLiteral("QUmlFeature");
969     d->groupProperties.insert(QStringLiteral("QUmlFeature"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("featuringClassifiers"))));
970     d->groupProperties.insert(QStringLiteral("QUmlFeature"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isStatic"))));
971
972     d->propertyGroups << QStringLiteral("QUmlBehavioralFeature");
973     d->groupProperties.insert(QStringLiteral("QUmlBehavioralFeature"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("concurrency"))));
974     d->groupProperties.insert(QStringLiteral("QUmlBehavioralFeature"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isAbstract"))));
975     d->groupProperties.insert(QStringLiteral("QUmlBehavioralFeature"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("methods"))));
976     d->groupProperties.insert(QStringLiteral("QUmlBehavioralFeature"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedParameterSets"))));
977
978     d->propertyGroups << QStringLiteral("QUmlParameterableElement");
979     d->groupProperties.insert(QStringLiteral("QUmlParameterableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("owningTemplateParameter"))));
980
981     d->propertyGroups << QStringLiteral("QUmlOperation");
982     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("bodyCondition"))));
983     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("class_"))));
984     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("datatype"))));
985     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("interface_"))));
986     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isOrdered"))));
987     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isQuery"))));
988     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isUnique"))));
989     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("lower"))));
990     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedParameters"))));
991     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("postconditions"))));
992     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("preconditions"))));
993     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("raisedExceptions"))));
994     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("redefinedOperations"))));
995     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("templateParameter"))));
996     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("type"))));
997     d->groupProperties.insert(QStringLiteral("QUmlOperation"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("upper"))));
998 }
999
1000 void QUmlOperationObject::setPropertyData()
1001 {
1002     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, AggregationRole, QStringLiteral("composite"));
1003     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, PropertyClassRole, QStringLiteral("QUmlElement"));
1004     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, IsDerivedRole, false);
1005     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, IsDerivedUnionRole, false);
1006     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, DocumentationRole, QStringLiteral("The Comments owned by this element."));
1007     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, RedefinedPropertiesRole, QStringLiteral(""));
1008     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
1009     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, OppositeEndRole, QStringLiteral(""));
1010
1011     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, AggregationRole, QStringLiteral("composite"));
1012     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, PropertyClassRole, QStringLiteral("QUmlElement"));
1013     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, IsDerivedRole, true);
1014     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, IsDerivedUnionRole, true);
1015     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, DocumentationRole, QStringLiteral("The Elements owned by this element."));
1016     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, RedefinedPropertiesRole, QStringLiteral(""));
1017     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, SubsettedPropertiesRole, QStringLiteral(""));
1018     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, OppositeEndRole, QStringLiteral("Element-owner"));
1019
1020     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, AggregationRole, QStringLiteral("none"));
1021     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, PropertyClassRole, QStringLiteral("QUmlElement"));
1022     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, IsDerivedRole, true);
1023     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, IsDerivedUnionRole, true);
1024     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, DocumentationRole, QStringLiteral("The Element that owns this element."));
1025     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, RedefinedPropertiesRole, QStringLiteral(""));
1026     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, SubsettedPropertiesRole, QStringLiteral(""));
1027     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, OppositeEndRole, QStringLiteral("Element-ownedElement"));
1028
1029     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, AggregationRole, QStringLiteral("composite"));
1030     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, PropertyClassRole, QStringLiteral("QUmlTemplateableElement"));
1031     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, IsDerivedRole, false);
1032     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, IsDerivedUnionRole, false);
1033     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, DocumentationRole, QStringLiteral("The optional template signature specifying the formal template parameters."));
1034     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, RedefinedPropertiesRole, QStringLiteral(""));
1035     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
1036     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, OppositeEndRole, QStringLiteral("TemplateSignature-template"));
1037
1038     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, AggregationRole, QStringLiteral("composite"));
1039     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, PropertyClassRole, QStringLiteral("QUmlTemplateableElement"));
1040     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, IsDerivedRole, false);
1041     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, IsDerivedUnionRole, false);
1042     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, DocumentationRole, QStringLiteral("The optional bindings from this element to templates."));
1043     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, RedefinedPropertiesRole, QStringLiteral(""));
1044     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1045     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, OppositeEndRole, QStringLiteral("TemplateBinding-boundElement"));
1046
1047     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, AggregationRole, QStringLiteral("none"));
1048     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1049     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, IsDerivedRole, false);
1050     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, IsDerivedUnionRole, false);
1051     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, DocumentationRole, QStringLiteral("Indicates the dependencies that reference the client."));
1052     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, RedefinedPropertiesRole, QStringLiteral(""));
1053     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship"));
1054     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, OppositeEndRole, QStringLiteral("Dependency-client"));
1055
1056     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, AggregationRole, QStringLiteral("none"));
1057     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1058     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, IsDerivedRole, false);
1059     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, IsDerivedUnionRole, false);
1060     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, DocumentationRole, QStringLiteral("The name of the NamedElement."));
1061     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, RedefinedPropertiesRole, QStringLiteral(""));
1062     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, SubsettedPropertiesRole, QStringLiteral(""));
1063     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, OppositeEndRole, QStringLiteral(""));
1064
1065     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, AggregationRole, QStringLiteral("composite"));
1066     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1067     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, IsDerivedRole, false);
1068     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, IsDerivedUnionRole, false);
1069     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, DocumentationRole, QStringLiteral("The string expression used to define the name of this named element."));
1070     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, RedefinedPropertiesRole, QStringLiteral(""));
1071     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
1072     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, OppositeEndRole, QStringLiteral(""));
1073
1074     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, AggregationRole, QStringLiteral("none"));
1075     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1076     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, IsDerivedRole, true);
1077     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, IsDerivedUnionRole, true);
1078     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, DocumentationRole, QStringLiteral("Specifies the namespace that owns the NamedElement."));
1079     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, RedefinedPropertiesRole, QStringLiteral(""));
1080     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, SubsettedPropertiesRole, QStringLiteral("A_member_memberNamespace-memberNamespace Element-owner"));
1081     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, OppositeEndRole, QStringLiteral("Namespace-ownedMember"));
1082
1083     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, AggregationRole, QStringLiteral("none"));
1084     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1085     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, IsDerivedRole, true);
1086     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, IsDerivedUnionRole, false);
1087     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, DocumentationRole, QStringLiteral("A name which allows the NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from the names of the containing namespaces starting at the root of the hierarchy and ending with the name of the NamedElement itself."));
1088     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, RedefinedPropertiesRole, QStringLiteral(""));
1089     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, SubsettedPropertiesRole, QStringLiteral(""));
1090     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, OppositeEndRole, QStringLiteral(""));
1091
1092     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, AggregationRole, QStringLiteral("none"));
1093     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1094     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, IsDerivedRole, false);
1095     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, IsDerivedUnionRole, false);
1096     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, DocumentationRole, QStringLiteral("Determines where the NamedElement appears within different Namespaces within the overall model, and its accessibility."));
1097     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, RedefinedPropertiesRole, QStringLiteral(""));
1098     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, SubsettedPropertiesRole, QStringLiteral(""));
1099     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, OppositeEndRole, QStringLiteral(""));
1100
1101     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, AggregationRole, QStringLiteral("composite"));
1102     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1103     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, IsDerivedRole, false);
1104     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, IsDerivedUnionRole, false);
1105     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, DocumentationRole, QStringLiteral("References the ElementImports owned by the Namespace."));
1106     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, RedefinedPropertiesRole, QStringLiteral(""));
1107     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1108     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, OppositeEndRole, QStringLiteral("ElementImport-importingNamespace"));
1109
1110     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, AggregationRole, QStringLiteral("none"));
1111     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1112     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, IsDerivedRole, true);
1113     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, IsDerivedUnionRole, false);
1114     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, DocumentationRole, QStringLiteral("References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports."));
1115     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, RedefinedPropertiesRole, QStringLiteral(""));
1116     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member"));
1117     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, OppositeEndRole, QStringLiteral(""));
1118
1119     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, AggregationRole, QStringLiteral("none"));
1120     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1121     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, IsDerivedRole, true);
1122     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, IsDerivedUnionRole, true);
1123     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, DocumentationRole, QStringLiteral("A collection of NamedElements identifiable within the Namespace, either by being owned or by being introduced by importing or inheritance."));
1124     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, RedefinedPropertiesRole, QStringLiteral(""));
1125     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, SubsettedPropertiesRole, QStringLiteral(""));
1126     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, OppositeEndRole, QStringLiteral(""));
1127
1128     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, AggregationRole, QStringLiteral("composite"));
1129     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1130     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, IsDerivedRole, true);
1131     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, IsDerivedUnionRole, true);
1132     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, DocumentationRole, QStringLiteral("A collection of NamedElements owned by the Namespace."));
1133     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, RedefinedPropertiesRole, QStringLiteral(""));
1134     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member Element-ownedElement"));
1135     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, OppositeEndRole, QStringLiteral("NamedElement-namespace"));
1136
1137     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, AggregationRole, QStringLiteral("composite"));
1138     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1139     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, IsDerivedRole, false);
1140     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, IsDerivedUnionRole, false);
1141     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, DocumentationRole, QStringLiteral("Specifies a set of Constraints owned by this Namespace."));
1142     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, RedefinedPropertiesRole, QStringLiteral(""));
1143     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
1144     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, OppositeEndRole, QStringLiteral("Constraint-context"));
1145
1146     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, AggregationRole, QStringLiteral("composite"));
1147     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1148     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, IsDerivedRole, false);
1149     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, IsDerivedUnionRole, false);
1150     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, DocumentationRole, QStringLiteral("References the PackageImports owned by the Namespace."));
1151     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, RedefinedPropertiesRole, QStringLiteral(""));
1152     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1153     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, OppositeEndRole, QStringLiteral("PackageImport-importingNamespace"));
1154
1155     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, AggregationRole, QStringLiteral("none"));
1156     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, PropertyClassRole, QStringLiteral("QUmlRedefinableElement"));
1157     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, IsDerivedRole, false);
1158     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, IsDerivedUnionRole, false);
1159     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, DocumentationRole, QStringLiteral("Indicates whether it is possible to further redefine a RedefinableElement. If the value is true, then it is not possible to further redefine the RedefinableElement. Note that this property is preserved through package merge operations; that is, the capability to redefine a RedefinableElement (i.e., isLeaf=false) must be preserved in the resulting RedefinableElement of a package merge operation where a RedefinableElement with isLeaf=false is merged with a matching RedefinableElement with isLeaf=true: the resulting RedefinableElement will have isLeaf=false. Default value is false."));
1160     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, RedefinedPropertiesRole, QStringLiteral(""));
1161     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, SubsettedPropertiesRole, QStringLiteral(""));
1162     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, OppositeEndRole, QStringLiteral(""));
1163
1164     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, AggregationRole, QStringLiteral("none"));
1165     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, PropertyClassRole, QStringLiteral("QUmlRedefinableElement"));
1166     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, IsDerivedRole, true);
1167     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, IsDerivedUnionRole, true);
1168     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, DocumentationRole, QStringLiteral("The redefinable element that is being redefined by this element."));
1169     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, RedefinedPropertiesRole, QStringLiteral(""));
1170     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, SubsettedPropertiesRole, QStringLiteral(""));
1171     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, OppositeEndRole, QStringLiteral(""));
1172
1173     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, AggregationRole, QStringLiteral("none"));
1174     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, PropertyClassRole, QStringLiteral("QUmlRedefinableElement"));
1175     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, IsDerivedRole, true);
1176     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, IsDerivedUnionRole, true);
1177     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, DocumentationRole, QStringLiteral("References the contexts that this element may be redefined from."));
1178     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, RedefinedPropertiesRole, QStringLiteral(""));
1179     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, SubsettedPropertiesRole, QStringLiteral(""));
1180     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, OppositeEndRole, QStringLiteral(""));
1181
1182     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, AggregationRole, QStringLiteral("none"));
1183     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, PropertyClassRole, QStringLiteral("QUmlFeature"));
1184     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, IsDerivedRole, true);
1185     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, IsDerivedUnionRole, true);
1186     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, DocumentationRole, QStringLiteral("The Classifiers that have this Feature as a feature."));
1187     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, RedefinedPropertiesRole, QStringLiteral(""));
1188     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, SubsettedPropertiesRole, QStringLiteral("A_member_memberNamespace-memberNamespace"));
1189     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, featuringClassifiers, OppositeEndRole, QStringLiteral("Classifier-feature"));
1190
1191     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, AggregationRole, QStringLiteral("none"));
1192     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, PropertyClassRole, QStringLiteral("QUmlFeature"));
1193     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, IsDerivedRole, false);
1194     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, IsDerivedUnionRole, false);
1195     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, DocumentationRole, QStringLiteral("Specifies whether this feature characterizes individual instances classified by the classifier (false) or the classifier itself (true)."));
1196     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, RedefinedPropertiesRole, QStringLiteral(""));
1197     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, SubsettedPropertiesRole, QStringLiteral(""));
1198     Q_DECLARE_METAPROPERTY_INFO(QUmlFeature, isStatic, OppositeEndRole, QStringLiteral(""));
1199
1200     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, AggregationRole, QStringLiteral("none"));
1201     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, PropertyClassRole, QStringLiteral("QUmlBehavioralFeature"));
1202     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, IsDerivedRole, false);
1203     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, IsDerivedUnionRole, false);
1204     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, DocumentationRole, QStringLiteral("Specifies the semantics of concurrent calls to the same passive instance (i.e., an instance originating from a class with isActive being false). Active instances control access to their own behavioral features."));
1205     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, RedefinedPropertiesRole, QStringLiteral(""));
1206     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, SubsettedPropertiesRole, QStringLiteral(""));
1207     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, concurrency, OppositeEndRole, QStringLiteral(""));
1208
1209     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, AggregationRole, QStringLiteral("none"));
1210     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, PropertyClassRole, QStringLiteral("QUmlBehavioralFeature"));
1211     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, IsDerivedRole, false);
1212     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, IsDerivedUnionRole, false);
1213     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, DocumentationRole, QStringLiteral("If true, then the behavioral feature does not have an implementation, and one must be supplied by a more specific element. If false, the behavioral feature must have an implementation in the classifier or one must be inherited from a more general element."));
1214     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, RedefinedPropertiesRole, QStringLiteral(""));
1215     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, SubsettedPropertiesRole, QStringLiteral(""));
1216     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, isAbstract, OppositeEndRole, QStringLiteral(""));
1217
1218     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, AggregationRole, QStringLiteral("none"));
1219     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, PropertyClassRole, QStringLiteral("QUmlBehavioralFeature"));
1220     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, IsDerivedRole, false);
1221     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, IsDerivedUnionRole, false);
1222     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, DocumentationRole, QStringLiteral("A behavioral description that implements the behavioral feature. There may be at most one behavior for a particular pairing of a classifier (as owner of the behavior) and a behavioral feature (as specification of the behavior)."));
1223     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, RedefinedPropertiesRole, QStringLiteral(""));
1224     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, SubsettedPropertiesRole, QStringLiteral(""));
1225     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, methods, OppositeEndRole, QStringLiteral("Behavior-specification"));
1226
1227     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, AggregationRole, QStringLiteral("composite"));
1228     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, PropertyClassRole, QStringLiteral("QUmlBehavioralFeature"));
1229     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, IsDerivedRole, false);
1230     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, IsDerivedUnionRole, false);
1231     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, DocumentationRole, QStringLiteral("Specifies the ordered set of formal parameters of this BehavioralFeature."));
1232     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, RedefinedPropertiesRole, QStringLiteral(""));
1233     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
1234     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameters, OppositeEndRole, QStringLiteral(""));
1235
1236     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, AggregationRole, QStringLiteral("composite"));
1237     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, PropertyClassRole, QStringLiteral("QUmlBehavioralFeature"));
1238     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, IsDerivedRole, false);
1239     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, IsDerivedUnionRole, false);
1240     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, DocumentationRole, QStringLiteral("The ParameterSets owned by this BehavioralFeature."));
1241     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, RedefinedPropertiesRole, QStringLiteral(""));
1242     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
1243     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, ownedParameterSets, OppositeEndRole, QStringLiteral(""));
1244
1245     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, AggregationRole, QStringLiteral("none"));
1246     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, PropertyClassRole, QStringLiteral("QUmlBehavioralFeature"));
1247     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, IsDerivedRole, false);
1248     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, IsDerivedUnionRole, false);
1249     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, DocumentationRole, QStringLiteral("References the Types representing exceptions that may be raised during an invocation of this feature."));
1250     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, RedefinedPropertiesRole, QStringLiteral(""));
1251     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, SubsettedPropertiesRole, QStringLiteral(""));
1252     Q_DECLARE_METAPROPERTY_INFO(QUmlBehavioralFeature, raisedExceptions, OppositeEndRole, QStringLiteral(""));
1253
1254     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, AggregationRole, QStringLiteral("none"));
1255     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, PropertyClassRole, QStringLiteral("QUmlParameterableElement"));
1256     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, IsDerivedRole, false);
1257     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, IsDerivedUnionRole, false);
1258     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, DocumentationRole, QStringLiteral("The formal template parameter that owns this element."));
1259     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, RedefinedPropertiesRole, QStringLiteral(""));
1260     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, SubsettedPropertiesRole, QStringLiteral("ParameterableElement-templateParameter Element-owner"));
1261     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, OppositeEndRole, QStringLiteral("TemplateParameter-ownedParameteredElement"));
1262
1263     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, AggregationRole, QStringLiteral("none"));
1264     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, PropertyClassRole, QStringLiteral("QUmlParameterableElement"));
1265     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, IsDerivedRole, false);
1266     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, IsDerivedUnionRole, false);
1267     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, DocumentationRole, QStringLiteral("The template parameter that exposes this element as a formal parameter."));
1268     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, RedefinedPropertiesRole, QStringLiteral(""));
1269     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, SubsettedPropertiesRole, QStringLiteral(""));
1270     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, OppositeEndRole, QStringLiteral("TemplateParameter-parameteredElement"));
1271
1272     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, AggregationRole, QStringLiteral("composite"));
1273     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, PropertyClassRole, QStringLiteral("QUmlOperation"));
1274     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, IsDerivedRole, false);
1275     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, IsDerivedUnionRole, false);
1276     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, DocumentationRole, QStringLiteral("An optional Constraint on the result values of an invocation of this Operation."));
1277     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, RedefinedPropertiesRole, QStringLiteral(""));
1278     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedRule"));
1279     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, bodyCondition, OppositeEndRole, QStringLiteral(""));
1280
1281     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, AggregationRole, QStringLiteral("none"));
1282     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, PropertyClassRole, QStringLiteral("QUmlOperation"));
1283     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, IsDerivedRole, false);
1284     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, IsDerivedUnionRole, false);
1285     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, DocumentationRole, QStringLiteral("The class that owns the operation."));
1286     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, RedefinedPropertiesRole, QStringLiteral(""));
1287     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, SubsettedPropertiesRole, QStringLiteral("Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace"));
1288     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, class_, OppositeEndRole, QStringLiteral("Class-ownedOperation"));
1289
1290     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, AggregationRole, QStringLiteral("none"));
1291     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, PropertyClassRole, QStringLiteral("QUmlOperation"));
1292     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, IsDerivedRole, false);
1293     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, IsDerivedUnionRole, false);
1294     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, DocumentationRole, QStringLiteral("The DataType that owns this Operation."));
1295     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, RedefinedPropertiesRole, QStringLiteral(""));
1296     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, SubsettedPropertiesRole, QStringLiteral("Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace"));
1297     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, datatype, OppositeEndRole, QStringLiteral("DataType-ownedOperation"));
1298
1299     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, AggregationRole, QStringLiteral("none"));
1300     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, PropertyClassRole, QStringLiteral("QUmlOperation"));
1301     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, IsDerivedRole, false);
1302     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, IsDerivedUnionRole, false);
1303     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, DocumentationRole, QStringLiteral("The Interface that owns this Operation."));
1304     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, RedefinedPropertiesRole, QStringLiteral(""));
1305     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, SubsettedPropertiesRole, QStringLiteral("Feature-featuringClassifier RedefinableElement-redefinitionContext NamedElement-namespace"));
1306     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, interface_, OppositeEndRole, QStringLiteral("Interface-ownedOperation"));
1307
1308     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, AggregationRole, QStringLiteral("none"));
1309     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, PropertyClassRole, QStringLiteral("QUmlOperation"));
1310     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, IsDerivedRole, true);
1311     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, IsDerivedUnionRole, false);
1312     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, DocumentationRole, QStringLiteral("This information is derived from the return result for this Operation.Specifies whether the return parameter is ordered or not, if present."));
1313     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, RedefinedPropertiesRole, QStringLiteral(""));
1314     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, SubsettedPropertiesRole, QStringLiteral(""));
1315     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isOrdered, OppositeEndRole, QStringLiteral(""));
1316
1317     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, AggregationRole, QStringLiteral("none"));
1318     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, PropertyClassRole, QStringLiteral("QUmlOperation"));
1319     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, IsDerivedRole, false);
1320     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, IsDerivedUnionRole, false);
1321     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, DocumentationRole, QStringLiteral("Specifies whether an execution of the BehavioralFeature leaves the state of the system unchanged (isQuery=true) or whether side effects may occur (isQuery=false)."));
1322     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, RedefinedPropertiesRole, QStringLiteral(""));
1323     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, SubsettedPropertiesRole, QStringLiteral(""));
1324     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isQuery, OppositeEndRole, QStringLiteral(""));
1325
1326     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, AggregationRole, QStringLiteral("none"));
1327     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, PropertyClassRole, QStringLiteral("QUmlOperation"));
1328     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, IsDerivedRole, true);
1329     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, IsDerivedUnionRole, false);
1330     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, DocumentationRole, QStringLiteral("Specifies whether the return parameter is unique or not, if present.This information is derived from the return result for this Operation."));
1331     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, RedefinedPropertiesRole, QStringLiteral(""));
1332     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, SubsettedPropertiesRole, QStringLiteral(""));
1333     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, isUnique, OppositeEndRole, QStringLiteral(""));
1334
1335     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, AggregationRole, QStringLiteral("none"));
1336     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, PropertyClassRole, QStringLiteral("QUmlOperation"));
1337     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, IsDerivedRole, true);
1338     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, IsDerivedUnionRole, false);
1339     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, DocumentationRole, QStringLiteral("This information is derived from the return result for this Operation.Specifies the lower multiplicity of the return parameter, if present."));
1340     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, RedefinedPropertiesRole, QStringLiteral(""));
1341     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, SubsettedPropertiesRole, QStringLiteral(""));
1342     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, lower, OppositeEndRole, QStringLiteral(""));
1343
1344     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, AggregationRole, QStringLiteral("composite"));
1345     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, PropertyClassRole, QStringLiteral("QUmlOperation"));
1346     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, IsDerivedRole, false);
1347     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, IsDerivedUnionRole, false);
1348     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, DocumentationRole, QStringLiteral("Specifies the ordered set of formal parameters of this BehavioralFeature.Specifies the parameters owned by this Operation."));
1349     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, RedefinedPropertiesRole, QStringLiteral("BehavioralFeature-ownedParameter"));
1350     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, SubsettedPropertiesRole, QStringLiteral(""));
1351     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, ownedParameters, OppositeEndRole, QStringLiteral("Parameter-operation"));
1352
1353     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, AggregationRole, QStringLiteral("composite"));
1354     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, PropertyClassRole, QStringLiteral("QUmlOperation"));
1355     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, IsDerivedRole, false);
1356     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, IsDerivedUnionRole, false);
1357     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, DocumentationRole, QStringLiteral("An optional set of Constraints specifying the state of the system when the Operation is completed."));
1358     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, RedefinedPropertiesRole, QStringLiteral(""));
1359     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedRule"));
1360     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, postconditions, OppositeEndRole, QStringLiteral(""));
1361
1362     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, AggregationRole, QStringLiteral("composite"));
1363     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, PropertyClassRole, QStringLiteral("QUmlOperation"));
1364     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, IsDerivedRole, false);
1365     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, IsDerivedUnionRole, false);
1366     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, DocumentationRole, QStringLiteral("An optional set of Constraints on the state of the system when the Operation is invoked."));
1367     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, RedefinedPropertiesRole, QStringLiteral(""));
1368     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedRule"));
1369     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, preconditions, OppositeEndRole, QStringLiteral(""));
1370
1371     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, AggregationRole, QStringLiteral("none"));
1372     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, PropertyClassRole, QStringLiteral("QUmlOperation"));
1373     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, IsDerivedRole, false);
1374     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, IsDerivedUnionRole, false);
1375     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, DocumentationRole, QStringLiteral("References the Types representing exceptions that may be raised during an invocation of this operation."));
1376     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, RedefinedPropertiesRole, QStringLiteral("BehavioralFeature-raisedException"));
1377     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, SubsettedPropertiesRole, QStringLiteral(""));
1378     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, raisedExceptions, OppositeEndRole, QStringLiteral(""));
1379
1380     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, AggregationRole, QStringLiteral("none"));
1381     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, PropertyClassRole, QStringLiteral("QUmlOperation"));
1382     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, IsDerivedRole, false);
1383     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, IsDerivedUnionRole, false);
1384     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, DocumentationRole, QStringLiteral("References the Operations that are redefined by this Operation."));
1385     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, RedefinedPropertiesRole, QStringLiteral(""));
1386     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, SubsettedPropertiesRole, QStringLiteral("RedefinableElement-redefinedElement"));
1387     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, redefinedOperations, OppositeEndRole, QStringLiteral(""));
1388
1389     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, AggregationRole, QStringLiteral("none"));
1390     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, PropertyClassRole, QStringLiteral("QUmlOperation"));
1391     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, IsDerivedRole, false);
1392     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, IsDerivedUnionRole, false);
1393     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, DocumentationRole, QStringLiteral("The template parameter that exposes this element as a formal parameter."));
1394     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, RedefinedPropertiesRole, QStringLiteral("ParameterableElement-templateParameter"));
1395     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, SubsettedPropertiesRole, QStringLiteral(""));
1396     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, templateParameter, OppositeEndRole, QStringLiteral("OperationTemplateParameter-parameteredElement"));
1397
1398     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, AggregationRole, QStringLiteral("none"));
1399     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, PropertyClassRole, QStringLiteral("QUmlOperation"));
1400     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, IsDerivedRole, true);
1401     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, IsDerivedUnionRole, false);
1402     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, DocumentationRole, QStringLiteral("This information is derived from the return result for this Operation.Specifies the return result of the operation, if present."));
1403     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, RedefinedPropertiesRole, QStringLiteral(""));
1404     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, SubsettedPropertiesRole, QStringLiteral(""));
1405     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, type, OppositeEndRole, QStringLiteral(""));
1406
1407     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, AggregationRole, QStringLiteral("none"));
1408     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, PropertyClassRole, QStringLiteral("QUmlOperation"));
1409     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, IsDerivedRole, true);
1410     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, IsDerivedUnionRole, false);
1411     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, DocumentationRole, QStringLiteral("This information is derived from the return result for this Operation.Specifies the upper multiplicity of the return parameter, if present."));
1412     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, RedefinedPropertiesRole, QStringLiteral(""));
1413     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, SubsettedPropertiesRole, QStringLiteral(""));
1414     Q_DECLARE_METAPROPERTY_INFO(QUmlOperation, upper, OppositeEndRole, QStringLiteral(""));
1415
1416 }
1417
1418 QT_END_NAMESPACE
1419