Issue 15991: Notation of Lifelines (uml2-rtf) Source: International Business Machines (Mr. Adam Neal, adamneal(at)ca.ibm.com) Nature: Uncategorized Issue Severity: Summary: In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: <lifelineident> ::= ([‘[‘ ‘]’]] [: [decomposition]) | ‘self’ <selector> ::= <expression> <decomposition> ::= ‘ref’ <interactionident> [‘strict’] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Resolution: Revised Text: Actions taken: January 26, 2011: received issue Discussion: End of Annotations:===== ubject: Notation of Lifelines X-KeepSent: AC7AE3FE:A1AAD75F-85257824:0080FBB2; type=4; name=$KeepSent To: "uml2-rtf@omg.org" X-Mailer: Lotus Notes Release 8.0.2FP1 SHF149 July 17, 2009 From: Adam Neal Date: Wed, 26 Jan 2011 18:41:46 -0500 X-MIMETrack: Serialize by Router on D25ML02/25/M/IBM(Release 8.0.2FP5|April 13, 2010) at 01/26/2011 18:43:39 X-Content-Scanned: Fidelis XPS MAILER Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam From: Steve Cook To: Adam Neal , "uml2-rtf@omg.org" Subject: RE: Notation of Lifelines Thread-Topic: Notation of Lifelines Thread-Index: AQHLvbMeUCj0Jmqv00iRt3ZcS5hjUJPkpV3A Date: Thu, 27 Jan 2011 10:57:21 +0000 Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.166.18.100] Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([[.[. .].]] [: ] [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam Subject: Re: Notation of Lifelines From: "Ed Seidewitz" Date: Thu, 27 Jan 2011 09:13:29 -0500 Thread-Topic: Notation of Lifelines To: "Steve Cook" thread-index: Acu+LGJeG+UGYNENRT2qTp0vsVYj5A== Cc: "Adam Neal" , Yes, I was going to say the same thing (about the bug in the spec, that is). I think this warrants an issue, though we should be able to fix it in UML 2.5. Ed Sent from my iPad On Jan 27, 2011, at 9:03 AM, "Steve Cook" wrote: Aha. It seems like we have encountered a bug somewhere in the email system, because when my message comes back to me via your message, it looks like your original message and not what I sent. It seems like those quoted square brackets have some weird effect on email. So I think the actual answer to your actual question is that you apparently canât show the name of a lifeline on a sequence diagram. However, as always with UML, it is not as simple as that. According to the abstract syntax, it is legal for a lifeline not to represent anything. This points to an inconsistency in the notation: it says â cannot be emptyâ, but in the case where represents is null, then the only possible notation is âselfâ, which is clearly wrong. I would indeed have thought that the name of the lifeline ought to play some role in this story. I would say this is a bug in the spec. - Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 27 January 2011 13:42 To: Steve Cook Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([â[â â]â]] [: [decomposition]) | âselfâ ::= ::= ârefâ [âstrictâ] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([â[â â]â]] [: [decomposition]) | âselfâ ::= ::= ârefâ [âstrictâ] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([â[â â]â]] [: [decomposition]) | âselfâ ::= ::= ârefâ [âstrictâ] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam From: Steve Cook To: Adam Neal CC: "uml2-rtf@omg.org" Subject: RE: Notation of Lifelines Thread-Topic: Notation of Lifelines Thread-Index: AQHLvbMeUCj0Jmqv00iRt3ZcS5hjUJPkpV3AgAAvMQCAAAH/MA== Date: Thu, 27 Jan 2011 13:59:59 +0000 Accept-Language: en-GB, en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-originating-ip: [10.166.18.100] Aha. It seems like we have encountered a bug somewhere in the email system, because when my message comes back to me via your message, it looks like your original message and not what I sent. It seems like those quoted square brackets have some weird effect on email. So I think the actual answer to your actual question is that you apparently can.t show the name of a lifeline on a sequence diagram. However, as always with UML, it is not as simple as that. According to the abstract syntax, it is legal for a lifeline not to represent anything. This points to an inconsistency in the notation: it says . cannot be empty., but in the case where represents is null, then the only possible notation is .self., which is clearly wrong. I would indeed have thought that the name of the lifeline ought to play some role in this story. I would say this is a bug in the spec. - Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 27 January 2011 13:42 To: Steve Cook Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam Subject: RE: Notation of Lifelines X-KeepSent: C63BD06A:BF0FD271-85257825:004A5D5C; type=4; name=$KeepSent To: Steve Cook Cc: "uml2-rtf@omg.org" X-Mailer: Lotus Notes Release 8.0.2FP1 SHF149 July 17, 2009 From: Adam Neal Date: Thu, 27 Jan 2011 08:42:02 -0500 X-MIMETrack: Serialize by Router on D25ML02/25/M/IBM(Release 8.0.2FP5|April 13, 2010) at 01/27/2011 08:42:08 X-Content-Scanned: Fidelis XPS MAILER Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam From: Østein Haugen To: Ed Seidewitz , Steve Cook CC: Adam Neal , "uml2-rtf@omg.org" , Østein Haugen Date: Thu, 27 Jan 2011 18:14:42 +0100 Subject: RE: Notation of Lifelines Thread-Topic: Notation of Lifelines Thread-Index: Acu+LGJeG+UGYNENRT2qTp0vsVYj5AAGENDg Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Dear all If I may share with you some history that lies behind this .bug.: In the original UML 2.0 the multiplicity of the .represents. relationship was 1, and this is actually what it logically should be in a diagram that intends to describe something. What does a lifeline represent when it represents nothing? As one of several changes that made the models somewhat more liberal such that also diagrams with not completely finished descriptions should be legal UML, the relationship was made into 0..1 already in the very first FTF. However, we did not update the concrete syntax properly to follow up this more liberal approach. To .fix this bug. you should be careful not to throw out the baby with the water. The good and normal situation is that a lifeline represents something, but if it does not (yet), the name should of course be any legal identifier. In the case when the lifeline represents something, I see no reason to invent a new name for the lifeline . rather the opposite it should remain being thee same as the represented connectable element. Regards, Oystein From: Ed Seidewitz [mailto:ed-s@modeldriven.com] Sent: 27. januar 2011 15:13 To: Steve Cook Cc: Adam Neal; uml2-rtf@omg.org Subject: Re: Notation of Lifelines Yes, I was going to say the same thing (about the bug in the spec, that is). I think this warrants an issue, though we should be able to fix it in UML 2.5. Ed Sent from my iPad On Jan 27, 2011, at 9:03 AM, "Steve Cook" wrote: Aha. It seems like we have encountered a bug somewhere in the email system, because when my message comes back to me via your message, it looks like your original message and not what I sent. It seems like those quoted square brackets have some weird effect on email. So I think the actual answer to your actual question is that you apparently can.t show the name of a lifeline on a sequence diagram. However, as always with UML, it is not as simple as that. According to the abstract syntax, it is legal for a lifeline not to represent anything. This points to an inconsistency in the notation: it says . cannot be empty., but in the case where represents is null, then the only possible notation is .self., which is clearly wrong. I would indeed have thought that the name of the lifeline ought to play some role in this story. I would say this is a bug in the spec. - Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 27 January 2011 13:42 To: Steve Cook Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam Subject: RE: Notation of Lifelines X-KeepSent: 01F632CE:44DB6435-85257826:004F5B2E; type=4; name=$KeepSent To: Østein Haugen Cc: "uml2-rtf@omg.org" X-Mailer: Lotus Notes Release 8.0.2FP1 SHF149 July 17, 2009 From: Adam Neal Date: Fri, 28 Jan 2011 10:00:51 -0500 X-MIMETrack: Serialize by Router on D25ML02/25/M/IBM(Release 8.0.2FP5|April 13, 2010) at 01/28/2011 10:01:58 X-Content-Scanned: Fidelis XPS MAILER Hi Østein, Thanks for your input. The reason one may want to have a lifeline name in addition to the 'represents' info, is to model interactions between different instances of the same connectable element. For example, "primary" and "secondary", "new" and "old", "first" and "second", "master" and "slave" etc. This behavior was originally available in RoseRT, and many of its users have found this very useful in documenting the behavior of their systems. Here's a very simple example diagram: I would propose that we allow the lifeline name to be optionally shown before the represents info (as is in the above diagram) separated with a ' / ': (I tried adding spaces this time in the BNR, so hopefully it won't be truncated on me) ::= ( [lifeline-name '/'] [ [ .[. .]. ] ] [ : ] [decomposition]) | .self. ::= ::= .ref. [.strict.] (Pasting a picture of the suggested notation, incase the text is modified by my e-mail program again) I believe this would also fix the issue identified by Steve, such that if there is no represents, and self is not correct to use, then the user can enter a lifeline name to ensure that the 'lifelineident' is not empty. As well as keep the 'fix' that you mentioned below. Thoughts? Adam Østein Haugen ---27/01/2011 12:17:52 PM---Dear all If I may share with you some history that lies behind this .bug.: From: Østein Haugen To: Ed Seidewitz , Steve Cook Cc: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" , Østein Haugen Date: 27/01/2011 12:17 PM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Dear all If I may share with you some history that lies behind this .bug.: In the original UML 2.0 the multiplicity of the .represents. relationship was 1, and this is actually what it logically should be in a diagram that intends to describe something. What does a lifeline represent when it represents nothing? As one of several changes that made the models somewhat more liberal such that also diagrams with not completely finished descriptions should be legal UML, the relationship was made into 0..1 already in the very first FTF. However, we did not update the concrete syntax properly to follow up this more liberal approach. To .fix this bug. you should be careful not to throw out the baby with the water. The good and normal situation is that a lifeline represents something, but if it does not (yet), the name should of course be any legal identifier. In the case when the lifeline represents something, I see no reason to invent a new name for the lifeline . rather the opposite it should remain being the same as the represented connectable element. Regards, Oystein From: Ed Seidewitz [mailto:ed-s@modeldriven.com] Sent: 27. januar 2011 15:13 To: Steve Cook Cc: Adam Neal; uml2-rtf@omg.org Subject: Re: Notation of Lifelines Yes, I was going to say the same thing (about the bug in the spec, that is). I think this warrants an issue, though we should be able to fix it in UML 2.5. Ed Sent from my iPad On Jan 27, 2011, at 9:03 AM, "Steve Cook" wrote: Aha. It seems like we have encountered a bug somewhere in the email system, because when my message comes back to me via your message, it looks like your original message and not what I sent. It seems like those quoted square brackets have some weird effect on email. So I think the actual answer to your actual question is that you apparently can.t show the name of a lifeline on a sequence diagram. However, as always with UML, it is not as simple as that. According to the abstract syntax, it is legal for a lifeline not to represent anything. This points to an inconsistency in the notation: it says . cannot be empty., but in the case where represents is null, then the only possible notation is .self., which is clearly wrong. I would indeed have thought that the name of the lifeline ought to play some role in this story. I would say this is a bug in the spec. - Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 27 January 2011 13:42 To: Steve Cook Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam From: Østein Haugen To: Adam Neal CC: "uml2-rtf@omg.org" , Østein Haugen Date: Sun, 30 Jan 2011 18:11:17 +0100 Subject: RE: Notation of Lifelines Thread-Topic: Notation of Lifelines Thread-Index: Acu+/F/7tqBkKpBzRLSxr4My1Kmb6gBo+HNw Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: acceptlanguage: en-US Adam If you have more than one instance for the connectable element, this means the connectable element is a set. That is when you use the indexing mechanism which is very flexible. Thus your lifelines below would be device[primary]:Device and device[secondary]:Device. Thus this is not really related to the issue you brought up because these lifeline do have a .represents. relationship. The issue we discussed was when the lifeline has no .represents. relationship and still should have an identifier. /Oystein From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 28. januar 2011 16:01 To: Østein Haugen Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi Østein, Thanks for your input. The reason one may want to have a lifeline name in addition to the 'represents' info, is to model interactions between different instances of the same connectable element. For example, "primary" and "secondary", "new" and "old", "first" and "second", "master" and "slave" etc. This behavior was originally available in RoseRT, and many of its users have found this very useful in documenting the behavior of their systems. Here's a very simple example diagram: I would propose that we allow the lifeline name to be optionally shown before the represents info (as is in the above diagram) separated with a ' / ': (I tried adding spaces this time in the BNR, so hopefully it won't be truncated on me) ::= ( [lifeline-name '/'] [ [ .[. .]. ] ] [ : ] [decomposition]) | .self. ::= ::= .ref. [.strict.] (Pasting a picture of the suggested notation, incase the text is modified by my e-mail program again) I believe this would also fix the issue identified by Steve, such that if there is no represents, and self is not correct to use, then the user can enter a lifeline name to ensure that the 'lifelineident' is not empty. As well as keep the 'fix' that you mentioned below. Thoughts? Adam Østein Haugen ---27/01/2011 12:17:52 PM---Dear all If I may share with you some history that lies behind this .bug.: From: Østein Haugen To: Ed Seidewitz , Steve Cook Cc: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" , Østein Haugen Date: 27/01/2011 12:17 PM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Dear all If I may share with you some history that lies behind this .bug.: In the original UML 2.0 the multiplicity of the .represents. relationship was 1, and this is actually what it logically should be in a diagram that intends to describe something. What does a lifeline represent when it represents nothing? As one of several changes that made the models somewhat more liberal such that also diagrams with not completely finished descriptions should be legal UML, the relationship was made into 0..1 already in the very first FTF. However, we did not update the concrete syntax properly to follow up this more liberal approach. To .fix this bug. you should be careful not to throw out the baby with the water. The good and normal situation is that a lifeline represents something, but if it does not (yet), the name should of course be any legal identifier. In the case when the lifeline represents something, I see no reason to invent a new name for the lifeline . rather the opposite it should remain being the same as the represented connectable element. Regards, Oystein From: Ed Seidewitz [mailto:ed-s@modeldriven.com] Sent: 27. januar 2011 15:13 To: Steve Cook Cc: Adam Neal; uml2-rtf@omg.org Subject: Re: Notation of Lifelines Yes, I was going to say the same thing (about the bug in the spec, that is). I think this warrants an issue, though we should be able to fix it in UML 2.5. Ed Sent from my iPad On Jan 27, 2011, at 9:03 AM, "Steve Cook" wrote: Aha. It seems like we have encountered a bug somewhere in the email system, because when my message comes back to me via your message, it looks like your original message and not what I sent. It seems like those quoted square brackets have some weird effect on email. So I think the actual answer to your actual question is that you apparently can.t show the name of a lifeline on a sequence diagram. However, as always with UML, it is not as simple as that. According to the abstract syntax, it is legal for a lifeline not to represent anything. This points to an inconsistency in the notation: it says . cannot be empty., but in the case where represents is null, then the only possible notation is .self., which is clearly wrong. I would indeed have thought that the name of the lifeline ought to play some role in this story. I would say this is a bug in the spec. - Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 27 January 2011 13:42 To: Steve Cook Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam X-Trusted-NM: yes Subject: Re: Notation of Lifelines From: Nerijus Jankevicius Date: Mon, 31 Jan 2011 11:03:20 +0200 Cc: Ed Seidewitz , Steve Cook , Adam Neal , "uml2-rtf@omg.org" To: Østein Haugen X-Mailer: Apple Mail (2.1082) There must be consistency with other elements in UML diagrams where something is "represented", but element still may have a name - ActivityParameterNode represents the parameter, ActivityPartition represents classier or property etc. Also, there are more cases in UML where element is NamedElement, but name is not part of concrete syntax - for example Message or Transition. We need generic approach and clear description how element name is used in such cases. In our tool for example, we use name as temporary holder for the text which can't be parsed and mapped into appropriate elements on Message or Transition (mistype or too abstract business level text, like "do something" on Message). Also, we show Lifeline, ActivityParameterNode or Partition name when represented element is null. -- Nerijus Jankevicius SysML Product Manager OMG-Certified UML Professional No Magic Europe Savanoriu pr. 363, LT 49425 Kaunas, Lithuania P.O. box 2166, LT- 3000, Kaunas Phone: +370-37-324032 Fax: +370-37-320670 e-mail: nerijus@magicdraw.com WWW: http://www.magicdraw.com -- MagicDraw - UML made simple! On Jan 27, 2011, at 7:14 PM, Østein Haugen wrote: Dear all If I may share with you some history that lies behind this .bug.: In the original UML 2.0 the multiplicity of the .represents. relationship was 1, and this is actually what it logically should be in a diagram that intends to describe something. What does a lifeline represent when it represents nothing? As one of several changes that made the models somewhat more liberal such that also diagrams with not completely finished descriptions should be legal UML, the relationship was made into 0..1 already in the very first FTF. However, we did not update the concrete syntax properly to follow up this more liberal approach. To .fix this bug. you should be careful not to throw out the baby with the water. The good and normal situation is that a lifeline represents something, but if it does not (yet), the name should of course be any legal identifier. In the case when the lifeline represents something, I see no reason to invent a new name for the lifeline . rather the opposite it should remain being the same as the represented connectable element. Regards, Oystein From: Ed Seidewitz [mailto:ed-s@modeldriven.com] Sent: 27. januar 2011 15:13 To: Steve Cook Cc: Adam Neal; uml2-rtf@omg.org Subject: Re: Notation of Lifelines Yes, I was going to say the same thing (about the bug in the spec, that is). I think this warrants an issue, though we should be able to fix it in UML 2.5. Ed Sent from my iPad On Jan 27, 2011, at 9:03 AM, "Steve Cook" wrote: Aha. It seems like we have encountered a bug somewhere in the email system, because when my message comes back to me via your message, it looks like your original message and not what I sent. It seems like those quoted square brackets have some weird effect on email. So I think the actual answer to your actual question is that you apparently can.t show the name of a lifeline on a sequence diagram. However, as always with UML, it is not as simple as that. According to the abstract syntax, it is legal for a lifeline not to represent anything. This points to an inconsistency in the notation: it says . cannot be empty., but in the case where represents is null, then the only possible notation is .self., which is clearly wrong. I would indeed have thought that the name of the lifeline ought to play some role in this story. I would say this is a bug in the spec. - Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 27 January 2011 13:42 To: Steve Cook Cc: uml2-rtf@omg.org Subject: RE: Notation of Lifelines Hi, Odd, what you've pasted and what I had in my original e-mail is the same. The message in my sent box shows the following: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] So I'm not sure how it got truncated below. That said, the only name that's identified here is the 'connectable-element-name' i.e. the name of the 'represents' (and its type via 'class_name'). Am I missing something with respect to being able to show the lifeline's actual name (given it has one) ? Is it implicit that its name can be shown somehow, or is it really disallowed? Thanks, --Adam Steve Cook ---27/01/2011 05:57:58 AM---Adam What I see in the spec (all versions from 2.0 to 2.4) is From: Steve Cook To: Adam Neal/Ottawa/IBM@IBMCA, "uml2-rtf@omg.org" Date: 27/01/2011 05:57 AM Subject: RE: Notation of Lifelines -------------------------------------------------------------------------------- Adam What I see in the spec (all versions from 2.0 to 2.4) is ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Where did you get your excerpt from? -- Steve From: Adam Neal [mailto:Adam_Neal@ca.ibm.com] Sent: 26 January 2011 23:42 To: uml2-rtf@omg.org Subject: Notation of Lifelines Hi, In UML 2.3, section 14.3.19 (Lifelines), the notation of a lifeline is given as follows: ::= ([.[. .].]] [: [decomposition]) | .self. ::= ::= .ref. [.strict.] Given a Lifeline has an explicit name, it seems as though its not allowed to be displayed. Does anyone know if there is a specific reason for not showing the name of a Lifeline given it has one? Thanks, Adam