Fix reset of properties with default value
[qt:qtmodeling.git] / src / uml / qobjects / qumlsignalobject.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 "qumlsignalobject_p.h"
42 #include "private/qmodelingobject_p.h"
43
44 #include <QtUml/QUmlSignal>
45 #include <QtUml/QUmlClassifier>
46 #include <QtUml/QUmlClassifierTemplateParameter>
47 #include <QtUml/QUmlCollaborationUse>
48 #include <QtUml/QUmlComment>
49 #include <QtUml/QUmlConstraint>
50 #include <QtUml/QUmlDependency>
51 #include <QtUml/QUmlElement>
52 #include <QtUml/QUmlElementImport>
53 #include <QtUml/QUmlFeature>
54 #include <QtUml/QUmlGeneralization>
55 #include <QtUml/QUmlGeneralizationSet>
56 #include <QtUml/QUmlNamedElement>
57 #include <QtUml/QUmlNamespace>
58 #include <QtUml/QUmlPackage>
59 #include <QtUml/QUmlPackageableElement>
60 #include <QtUml/QUmlPackageImport>
61 #include <QtUml/QUmlParameterableElement>
62 #include <QtUml/QUmlProperty>
63 #include <QtUml/QUmlRedefinableElement>
64 #include <QtUml/QUmlRedefinableTemplateSignature>
65 #include <QtUml/QUmlStringExpression>
66 #include <QtUml/QUmlSubstitution>
67 #include <QtUml/QUmlTemplateBinding>
68 #include <QtUml/QUmlTemplateParameter>
69 #include <QtUml/QUmlTemplateSignature>
70 #include <QtUml/QUmlType>
71 #include <QtUml/QUmlUseCase>
72
73 QT_BEGIN_NAMESPACE
74
75 QUmlSignalObject::QUmlSignalObject(QUmlSignal *modelingElement)
76 {
77     setProperty("modelingElement", QVariant::fromValue(static_cast<QModelingElement *>(modelingElement)));
78     setGroupProperties();
79     setPropertyData();
80 }
81
82 // OWNED ATTRIBUTES [Element]
83
84 const QSet<QObject *> QUmlSignalObject::ownedComments() const
85 {
86     QSet<QObject *> set;
87     foreach (QUmlComment *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedComments())
88         set.insert(element->asQModelingObject());
89     return set;
90 }
91
92 const QSet<QObject *> QUmlSignalObject::ownedElements() const
93 {
94     QSet<QObject *> set;
95     foreach (QUmlElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedElements())
96         set.insert(element->asQModelingObject());
97     return set;
98 }
99
100 QObject *QUmlSignalObject::owner() const
101 {
102     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->owner())
103         return 0;
104     else
105         return qmodelingelementproperty_cast<QUmlSignal *>(this)->owner()->asQModelingObject();
106 }
107
108 // OWNED ATTRIBUTES [NamedElement]
109
110 const QSet<QObject *> QUmlSignalObject::clientDependencies() const
111 {
112     QSet<QObject *> set;
113     foreach (QUmlDependency *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->clientDependencies())
114         set.insert(element->asQModelingObject());
115     return set;
116 }
117
118 QString QUmlSignalObject::name() const
119 {
120     return qmodelingelementproperty_cast<QUmlSignal *>(this)->name();
121 }
122
123 QObject *QUmlSignalObject::nameExpression() const
124 {
125     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->nameExpression())
126         return 0;
127     else
128         return qmodelingelementproperty_cast<QUmlSignal *>(this)->nameExpression()->asQModelingObject();
129 }
130
131 QObject *QUmlSignalObject::namespace_() const
132 {
133     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->namespace_())
134         return 0;
135     else
136         return qmodelingelementproperty_cast<QUmlSignal *>(this)->namespace_()->asQModelingObject();
137 }
138
139 QString QUmlSignalObject::qualifiedName() const
140 {
141     return qmodelingelementproperty_cast<QUmlSignal *>(this)->qualifiedName();
142 }
143
144 // OWNED ATTRIBUTES [Namespace]
145
146 const QSet<QObject *> QUmlSignalObject::elementImports() const
147 {
148     QSet<QObject *> set;
149     foreach (QUmlElementImport *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->elementImports())
150         set.insert(element->asQModelingObject());
151     return set;
152 }
153
154 const QSet<QObject *> QUmlSignalObject::importedMembers() const
155 {
156     QSet<QObject *> set;
157     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->importedMembers())
158         set.insert(element->asQModelingObject());
159     return set;
160 }
161
162 const QSet<QObject *> QUmlSignalObject::members() const
163 {
164     QSet<QObject *> set;
165     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->members())
166         set.insert(element->asQModelingObject());
167     return set;
168 }
169
170 const QSet<QObject *> QUmlSignalObject::ownedMembers() const
171 {
172     QSet<QObject *> set;
173     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedMembers())
174         set.insert(element->asQModelingObject());
175     return set;
176 }
177
178 const QSet<QObject *> QUmlSignalObject::ownedRules() const
179 {
180     QSet<QObject *> set;
181     foreach (QUmlConstraint *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedRules())
182         set.insert(element->asQModelingObject());
183     return set;
184 }
185
186 const QSet<QObject *> QUmlSignalObject::packageImports() const
187 {
188     QSet<QObject *> set;
189     foreach (QUmlPackageImport *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->packageImports())
190         set.insert(element->asQModelingObject());
191     return set;
192 }
193
194 // OWNED ATTRIBUTES [ParameterableElement]
195
196 QObject *QUmlSignalObject::owningTemplateParameter() const
197 {
198     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->owningTemplateParameter())
199         return 0;
200     else
201         return qmodelingelementproperty_cast<QUmlSignal *>(this)->owningTemplateParameter()->asQModelingObject();
202 }
203
204 // OWNED ATTRIBUTES [PackageableElement]
205
206 QtUml::VisibilityKind QUmlSignalObject::visibility() const
207 {
208     return qmodelingelementproperty_cast<QUmlSignal *>(this)->visibility();
209 }
210
211 // OWNED ATTRIBUTES [Type]
212
213 QObject *QUmlSignalObject::package() const
214 {
215     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->package())
216         return 0;
217     else
218         return qmodelingelementproperty_cast<QUmlSignal *>(this)->package()->asQModelingObject();
219 }
220
221 // OWNED ATTRIBUTES [RedefinableElement]
222
223 bool QUmlSignalObject::isLeaf() const
224 {
225     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isLeaf();
226 }
227
228 const QSet<QObject *> QUmlSignalObject::redefinedElements() const
229 {
230     QSet<QObject *> set;
231     foreach (QUmlRedefinableElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->redefinedElements())
232         set.insert(element->asQModelingObject());
233     return set;
234 }
235
236 const QSet<QObject *> QUmlSignalObject::redefinitionContexts() const
237 {
238     QSet<QObject *> set;
239     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->redefinitionContexts())
240         set.insert(element->asQModelingObject());
241     return set;
242 }
243
244 // OWNED ATTRIBUTES [TemplateableElement]
245
246 const QSet<QObject *> QUmlSignalObject::templateBindings() const
247 {
248     QSet<QObject *> set;
249     foreach (QUmlTemplateBinding *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->templateBindings())
250         set.insert(element->asQModelingObject());
251     return set;
252 }
253
254 // OWNED ATTRIBUTES [Classifier]
255
256 const QSet<QObject *> QUmlSignalObject::attributes() const
257 {
258     QSet<QObject *> set;
259     foreach (QUmlProperty *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->attributes())
260         set.insert(element->asQModelingObject());
261     return set;
262 }
263
264 const QSet<QObject *> QUmlSignalObject::collaborationUses() const
265 {
266     QSet<QObject *> set;
267     foreach (QUmlCollaborationUse *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->collaborationUses())
268         set.insert(element->asQModelingObject());
269     return set;
270 }
271
272 const QSet<QObject *> QUmlSignalObject::features() const
273 {
274     QSet<QObject *> set;
275     foreach (QUmlFeature *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->features())
276         set.insert(element->asQModelingObject());
277     return set;
278 }
279
280 const QSet<QObject *> QUmlSignalObject::generals() const
281 {
282     QSet<QObject *> set;
283     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->generals())
284         set.insert(element->asQModelingObject());
285     return set;
286 }
287
288 const QSet<QObject *> QUmlSignalObject::generalizations() const
289 {
290     QSet<QObject *> set;
291     foreach (QUmlGeneralization *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->generalizations())
292         set.insert(element->asQModelingObject());
293     return set;
294 }
295
296 const QSet<QObject *> QUmlSignalObject::inheritedMembers() const
297 {
298     QSet<QObject *> set;
299     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->inheritedMembers())
300         set.insert(element->asQModelingObject());
301     return set;
302 }
303
304 bool QUmlSignalObject::isAbstract() const
305 {
306     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isAbstract();
307 }
308
309 bool QUmlSignalObject::isFinalSpecialization() const
310 {
311     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isFinalSpecialization();
312 }
313
314 QObject *QUmlSignalObject::ownedTemplateSignature() const
315 {
316     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedTemplateSignature())
317         return 0;
318     else
319         return qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedTemplateSignature()->asQModelingObject();
320 }
321
322 const QSet<QObject *> QUmlSignalObject::ownedUseCases() const
323 {
324     QSet<QObject *> set;
325     foreach (QUmlUseCase *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedUseCases())
326         set.insert(element->asQModelingObject());
327     return set;
328 }
329
330 const QSet<QObject *> QUmlSignalObject::powertypeExtents() const
331 {
332     QSet<QObject *> set;
333     foreach (QUmlGeneralizationSet *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->powertypeExtents())
334         set.insert(element->asQModelingObject());
335     return set;
336 }
337
338 const QSet<QObject *> QUmlSignalObject::redefinedClassifiers() const
339 {
340     QSet<QObject *> set;
341     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->redefinedClassifiers())
342         set.insert(element->asQModelingObject());
343     return set;
344 }
345
346 QObject *QUmlSignalObject::representation() const
347 {
348     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->representation())
349         return 0;
350     else
351         return qmodelingelementproperty_cast<QUmlSignal *>(this)->representation()->asQModelingObject();
352 }
353
354 const QSet<QObject *> QUmlSignalObject::substitutions() const
355 {
356     QSet<QObject *> set;
357     foreach (QUmlSubstitution *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->substitutions())
358         set.insert(element->asQModelingObject());
359     return set;
360 }
361
362 QObject *QUmlSignalObject::templateParameter() const
363 {
364     if (!qmodelingelementproperty_cast<QUmlSignal *>(this)->templateParameter())
365         return 0;
366     else
367         return qmodelingelementproperty_cast<QUmlSignal *>(this)->templateParameter()->asQModelingObject();
368 }
369
370 const QSet<QObject *> QUmlSignalObject::useCases() const
371 {
372     QSet<QObject *> set;
373     foreach (QUmlUseCase *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->useCases())
374         set.insert(element->asQModelingObject());
375     return set;
376 }
377
378 // OWNED ATTRIBUTES [Signal]
379
380 const QList<QObject *> QUmlSignalObject::ownedAttributes() const
381 {
382     QList<QObject *> list;
383     foreach (QUmlProperty *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->ownedAttributes())
384         list.append(element->asQModelingObject());
385     return list;
386 }
387
388 // OPERATIONS [Element]
389
390 QSet<QObject *> QUmlSignalObject::allOwnedElements() const
391 {
392     QSet<QObject *> set;
393     foreach (QUmlElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->allOwnedElements())
394         set.insert(element->asQModelingObject());
395     return set;
396 }
397
398 bool QUmlSignalObject::mustBeOwned() const
399 {
400     return qmodelingelementproperty_cast<QUmlSignal *>(this)->mustBeOwned();
401 }
402
403 // OPERATIONS [NamedElement]
404
405 QList<QObject *> QUmlSignalObject::allNamespaces() const
406 {
407     QList<QObject *> set;
408     foreach (QUmlNamespace *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->allNamespaces())
409         set.append(element->asQModelingObject());
410     return set;
411 }
412
413 QSet<QObject *> QUmlSignalObject::allOwningPackages() const
414 {
415     QSet<QObject *> set;
416     foreach (QUmlPackage *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->allOwningPackages())
417         set.insert(element->asQModelingObject());
418     return set;
419 }
420
421 bool QUmlSignalObject::isDistinguishableFrom(QObject *n, QObject *ns) const
422 {
423     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isDistinguishableFrom(qmodelingelementproperty_cast<QUmlNamedElement *>(n), qmodelingelementproperty_cast<QUmlNamespace *>(ns));
424 }
425
426 QString QUmlSignalObject::separator() const
427 {
428     return qmodelingelementproperty_cast<QUmlSignal *>(this)->separator();
429 }
430
431 // OPERATIONS [Namespace]
432
433 QSet<QObject *> QUmlSignalObject::excludeCollisions(QSet<QObject *> imps) const
434 {
435     QSet<QUmlPackageableElement *> impsConverted;
436     foreach (QObject *object, imps)
437         impsConverted.insert(qmodelingelementproperty_cast<QUmlPackageableElement *>(object));
438     QSet<QObject *> set;
439     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->excludeCollisions(impsConverted))
440         set.insert(element->asQModelingObject());
441     return set;
442 }
443
444 QSet<QString> QUmlSignalObject::getNamesOfMember(QObject *element) const
445 {
446     return qmodelingelementproperty_cast<QUmlSignal *>(this)->getNamesOfMember(qmodelingelementproperty_cast<QUmlNamedElement *>(element));
447 }
448
449 QSet<QObject *> QUmlSignalObject::importMembers(QSet<QObject *> imps) const
450 {
451     QSet<QUmlPackageableElement *> impsConverted;
452     foreach (QObject *object, imps)
453         impsConverted.insert(qmodelingelementproperty_cast<QUmlPackageableElement *>(object));
454     QSet<QObject *> set;
455     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->importMembers(impsConverted))
456         set.insert(element->asQModelingObject());
457     return set;
458 }
459
460 bool QUmlSignalObject::membersAreDistinguishable() const
461 {
462     return qmodelingelementproperty_cast<QUmlSignal *>(this)->membersAreDistinguishable();
463 }
464
465 // OPERATIONS [ParameterableElement]
466
467 bool QUmlSignalObject::isCompatibleWith(QObject *p) const
468 {
469     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isCompatibleWith(qmodelingelementproperty_cast<QUmlParameterableElement *>(p));
470 }
471
472 bool QUmlSignalObject::isTemplateParameter() const
473 {
474     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isTemplateParameter();
475 }
476
477 // OPERATIONS [Type]
478
479 // OPERATIONS [RedefinableElement]
480
481 bool QUmlSignalObject::isConsistentWith(QObject *redefinee) const
482 {
483     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isConsistentWith(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefinee));
484 }
485
486 bool QUmlSignalObject::isRedefinitionContextValid(QObject *redefined) const
487 {
488     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isRedefinitionContextValid(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefined));
489 }
490
491 // OPERATIONS [TemplateableElement]
492
493 QSet<QObject *> QUmlSignalObject::parameterableElements() const
494 {
495     QSet<QObject *> set;
496     foreach (QUmlParameterableElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->parameterableElements())
497         set.insert(element->asQModelingObject());
498     return set;
499 }
500
501 // OPERATIONS [Classifier]
502
503 QSet<QObject *> QUmlSignalObject::allFeatures() const
504 {
505     QSet<QObject *> set;
506     foreach (QUmlFeature *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->allFeatures())
507         set.insert(element->asQModelingObject());
508     return set;
509 }
510
511 QSet<QObject *> QUmlSignalObject::allParents() const
512 {
513     QSet<QObject *> set;
514     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->allParents())
515         set.insert(element->asQModelingObject());
516     return set;
517 }
518
519 bool QUmlSignalObject::conformsTo(QObject *other) const
520 {
521     return qmodelingelementproperty_cast<QUmlSignal *>(this)->conformsTo(qmodelingelementproperty_cast<QUmlClassifier *>(other));
522 }
523
524 bool QUmlSignalObject::hasVisibilityOf(QObject *n) const
525 {
526     return qmodelingelementproperty_cast<QUmlSignal *>(this)->hasVisibilityOf(qmodelingelementproperty_cast<QUmlNamedElement *>(n));
527 }
528
529 QSet<QObject *> QUmlSignalObject::inherit(QSet<QObject *> inhs) const
530 {
531     QSet<QUmlNamedElement *> inhsConverted;
532     foreach (QObject *object, inhs)
533         inhsConverted.insert(qmodelingelementproperty_cast<QUmlNamedElement *>(object));
534     QSet<QObject *> set;
535     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->inherit(inhsConverted))
536         set.insert(element->asQModelingObject());
537     return set;
538 }
539
540 QSet<QObject *> QUmlSignalObject::inheritableMembers(QObject *c) const
541 {
542     QSet<QObject *> set;
543     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->inheritableMembers(qmodelingelementproperty_cast<QUmlClassifier *>(c)))
544         set.insert(element->asQModelingObject());
545     return set;
546 }
547
548 bool QUmlSignalObject::isTemplate() const
549 {
550     return qmodelingelementproperty_cast<QUmlSignal *>(this)->isTemplate();
551 }
552
553 bool QUmlSignalObject::maySpecializeType(QObject *c) const
554 {
555     return qmodelingelementproperty_cast<QUmlSignal *>(this)->maySpecializeType(qmodelingelementproperty_cast<QUmlClassifier *>(c));
556 }
557
558 QSet<QObject *> QUmlSignalObject::parents() const
559 {
560     QSet<QObject *> set;
561     foreach (QUmlClassifier *element, qmodelingelementproperty_cast<QUmlSignal *>(this)->parents())
562         set.insert(element->asQModelingObject());
563     return set;
564 }
565
566 // SLOTS FOR OWNED ATTRIBUTES [Element]
567
568 void QUmlSignalObject::addOwnedComment(QObject *ownedComment)
569 {
570     qmodelingelementproperty_cast<QUmlSignal *>(this)->addOwnedComment(qmodelingelementproperty_cast<QUmlComment *>(ownedComment));
571 }
572
573 void QUmlSignalObject::removeOwnedComment(QObject *ownedComment)
574 {
575     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeOwnedComment(qmodelingelementproperty_cast<QUmlComment *>(ownedComment));
576 }
577
578 void QUmlSignalObject::addOwnedElement(QObject *ownedElement)
579 {
580     qmodelingelementproperty_cast<QUmlSignal *>(this)->addOwnedElement(qmodelingelementproperty_cast<QUmlElement *>(ownedElement));
581 }
582
583 void QUmlSignalObject::removeOwnedElement(QObject *ownedElement)
584 {
585     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeOwnedElement(qmodelingelementproperty_cast<QUmlElement *>(ownedElement));
586 }
587
588 void QUmlSignalObject::setOwner(QObject *owner)
589 {
590     qmodelingelementproperty_cast<QUmlSignal *>(this)->setOwner(qmodelingelementproperty_cast<QUmlElement *>(owner));
591 }
592
593 // SLOTS FOR OWNED ATTRIBUTES [NamedElement]
594
595 void QUmlSignalObject::addClientDependency(QObject *clientDependency)
596 {
597     qmodelingelementproperty_cast<QUmlSignal *>(this)->addClientDependency(qmodelingelementproperty_cast<QUmlDependency *>(clientDependency));
598 }
599
600 void QUmlSignalObject::removeClientDependency(QObject *clientDependency)
601 {
602     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeClientDependency(qmodelingelementproperty_cast<QUmlDependency *>(clientDependency));
603 }
604
605 void QUmlSignalObject::setName(QString name)
606 {
607     qmodelingelementproperty_cast<QUmlSignal *>(this)->setName(name);
608 }
609
610 void QUmlSignalObject::setNameExpression(QObject *nameExpression)
611 {
612     qmodelingelementproperty_cast<QUmlSignal *>(this)->setNameExpression(qmodelingelementproperty_cast<QUmlStringExpression *>(nameExpression));
613 }
614
615 void QUmlSignalObject::setNamespace(QObject *namespace_)
616 {
617     qmodelingelementproperty_cast<QUmlSignal *>(this)->setNamespace(qmodelingelementproperty_cast<QUmlNamespace *>(namespace_));
618 }
619
620 void QUmlSignalObject::setQualifiedName(QString qualifiedName)
621 {
622     qmodelingelementproperty_cast<QUmlSignal *>(this)->setQualifiedName(qualifiedName);
623 }
624 // SLOTS FOR OWNED ATTRIBUTES [Namespace]
625
626 void QUmlSignalObject::addElementImport(QObject *elementImport)
627 {
628     qmodelingelementproperty_cast<QUmlSignal *>(this)->addElementImport(qmodelingelementproperty_cast<QUmlElementImport *>(elementImport));
629 }
630
631 void QUmlSignalObject::removeElementImport(QObject *elementImport)
632 {
633     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeElementImport(qmodelingelementproperty_cast<QUmlElementImport *>(elementImport));
634 }
635
636 void QUmlSignalObject::addImportedMember(QObject *importedMember)
637 {
638     qmodelingelementproperty_cast<QUmlSignal *>(this)->addImportedMember(qmodelingelementproperty_cast<QUmlPackageableElement *>(importedMember));
639 }
640
641 void QUmlSignalObject::removeImportedMember(QObject *importedMember)
642 {
643     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeImportedMember(qmodelingelementproperty_cast<QUmlPackageableElement *>(importedMember));
644 }
645
646 void QUmlSignalObject::addMember(QObject *member)
647 {
648     qmodelingelementproperty_cast<QUmlSignal *>(this)->addMember(qmodelingelementproperty_cast<QUmlNamedElement *>(member));
649 }
650
651 void QUmlSignalObject::removeMember(QObject *member)
652 {
653     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeMember(qmodelingelementproperty_cast<QUmlNamedElement *>(member));
654 }
655
656 void QUmlSignalObject::addOwnedMember(QObject *ownedMember)
657 {
658     qmodelingelementproperty_cast<QUmlSignal *>(this)->addOwnedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(ownedMember));
659 }
660
661 void QUmlSignalObject::removeOwnedMember(QObject *ownedMember)
662 {
663     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeOwnedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(ownedMember));
664 }
665
666 void QUmlSignalObject::addOwnedRule(QObject *ownedRule)
667 {
668     qmodelingelementproperty_cast<QUmlSignal *>(this)->addOwnedRule(qmodelingelementproperty_cast<QUmlConstraint *>(ownedRule));
669 }
670
671 void QUmlSignalObject::removeOwnedRule(QObject *ownedRule)
672 {
673     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeOwnedRule(qmodelingelementproperty_cast<QUmlConstraint *>(ownedRule));
674 }
675
676 void QUmlSignalObject::addPackageImport(QObject *packageImport)
677 {
678     qmodelingelementproperty_cast<QUmlSignal *>(this)->addPackageImport(qmodelingelementproperty_cast<QUmlPackageImport *>(packageImport));
679 }
680
681 void QUmlSignalObject::removePackageImport(QObject *packageImport)
682 {
683     qmodelingelementproperty_cast<QUmlSignal *>(this)->removePackageImport(qmodelingelementproperty_cast<QUmlPackageImport *>(packageImport));
684 }
685
686 // SLOTS FOR OWNED ATTRIBUTES [ParameterableElement]
687
688 void QUmlSignalObject::setOwningTemplateParameter(QObject *owningTemplateParameter)
689 {
690     qmodelingelementproperty_cast<QUmlSignal *>(this)->setOwningTemplateParameter(qmodelingelementproperty_cast<QUmlTemplateParameter *>(owningTemplateParameter));
691 }
692 // SLOTS FOR OWNED ATTRIBUTES [PackageableElement]
693
694 void QUmlSignalObject::setVisibility(QtUml::VisibilityKind visibility)
695 {
696     qmodelingelementproperty_cast<QUmlSignal *>(this)->setVisibility(visibility);
697 }
698
699 void QUmlSignalObject::unsetVisibility()
700 {
701     Q_D(QModelingObject);
702     setVisibility(QtUml::VisibilityKindPublic);
703     d->modifiedResettableProperties.removeAll(QStringLiteral("visibility"));
704 }
705
706 // SLOTS FOR OWNED ATTRIBUTES [Type]
707
708 void QUmlSignalObject::setPackage(QObject *package)
709 {
710     qmodelingelementproperty_cast<QUmlSignal *>(this)->setPackage(qmodelingelementproperty_cast<QUmlPackage *>(package));
711 }
712
713 // SLOTS FOR OWNED ATTRIBUTES [RedefinableElement]
714
715 void QUmlSignalObject::setLeaf(bool isLeaf)
716 {
717     qmodelingelementproperty_cast<QUmlSignal *>(this)->setLeaf(isLeaf);
718 }
719
720 void QUmlSignalObject::unsetLeaf()
721 {
722     Q_D(QModelingObject);
723     setLeaf(false);
724     d->modifiedResettableProperties.removeAll(QStringLiteral("leaf"));
725 }
726
727 void QUmlSignalObject::addRedefinedElement(QObject *redefinedElement)
728 {
729     qmodelingelementproperty_cast<QUmlSignal *>(this)->addRedefinedElement(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefinedElement));
730 }
731
732 void QUmlSignalObject::removeRedefinedElement(QObject *redefinedElement)
733 {
734     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeRedefinedElement(qmodelingelementproperty_cast<QUmlRedefinableElement *>(redefinedElement));
735 }
736
737 void QUmlSignalObject::addRedefinitionContext(QObject *redefinitionContext)
738 {
739     qmodelingelementproperty_cast<QUmlSignal *>(this)->addRedefinitionContext(qmodelingelementproperty_cast<QUmlClassifier *>(redefinitionContext));
740 }
741
742 void QUmlSignalObject::removeRedefinitionContext(QObject *redefinitionContext)
743 {
744     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeRedefinitionContext(qmodelingelementproperty_cast<QUmlClassifier *>(redefinitionContext));
745 }
746
747 // SLOTS FOR OWNED ATTRIBUTES [TemplateableElement]
748
749 void QUmlSignalObject::addTemplateBinding(QObject *templateBinding)
750 {
751     qmodelingelementproperty_cast<QUmlSignal *>(this)->addTemplateBinding(qmodelingelementproperty_cast<QUmlTemplateBinding *>(templateBinding));
752 }
753
754 void QUmlSignalObject::removeTemplateBinding(QObject *templateBinding)
755 {
756     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeTemplateBinding(qmodelingelementproperty_cast<QUmlTemplateBinding *>(templateBinding));
757 }
758
759 // SLOTS FOR OWNED ATTRIBUTES [Classifier]
760
761 void QUmlSignalObject::addAttribute(QObject *attribute)
762 {
763     qmodelingelementproperty_cast<QUmlSignal *>(this)->addAttribute(qmodelingelementproperty_cast<QUmlProperty *>(attribute));
764 }
765
766 void QUmlSignalObject::removeAttribute(QObject *attribute)
767 {
768     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeAttribute(qmodelingelementproperty_cast<QUmlProperty *>(attribute));
769 }
770
771 void QUmlSignalObject::addCollaborationUse(QObject *collaborationUse)
772 {
773     qmodelingelementproperty_cast<QUmlSignal *>(this)->addCollaborationUse(qmodelingelementproperty_cast<QUmlCollaborationUse *>(collaborationUse));
774 }
775
776 void QUmlSignalObject::removeCollaborationUse(QObject *collaborationUse)
777 {
778     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeCollaborationUse(qmodelingelementproperty_cast<QUmlCollaborationUse *>(collaborationUse));
779 }
780
781 void QUmlSignalObject::addFeature(QObject *feature)
782 {
783     qmodelingelementproperty_cast<QUmlSignal *>(this)->addFeature(qmodelingelementproperty_cast<QUmlFeature *>(feature));
784 }
785
786 void QUmlSignalObject::removeFeature(QObject *feature)
787 {
788     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeFeature(qmodelingelementproperty_cast<QUmlFeature *>(feature));
789 }
790
791 void QUmlSignalObject::addGeneral(QObject *general)
792 {
793     qmodelingelementproperty_cast<QUmlSignal *>(this)->addGeneral(qmodelingelementproperty_cast<QUmlClassifier *>(general));
794 }
795
796 void QUmlSignalObject::removeGeneral(QObject *general)
797 {
798     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeGeneral(qmodelingelementproperty_cast<QUmlClassifier *>(general));
799 }
800
801 void QUmlSignalObject::addGeneralization(QObject *generalization)
802 {
803     qmodelingelementproperty_cast<QUmlSignal *>(this)->addGeneralization(qmodelingelementproperty_cast<QUmlGeneralization *>(generalization));
804 }
805
806 void QUmlSignalObject::removeGeneralization(QObject *generalization)
807 {
808     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeGeneralization(qmodelingelementproperty_cast<QUmlGeneralization *>(generalization));
809 }
810
811 void QUmlSignalObject::addInheritedMember(QObject *inheritedMember)
812 {
813     qmodelingelementproperty_cast<QUmlSignal *>(this)->addInheritedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(inheritedMember));
814 }
815
816 void QUmlSignalObject::removeInheritedMember(QObject *inheritedMember)
817 {
818     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeInheritedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(inheritedMember));
819 }
820
821 void QUmlSignalObject::setAbstract(bool isAbstract)
822 {
823     qmodelingelementproperty_cast<QUmlSignal *>(this)->setAbstract(isAbstract);
824 }
825
826 void QUmlSignalObject::unsetAbstract()
827 {
828     Q_D(QModelingObject);
829     setAbstract(false);
830     d->modifiedResettableProperties.removeAll(QStringLiteral("abstract"));
831 }
832
833 void QUmlSignalObject::setFinalSpecialization(bool isFinalSpecialization)
834 {
835     qmodelingelementproperty_cast<QUmlSignal *>(this)->setFinalSpecialization(isFinalSpecialization);
836 }
837
838 void QUmlSignalObject::unsetFinalSpecialization()
839 {
840     Q_D(QModelingObject);
841     setFinalSpecialization(false);
842     d->modifiedResettableProperties.removeAll(QStringLiteral("finalSpecialization"));
843 }
844
845 void QUmlSignalObject::setOwnedTemplateSignature(QObject *ownedTemplateSignature)
846 {
847     qmodelingelementproperty_cast<QUmlSignal *>(this)->setOwnedTemplateSignature(qmodelingelementproperty_cast<QUmlRedefinableTemplateSignature *>(ownedTemplateSignature));
848 }
849
850 void QUmlSignalObject::addOwnedUseCase(QObject *ownedUseCase)
851 {
852     qmodelingelementproperty_cast<QUmlSignal *>(this)->addOwnedUseCase(qmodelingelementproperty_cast<QUmlUseCase *>(ownedUseCase));
853 }
854
855 void QUmlSignalObject::removeOwnedUseCase(QObject *ownedUseCase)
856 {
857     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeOwnedUseCase(qmodelingelementproperty_cast<QUmlUseCase *>(ownedUseCase));
858 }
859
860 void QUmlSignalObject::addPowertypeExtent(QObject *powertypeExtent)
861 {
862     qmodelingelementproperty_cast<QUmlSignal *>(this)->addPowertypeExtent(qmodelingelementproperty_cast<QUmlGeneralizationSet *>(powertypeExtent));
863 }
864
865 void QUmlSignalObject::removePowertypeExtent(QObject *powertypeExtent)
866 {
867     qmodelingelementproperty_cast<QUmlSignal *>(this)->removePowertypeExtent(qmodelingelementproperty_cast<QUmlGeneralizationSet *>(powertypeExtent));
868 }
869
870 void QUmlSignalObject::addRedefinedClassifier(QObject *redefinedClassifier)
871 {
872     qmodelingelementproperty_cast<QUmlSignal *>(this)->addRedefinedClassifier(qmodelingelementproperty_cast<QUmlClassifier *>(redefinedClassifier));
873 }
874
875 void QUmlSignalObject::removeRedefinedClassifier(QObject *redefinedClassifier)
876 {
877     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeRedefinedClassifier(qmodelingelementproperty_cast<QUmlClassifier *>(redefinedClassifier));
878 }
879
880 void QUmlSignalObject::setRepresentation(QObject *representation)
881 {
882     qmodelingelementproperty_cast<QUmlSignal *>(this)->setRepresentation(qmodelingelementproperty_cast<QUmlCollaborationUse *>(representation));
883 }
884
885 void QUmlSignalObject::addSubstitution(QObject *substitution)
886 {
887     qmodelingelementproperty_cast<QUmlSignal *>(this)->addSubstitution(qmodelingelementproperty_cast<QUmlSubstitution *>(substitution));
888 }
889
890 void QUmlSignalObject::removeSubstitution(QObject *substitution)
891 {
892     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeSubstitution(qmodelingelementproperty_cast<QUmlSubstitution *>(substitution));
893 }
894
895 void QUmlSignalObject::setTemplateParameter(QObject *templateParameter)
896 {
897     qmodelingelementproperty_cast<QUmlSignal *>(this)->setTemplateParameter(qmodelingelementproperty_cast<QUmlClassifierTemplateParameter *>(templateParameter));
898 }
899
900 void QUmlSignalObject::addUseCase(QObject *useCase)
901 {
902     qmodelingelementproperty_cast<QUmlSignal *>(this)->addUseCase(qmodelingelementproperty_cast<QUmlUseCase *>(useCase));
903 }
904
905 void QUmlSignalObject::removeUseCase(QObject *useCase)
906 {
907     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeUseCase(qmodelingelementproperty_cast<QUmlUseCase *>(useCase));
908 }
909
910 // SLOTS FOR OWNED ATTRIBUTES [Signal]
911
912 void QUmlSignalObject::addOwnedAttribute(QObject *ownedAttribute)
913 {
914     qmodelingelementproperty_cast<QUmlSignal *>(this)->addOwnedAttribute(qmodelingelementproperty_cast<QUmlProperty *>(ownedAttribute));
915 }
916
917 void QUmlSignalObject::removeOwnedAttribute(QObject *ownedAttribute)
918 {
919     qmodelingelementproperty_cast<QUmlSignal *>(this)->removeOwnedAttribute(qmodelingelementproperty_cast<QUmlProperty *>(ownedAttribute));
920 }
921
922
923 void QUmlSignalObject::setGroupProperties()
924 {
925     Q_D(QModelingObject);
926     const QMetaObject *metaObject = this->metaObject();
927
928     d->propertyGroups << QStringLiteral("QObject");
929     d->groupProperties.insert(QStringLiteral("QObject"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("objectName"))));
930
931     d->propertyGroups << QStringLiteral("QUmlElement");
932     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedComments"))));
933     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedElements"))));
934     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("owner"))));
935
936     d->propertyGroups << QStringLiteral("QUmlNamedElement");
937     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("clientDependencies"))));
938     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("name"))));
939     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("nameExpression"))));
940     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("namespace_"))));
941     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("qualifiedName"))));
942
943     d->propertyGroups << QStringLiteral("QUmlNamespace");
944     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("elementImports"))));
945     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("importedMembers"))));
946     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("members"))));
947     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedMembers"))));
948     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedRules"))));
949     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("packageImports"))));
950
951     d->propertyGroups << QStringLiteral("QUmlParameterableElement");
952     d->groupProperties.insert(QStringLiteral("QUmlParameterableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("owningTemplateParameter"))));
953
954     d->propertyGroups << QStringLiteral("QUmlPackageableElement");
955     d->groupProperties.insert(QStringLiteral("QUmlPackageableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("visibility"))));
956
957     d->propertyGroups << QStringLiteral("QUmlType");
958     d->groupProperties.insert(QStringLiteral("QUmlType"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("package"))));
959
960     d->propertyGroups << QStringLiteral("QUmlRedefinableElement");
961     d->groupProperties.insert(QStringLiteral("QUmlRedefinableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isLeaf"))));
962     d->groupProperties.insert(QStringLiteral("QUmlRedefinableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("redefinedElements"))));
963     d->groupProperties.insert(QStringLiteral("QUmlRedefinableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("redefinitionContexts"))));
964
965     d->propertyGroups << QStringLiteral("QUmlTemplateableElement");
966     d->groupProperties.insert(QStringLiteral("QUmlTemplateableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("templateBindings"))));
967
968     d->propertyGroups << QStringLiteral("QUmlClassifier");
969     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("attributes"))));
970     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("collaborationUses"))));
971     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("features"))));
972     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("generals"))));
973     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("generalizations"))));
974     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("inheritedMembers"))));
975     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isAbstract"))));
976     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("isFinalSpecialization"))));
977     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedTemplateSignature"))));
978     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedUseCases"))));
979     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("powertypeExtents"))));
980     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("redefinedClassifiers"))));
981     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("representation"))));
982     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("substitutions"))));
983     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("templateParameter"))));
984     d->groupProperties.insert(QStringLiteral("QUmlClassifier"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("useCases"))));
985
986     d->propertyGroups << QStringLiteral("QUmlSignal");
987     d->groupProperties.insert(QStringLiteral("QUmlSignal"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedAttributes"))));
988 }
989
990 void QUmlSignalObject::setPropertyData()
991 {
992     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, AggregationRole, QStringLiteral("composite"));
993     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, PropertyClassRole, QStringLiteral("QUmlElement"));
994     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, IsDerivedRole, false);
995     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, IsDerivedUnionRole, false);
996     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, DocumentationRole, QStringLiteral("The Comments owned by this element."));
997     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, RedefinedPropertiesRole, QStringLiteral(""));
998     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
999     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, OppositeEndRole, QStringLiteral(""));
1000
1001     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, AggregationRole, QStringLiteral("composite"));
1002     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, PropertyClassRole, QStringLiteral("QUmlElement"));
1003     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, IsDerivedRole, true);
1004     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, IsDerivedUnionRole, true);
1005     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, DocumentationRole, QStringLiteral("The Elements owned by this element."));
1006     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, RedefinedPropertiesRole, QStringLiteral(""));
1007     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, SubsettedPropertiesRole, QStringLiteral(""));
1008     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, OppositeEndRole, QStringLiteral("Element-owner"));
1009
1010     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, AggregationRole, QStringLiteral("none"));
1011     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, PropertyClassRole, QStringLiteral("QUmlElement"));
1012     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, IsDerivedRole, true);
1013     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, IsDerivedUnionRole, true);
1014     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, DocumentationRole, QStringLiteral("The Element that owns this element."));
1015     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, RedefinedPropertiesRole, QStringLiteral(""));
1016     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, SubsettedPropertiesRole, QStringLiteral(""));
1017     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, OppositeEndRole, QStringLiteral("Element-ownedElement"));
1018
1019     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, AggregationRole, QStringLiteral("none"));
1020     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1021     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, IsDerivedRole, false);
1022     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, IsDerivedUnionRole, false);
1023     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, DocumentationRole, QStringLiteral("Indicates the dependencies that reference the client."));
1024     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, RedefinedPropertiesRole, QStringLiteral(""));
1025     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship"));
1026     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, OppositeEndRole, QStringLiteral("Dependency-client"));
1027
1028     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, AggregationRole, QStringLiteral("none"));
1029     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1030     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, IsDerivedRole, false);
1031     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, IsDerivedUnionRole, false);
1032     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, DocumentationRole, QStringLiteral("The name of the NamedElement."));
1033     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, RedefinedPropertiesRole, QStringLiteral(""));
1034     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, SubsettedPropertiesRole, QStringLiteral(""));
1035     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, OppositeEndRole, QStringLiteral(""));
1036
1037     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, AggregationRole, QStringLiteral("composite"));
1038     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1039     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, IsDerivedRole, false);
1040     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, IsDerivedUnionRole, false);
1041     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, DocumentationRole, QStringLiteral("The string expression used to define the name of this named element."));
1042     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, RedefinedPropertiesRole, QStringLiteral(""));
1043     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
1044     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, OppositeEndRole, QStringLiteral(""));
1045
1046     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, AggregationRole, QStringLiteral("none"));
1047     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1048     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, IsDerivedRole, true);
1049     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, IsDerivedUnionRole, true);
1050     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, DocumentationRole, QStringLiteral("Specifies the namespace that owns the NamedElement."));
1051     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, RedefinedPropertiesRole, QStringLiteral(""));
1052     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, SubsettedPropertiesRole, QStringLiteral("A_member_memberNamespace-memberNamespace Element-owner"));
1053     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, OppositeEndRole, QStringLiteral("Namespace-ownedMember"));
1054
1055     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, AggregationRole, QStringLiteral("none"));
1056     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1057     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, IsDerivedRole, true);
1058     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, IsDerivedUnionRole, false);
1059     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."));
1060     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, RedefinedPropertiesRole, QStringLiteral(""));
1061     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, SubsettedPropertiesRole, QStringLiteral(""));
1062     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, OppositeEndRole, QStringLiteral(""));
1063
1064     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, AggregationRole, QStringLiteral("none"));
1065     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
1066     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, IsDerivedRole, false);
1067     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, IsDerivedUnionRole, false);
1068     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, DocumentationRole, QStringLiteral("Determines where the NamedElement appears within different Namespaces within the overall model, and its accessibility."));
1069     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, RedefinedPropertiesRole, QStringLiteral(""));
1070     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, SubsettedPropertiesRole, QStringLiteral(""));
1071     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, OppositeEndRole, QStringLiteral(""));
1072
1073     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, AggregationRole, QStringLiteral("composite"));
1074     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1075     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, IsDerivedRole, false);
1076     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, IsDerivedUnionRole, false);
1077     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, DocumentationRole, QStringLiteral("References the ElementImports owned by the Namespace."));
1078     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, RedefinedPropertiesRole, QStringLiteral(""));
1079     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1080     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, OppositeEndRole, QStringLiteral("ElementImport-importingNamespace"));
1081
1082     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, AggregationRole, QStringLiteral("none"));
1083     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1084     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, IsDerivedRole, true);
1085     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, IsDerivedUnionRole, false);
1086     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."));
1087     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, RedefinedPropertiesRole, QStringLiteral(""));
1088     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member"));
1089     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, OppositeEndRole, QStringLiteral(""));
1090
1091     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, AggregationRole, QStringLiteral("none"));
1092     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1093     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, IsDerivedRole, true);
1094     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, IsDerivedUnionRole, true);
1095     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."));
1096     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, RedefinedPropertiesRole, QStringLiteral(""));
1097     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, SubsettedPropertiesRole, QStringLiteral(""));
1098     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, OppositeEndRole, QStringLiteral(""));
1099
1100     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, AggregationRole, QStringLiteral("composite"));
1101     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1102     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, IsDerivedRole, true);
1103     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, IsDerivedUnionRole, true);
1104     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, DocumentationRole, QStringLiteral("A collection of NamedElements owned by the Namespace."));
1105     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, RedefinedPropertiesRole, QStringLiteral(""));
1106     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member Element-ownedElement"));
1107     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, OppositeEndRole, QStringLiteral("NamedElement-namespace"));
1108
1109     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, AggregationRole, QStringLiteral("composite"));
1110     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1111     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, IsDerivedRole, false);
1112     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, IsDerivedUnionRole, false);
1113     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, DocumentationRole, QStringLiteral("Specifies a set of Constraints owned by this Namespace."));
1114     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, RedefinedPropertiesRole, QStringLiteral(""));
1115     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
1116     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, OppositeEndRole, QStringLiteral("Constraint-context"));
1117
1118     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, AggregationRole, QStringLiteral("composite"));
1119     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, PropertyClassRole, QStringLiteral("QUmlNamespace"));
1120     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, IsDerivedRole, false);
1121     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, IsDerivedUnionRole, false);
1122     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, DocumentationRole, QStringLiteral("References the PackageImports owned by the Namespace."));
1123     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, RedefinedPropertiesRole, QStringLiteral(""));
1124     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1125     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, OppositeEndRole, QStringLiteral("PackageImport-importingNamespace"));
1126
1127     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, AggregationRole, QStringLiteral("none"));
1128     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, PropertyClassRole, QStringLiteral("QUmlParameterableElement"));
1129     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, IsDerivedRole, false);
1130     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, IsDerivedUnionRole, false);
1131     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, DocumentationRole, QStringLiteral("The formal template parameter that owns this element."));
1132     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, RedefinedPropertiesRole, QStringLiteral(""));
1133     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, SubsettedPropertiesRole, QStringLiteral("ParameterableElement-templateParameter Element-owner"));
1134     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, OppositeEndRole, QStringLiteral("TemplateParameter-ownedParameteredElement"));
1135
1136     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, AggregationRole, QStringLiteral("none"));
1137     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, PropertyClassRole, QStringLiteral("QUmlParameterableElement"));
1138     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, IsDerivedRole, false);
1139     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, IsDerivedUnionRole, false);
1140     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, DocumentationRole, QStringLiteral("The template parameter that exposes this element as a formal parameter."));
1141     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, RedefinedPropertiesRole, QStringLiteral(""));
1142     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, SubsettedPropertiesRole, QStringLiteral(""));
1143     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, OppositeEndRole, QStringLiteral("TemplateParameter-parameteredElement"));
1144
1145     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, AggregationRole, QStringLiteral("none"));
1146     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, PropertyClassRole, QStringLiteral("QUmlPackageableElement"));
1147     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, IsDerivedRole, false);
1148     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, IsDerivedUnionRole, false);
1149     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, DocumentationRole, QStringLiteral("Indicates that packageable elements must always have a visibility, i.e., visibility is not optional."));
1150     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, RedefinedPropertiesRole, QStringLiteral("NamedElement-visibility"));
1151     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, SubsettedPropertiesRole, QStringLiteral(""));
1152     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, OppositeEndRole, QStringLiteral(""));
1153
1154     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, AggregationRole, QStringLiteral("none"));
1155     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, PropertyClassRole, QStringLiteral("QUmlType"));
1156     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, IsDerivedRole, false);
1157     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, IsDerivedUnionRole, false);
1158     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, DocumentationRole, QStringLiteral("Specifies the owning package of this classifier, if any."));
1159     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, RedefinedPropertiesRole, QStringLiteral(""));
1160     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, SubsettedPropertiesRole, QStringLiteral("A_packagedElement_owningPackage-owningPackage"));
1161     Q_DECLARE_METAPROPERTY_INFO(QUmlType, package, OppositeEndRole, QStringLiteral("Package-ownedType"));
1162
1163     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, AggregationRole, QStringLiteral("none"));
1164     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, PropertyClassRole, QStringLiteral("QUmlRedefinableElement"));
1165     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, IsDerivedRole, false);
1166     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, IsDerivedUnionRole, false);
1167     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."));
1168     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, RedefinedPropertiesRole, QStringLiteral(""));
1169     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, SubsettedPropertiesRole, QStringLiteral(""));
1170     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, isLeaf, OppositeEndRole, QStringLiteral(""));
1171
1172     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, AggregationRole, QStringLiteral("none"));
1173     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, PropertyClassRole, QStringLiteral("QUmlRedefinableElement"));
1174     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, IsDerivedRole, true);
1175     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, IsDerivedUnionRole, true);
1176     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, DocumentationRole, QStringLiteral("The redefinable element that is being redefined by this element."));
1177     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, RedefinedPropertiesRole, QStringLiteral(""));
1178     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, SubsettedPropertiesRole, QStringLiteral(""));
1179     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinedElements, OppositeEndRole, QStringLiteral(""));
1180
1181     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, AggregationRole, QStringLiteral("none"));
1182     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, PropertyClassRole, QStringLiteral("QUmlRedefinableElement"));
1183     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, IsDerivedRole, true);
1184     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, IsDerivedUnionRole, true);
1185     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, DocumentationRole, QStringLiteral("References the contexts that this element may be redefined from."));
1186     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, RedefinedPropertiesRole, QStringLiteral(""));
1187     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, SubsettedPropertiesRole, QStringLiteral(""));
1188     Q_DECLARE_METAPROPERTY_INFO(QUmlRedefinableElement, redefinitionContexts, OppositeEndRole, QStringLiteral(""));
1189
1190     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, AggregationRole, QStringLiteral("composite"));
1191     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, PropertyClassRole, QStringLiteral("QUmlTemplateableElement"));
1192     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, IsDerivedRole, false);
1193     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, IsDerivedUnionRole, false);
1194     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, DocumentationRole, QStringLiteral("The optional template signature specifying the formal template parameters."));
1195     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, RedefinedPropertiesRole, QStringLiteral(""));
1196     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
1197     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, OppositeEndRole, QStringLiteral("TemplateSignature-template"));
1198
1199     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, AggregationRole, QStringLiteral("composite"));
1200     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, PropertyClassRole, QStringLiteral("QUmlTemplateableElement"));
1201     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, IsDerivedRole, false);
1202     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, IsDerivedUnionRole, false);
1203     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, DocumentationRole, QStringLiteral("The optional bindings from this element to templates."));
1204     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, RedefinedPropertiesRole, QStringLiteral(""));
1205     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1206     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, OppositeEndRole, QStringLiteral("TemplateBinding-boundElement"));
1207
1208     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, AggregationRole, QStringLiteral("none"));
1209     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1210     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, IsDerivedRole, true);
1211     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, IsDerivedUnionRole, true);
1212     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, DocumentationRole, QStringLiteral("Refers to all of the Properties that are direct (i.e. not inherited or imported) attributes of the classifier."));
1213     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, RedefinedPropertiesRole, QStringLiteral(""));
1214     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, SubsettedPropertiesRole, QStringLiteral("Classifier-feature A_redefinitionContext_redefinableElement-redefinableElement"));
1215     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, attributes, OppositeEndRole, QStringLiteral(""));
1216
1217     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, AggregationRole, QStringLiteral("composite"));
1218     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1219     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, IsDerivedRole, false);
1220     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, IsDerivedUnionRole, false);
1221     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, DocumentationRole, QStringLiteral("References the collaboration uses owned by the classifier."));
1222     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, RedefinedPropertiesRole, QStringLiteral(""));
1223     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
1224     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, collaborationUses, OppositeEndRole, QStringLiteral(""));
1225
1226     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, AggregationRole, QStringLiteral("none"));
1227     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1228     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, IsDerivedRole, true);
1229     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, IsDerivedUnionRole, true);
1230     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, DocumentationRole, QStringLiteral("Specifies each feature defined in the classifier.Note that there may be members of the Classifier that are of the type Feature but are not included in this association, e.g. inherited features."));
1231     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, RedefinedPropertiesRole, QStringLiteral(""));
1232     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, SubsettedPropertiesRole, QStringLiteral("Namespace-member"));
1233     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, features, OppositeEndRole, QStringLiteral("Feature-featuringClassifier"));
1234
1235     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, AggregationRole, QStringLiteral("none"));
1236     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1237     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, IsDerivedRole, true);
1238     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, IsDerivedUnionRole, false);
1239     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, DocumentationRole, QStringLiteral("Specifies the general Classifiers for this Classifier.References the general classifier in the Generalization relationship."));
1240     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, RedefinedPropertiesRole, QStringLiteral(""));
1241     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, SubsettedPropertiesRole, QStringLiteral(""));
1242     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generals, OppositeEndRole, QStringLiteral(""));
1243
1244     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, AggregationRole, QStringLiteral("composite"));
1245     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1246     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, IsDerivedRole, false);
1247     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, IsDerivedUnionRole, false);
1248     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, DocumentationRole, QStringLiteral("Specifies the Generalization relationships for this Classifier. These Generalizations navigaten to more general classifiers in the generalization hierarchy."));
1249     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, RedefinedPropertiesRole, QStringLiteral(""));
1250     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
1251     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, generalizations, OppositeEndRole, QStringLiteral("Generalization-specific"));
1252
1253     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, AggregationRole, QStringLiteral("none"));
1254     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1255     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, IsDerivedRole, true);
1256     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, IsDerivedUnionRole, false);
1257     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, DocumentationRole, QStringLiteral("Specifies all elements inherited by this classifier from the general classifiers."));
1258     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, RedefinedPropertiesRole, QStringLiteral(""));
1259     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member"));
1260     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, inheritedMembers, OppositeEndRole, QStringLiteral(""));
1261
1262     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, AggregationRole, QStringLiteral("none"));
1263     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1264     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, IsDerivedRole, false);
1265     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, IsDerivedUnionRole, false);
1266     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, DocumentationRole, QStringLiteral("If true, the Classifier does not provide a complete declaration and can typically not be instantiated. An abstract classifier is intended to be used by other classifiers e.g. as the target of general metarelationships or generalization relationships."));
1267     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, RedefinedPropertiesRole, QStringLiteral(""));
1268     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, SubsettedPropertiesRole, QStringLiteral(""));
1269     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isAbstract, OppositeEndRole, QStringLiteral(""));
1270
1271     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, AggregationRole, QStringLiteral("none"));
1272     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1273     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, IsDerivedRole, false);
1274     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, IsDerivedUnionRole, false);
1275     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, DocumentationRole, QStringLiteral("If true, the Classifier cannot be specialized by generalization. Note that this property is preserved through package merge operations; that is, the capability to specialize a Classifier (i.e., isFinalSpecialization =false) must be preserved in the resulting Classifier of a package merge operation where a Classifier with isFinalSpecialization =false is merged with a matching Classifier with isFinalSpecialization =true: the resulting Classifier will have isFinalSpecialization =false."));
1276     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, RedefinedPropertiesRole, QStringLiteral(""));
1277     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, SubsettedPropertiesRole, QStringLiteral(""));
1278     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, isFinalSpecialization, OppositeEndRole, QStringLiteral(""));
1279
1280     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, AggregationRole, QStringLiteral("composite"));
1281     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1282     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, IsDerivedRole, false);
1283     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, IsDerivedUnionRole, false);
1284     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, DocumentationRole, QStringLiteral("The optional template signature specifying the formal template parameters."));
1285     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, RedefinedPropertiesRole, QStringLiteral("TemplateableElement-ownedTemplateSignature"));
1286     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, SubsettedPropertiesRole, QStringLiteral("A_redefinitionContext_redefinableElement-redefinableElement"));
1287     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedTemplateSignature, OppositeEndRole, QStringLiteral("RedefinableTemplateSignature-classifier"));
1288
1289     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, AggregationRole, QStringLiteral("composite"));
1290     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1291     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, IsDerivedRole, false);
1292     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, IsDerivedUnionRole, false);
1293     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, DocumentationRole, QStringLiteral("References the use cases owned by this classifier."));
1294     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, RedefinedPropertiesRole, QStringLiteral(""));
1295     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
1296     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, ownedUseCases, OppositeEndRole, QStringLiteral(""));
1297
1298     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, AggregationRole, QStringLiteral("none"));
1299     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1300     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, IsDerivedRole, false);
1301     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, IsDerivedUnionRole, false);
1302     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, DocumentationRole, QStringLiteral("Designates the GeneralizationSet of which the associated Classifier is a power type."));
1303     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, RedefinedPropertiesRole, QStringLiteral(""));
1304     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, SubsettedPropertiesRole, QStringLiteral(""));
1305     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, powertypeExtents, OppositeEndRole, QStringLiteral("GeneralizationSet-powertype"));
1306
1307     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, AggregationRole, QStringLiteral("none"));
1308     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1309     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, IsDerivedRole, false);
1310     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, IsDerivedUnionRole, false);
1311     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, DocumentationRole, QStringLiteral("References the Classifiers that are redefined by this Classifier."));
1312     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, RedefinedPropertiesRole, QStringLiteral(""));
1313     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, SubsettedPropertiesRole, QStringLiteral("RedefinableElement-redefinedElement"));
1314     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, redefinedClassifiers, OppositeEndRole, QStringLiteral(""));
1315
1316     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, AggregationRole, QStringLiteral("none"));
1317     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1318     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, IsDerivedRole, false);
1319     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, IsDerivedUnionRole, false);
1320     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, DocumentationRole, QStringLiteral("References a collaboration use which indicates the collaboration that represents this classifier."));
1321     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, RedefinedPropertiesRole, QStringLiteral(""));
1322     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, SubsettedPropertiesRole, QStringLiteral("Classifier-collaborationUse"));
1323     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, representation, OppositeEndRole, QStringLiteral(""));
1324
1325     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, AggregationRole, QStringLiteral("composite"));
1326     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1327     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, IsDerivedRole, false);
1328     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, IsDerivedUnionRole, false);
1329     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, DocumentationRole, QStringLiteral("References the substitutions that are owned by this Classifier."));
1330     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, RedefinedPropertiesRole, QStringLiteral(""));
1331     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement NamedElement-clientDependency"));
1332     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, substitutions, OppositeEndRole, QStringLiteral("Substitution-substitutingClassifier"));
1333
1334     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, AggregationRole, QStringLiteral("none"));
1335     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1336     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, IsDerivedRole, false);
1337     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, IsDerivedUnionRole, false);
1338     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, DocumentationRole, QStringLiteral("The template parameter that exposes this element as a formal parameter."));
1339     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, RedefinedPropertiesRole, QStringLiteral("ParameterableElement-templateParameter"));
1340     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, SubsettedPropertiesRole, QStringLiteral(""));
1341     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, templateParameter, OppositeEndRole, QStringLiteral("ClassifierTemplateParameter-parameteredElement"));
1342
1343     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, AggregationRole, QStringLiteral("none"));
1344     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, PropertyClassRole, QStringLiteral("QUmlClassifier"));
1345     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, IsDerivedRole, false);
1346     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, IsDerivedUnionRole, false);
1347     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, DocumentationRole, QStringLiteral("The set of use cases for which this Classifier is the subject."));
1348     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, RedefinedPropertiesRole, QStringLiteral(""));
1349     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, SubsettedPropertiesRole, QStringLiteral(""));
1350     Q_DECLARE_METAPROPERTY_INFO(QUmlClassifier, useCases, OppositeEndRole, QStringLiteral("UseCase-subject"));
1351
1352     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, AggregationRole, QStringLiteral("composite"));
1353     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, PropertyClassRole, QStringLiteral("QUmlSignal"));
1354     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, IsDerivedRole, false);
1355     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, IsDerivedUnionRole, false);
1356     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, DocumentationRole, QStringLiteral("The attributes owned by the signal."));
1357     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, RedefinedPropertiesRole, QStringLiteral(""));
1358     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember Classifier-attribute"));
1359     Q_DECLARE_METAPROPERTY_INFO(QUmlSignal, ownedAttributes, OppositeEndRole, QStringLiteral(""));
1360
1361 }
1362
1363 QT_END_NAMESPACE
1364