Issue 7590: Loop notation (uml2-superstructure-ftf) Source: Advanced Concepts Center, LLC (Mr. James A. Schardt, nobody) Nature: Uncategorized Issue Severity: Summary: I am putting together an example of a sequence diagram using the loop combinedFragment. The spec seems confusing. Just where does a guard condition that is not the minint or maxint get placed? According the CombinedFragemt definition, I can describe a minimum and maximum number of times to perform the loop. "The Guard may include a lower and an upper number of iterations of the loop as well as a Boolean expression." I can also describe a guard condition. However, the notation describes a syntax like LOOP (minint, maxint) with no extra guard. Do I place the extra guard as an interaction constraint in a region as shown in figure 333. Is this allowed? Do I only get one interaction constraint (either the min,maxint or the separate interaction constraint in the body of the loop combined fragment? I would like to say something like LOOP 1, * [status = notFound] or LOOP (1,*,status = notFound). I suppose I could say LOOP (1,[status = notFound]). All of these should say that the loop interaction is performed at least once. After that if the status is "notFound" then the loop continues otherwise the loop terminates. Resolution: Revised Text: Actions taken: July 12, 2004: received issue Discussion: End of Annotations:===== eply-To: From: "James A. Schardt" To: "'uml2ftf'" Subject: Loop notation Date: Mon, 12 Jul 2004 13:51:59 -0400 Organization: Advanced Concepts Center, LLC. X-Mailer: Microsoft Outlook, Build 10.0.6626 X-OriginalArrivalTime: 12 Jul 2004 17:53:14.0383 (UTC) FILETIME=[1AB6D1F0:01C46839] X-MIME-Autoconverted: from quoted-printable to 8bit by amethyst.omg.org id i6CI2Zlj031860 I am putting together an example of a sequence diagram using the loop combinedFragment. The spec seems confusing. Just where does a guard condition that is not the minint or maxint get placed? According the CombinedFragemt definition, I can describe a minimum and maximum number of times to perform the loop. "The Guard may include a lower and an upper number of iterations of the loop as well as a Boolean expression." I can also describe a guard condition. However, the notation describes a syntax like LOOP (minint, maxint) with no extra guard. Do I place the extra guard as an interaction constraint in a region as shown in figure 333. Is this allowed? Do I only get one interaction constraint (either the min,maxint or the separate interaction constraint in the body of the loop combined fragment? I would like to say something like LOOP 1, * [status = notFound] or LOOP (1,*,status = notFound). I suppose I could say LOOP (1,[status = notFound]). All of these should say that the loop interaction is performed at least once. After that if the status is "notFound" then the loop continues otherwise the loop terminates. Please advise. Cheers, --jas James A. Schardt Chief Technologist Advanced Concepts Center, LLC Co-author: UML 2 for Dummies Phone: +1.770.649.4648 x317 Fax: +1.425.963.0984 Reply-To: From: "James A. Schardt" To: Subject: RE: issue 7590 -- UML 2.0 Superstructure FTF issue Date: Thu, 15 Jul 2004 11:37:26 -0400 Organization: Advanced Concepts Center, LLC. X-Mailer: Microsoft Outlook, Build 10.0.6626 X-OriginalArrivalTime: 15 Jul 2004 15:38:39.0534 (UTC) FILETIME=[CCF7E4E0:01C46A81] To address this issue you might try the following text: In Section 14.3.1 in the description of loop semantics Instead of, "The Guard may include a lower and ..." Use, "The InteractionConstraint for the loop InteractionOperand may include a lower and ..." This will remove any confusion with other guards that are part of a CombinedFragement that includes the loop operand. In the same section 14.3.1 under the description of the loop notation After the sentence, "If only loop then this means a loop with infinity upper bound and with 0 as lower bound." Add a paragraph that says something like, "In those cases where more control over the number of passes through the CombinedFragment is necessary use a separate InteractionConstraint. This InteractionConstraint is shown in square brackets covering the lifeline where the first event occurrence will occur, positioned above that event, in the containing Loop InteractionOperand. If this separate InteractionConstraint is true, the loop continues, otherwise the loop terminates." Hope this helps. Cheers, --jas James A. Schardt Chief Technologist Advanced Concepts Center, LLC Co-author: UML 2 for Dummies Phone: +1.770.649.4648 x317 Fax: +1.425.963.0984 Email: jim.schardt@acclearning.com Web: www.acclearning.com -----Original Message----- From: Juergen Boldt [mailto:juergen@omg.org] Sent: Thursday, July 15, 2004 10:36 AM To: issues@omg.org; uml2-superstructure-ftf@omg.org Subject: issue 7590 -- UML 2.0 Superstructure FTF issue This is issue # 7590 From: "James A. Schardt"