Action Language for Foundational UML Avatar
  1. OMG Specification

Action Language for Foundational UML — Closed Issues

  • Acronym: ALF
  • Issues Count: 9
  • Description: Issues resolved by a task force and approved by Board
Closed All
Issues resolved by a task force and approved by Board

Issues Descriptions

UML RTF 1.4 Issue: CreateAction links to only one classifier.

  • Key: ALF-50
  • Legacy Issue Number: 3286
  • Status: closed  
  • Source: NIST ( Mr. Conrad Bock)
  • Summary:

    CreateAction links to only one classifier. It should be multiple.

  • Reported: ALF 1.0b1 — Sat, 5 Feb 2000 05:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    Decline

  • Updated: Sat, 7 Mar 2015 02:00 GMT

Synchronous action

  • Key: ALF-49
  • Legacy Issue Number: 2005
  • Status: closed  
  • Source: Anonymous
  • Summary:

    Summary: A synchronous action is defined as a request where the sending
    object pauses to wait for results. Synonym: synchronous request [OMA].

    1) The OMA is not specific on this issue, but the understanding in
    CORBA is that a request is only specific with respect to a thread.

    • So, in UML, does the sending object truly pause to wait for results?
    • Or is it just a thread of that object that pauses for results?
      (in that case, the definition should be clarified)

    2) Another possible interpretation of a synchronous action is that
    such a request is always associated with a response (contrarily to
    an asynchronous request which has no associated response ?).
    The sending object has then an obligation to collect that response.

    If that interpretation was true, then synchronous action would
    map to both synchronous request and def

  • Reported: ALF 1.0b1 — Mon, 28 Sep 1998 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    Fixed in adopted spec

  • Updated: Sat, 7 Mar 2015 02:00 GMT

Problem with parameters of CollectionFunctions::removeAll

  • Key: ALF-46
  • Legacy Issue Number: 16591
  • Status: closed  
  • Source: Commissariat a l Energie Atomique-CEA ( Dr. Arnaud Cuccuru)
  • Summary:

    Currently, the signature of CollectionFunctions::removeAll is:

    removeAll<T> (inout seq: T[*] sequence, in element: T)

    According to the associated description, it should probably be (taking into account issue 16426 which requires a return parameter):

    removeAll<T> (inout seq1: T[*] sequence, in seq2:T[*] sequence) : T[*] sequence

    And the description should also be corrected to read “Remove all elements of seq2 from seq1” (“from” instead of “to”).

  • Reported: ALF 1.0b1 — Wed, 12 Oct 2011 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    agreed

  • Updated: Fri, 6 Mar 2015 21:48 GMT

Typo in sequence functions?

  • Key: ALF-45
  • Legacy Issue Number: 16586
  • Status: closed  
  • Source: Commissariat a l Energie Atomique-CEA ( Dr. Arnaud Cuccuru)
  • Summary:

    I think there is a typo page 184:

    Difference

    (in seq1: any[*] sequence,

    in seq2: any[*] sequence nonunique):

    any[*] sequence

    it’s not necessary to show “nonunique” for seq2.

    I don’t recall having seen something about that in existing issues (sorry if I missed it). I’ll raise an issue for that.

  • Reported: ALF 1.0b1 — Mon, 10 Oct 2011 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    agreed

  • Updated: Fri, 6 Mar 2015 21:48 GMT

Should be allowed to use return statement in all behaviors

  • Key: ALF-48
  • Legacy Issue Number: 16606
  • Status: closed  
  • Source: IBM ( Mattias Mohlin)
  • Summary:

    The Alf standard says
    "A return statement may only be used within the definition of a behavior that has a return parameter."
    We think it must be allowed to always use a return statement. If the context behavior has no return parameter then no expression should be provided in the return statement.

  • Reported: ALF 1.0b1 — Fri, 14 Oct 2011 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    This is a duplicate of Issue 16419.

  • Updated: Fri, 6 Mar 2015 21:48 GMT

Problem with parameters of CollectionFunctions::replaceOne

  • Key: ALF-47
  • Legacy Issue Number: 16592
  • Status: closed  
  • Source: Commissariat a l Energie Atomique-CEA ( Dr. Arnaud Cuccuru)
  • Summary:

    The signature of replaceOne is :
    replaceOne<T> (in seq: T[*] sequence, in element: T, in newElement: T): T[*] sequence

    The direction of parameter “seq” should probably be “inout”.

  • Reported: ALF 1.0b1 — Wed, 12 Oct 2011 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    agreed

  • Updated: Fri, 6 Mar 2015 21:48 GMT

Need to replace the CMOF file for the abstract syntax by a UML file for UML 2.4

  • Key: ALF-44
  • Legacy Issue Number: 15626
  • Status: closed  
  • Source: Adaptive ( Mr. Pete Rivett)
  • Summary:

    Need to replace the CMOF file for the abstract syntax by a UML file for UML 2.4

  • Reported: ALF 1.0b1 — Thu, 23 Sep 2010 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    Agreed, the Alf abstract syntax is supposed to be based on UML 2.4.

  • Updated: Fri, 6 Mar 2015 21:48 GMT

The Model file includes the UML Primitive Types package rather than referencing it.

  • Key: ALF-43
  • Legacy Issue Number: 15625
  • Status: closed  
  • Source: Adaptive ( Mr. Pete Rivett)
  • Summary:

    The Model file includes the UML Primitive Types package rather than referencing it.

  • Reported: ALF 1.0b1 — Thu, 23 Sep 2010 04:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    This occurs in the Alf Standard Library model XMI file. This file actually contains a spurious UML package, with a nested AuxiliaryConstructs, with PrimitiveTypes nested within that (as well as a number of other, empty packages). This included UML package should be removed. Note that all primitive type references elsewhere in the file already use hrefs with normative URIs, not references to the nested PrimitiveTypes package

  • Updated: Fri, 6 Mar 2015 21:48 GMT

[ALF] Issue with Section 8.3.6 - Invocation Expressions

  • Key: ALF-1
  • Legacy Issue Number: 16028
  • Status: closed  
  • Source: RPC Software ( Ted Stockwell)
  • Summary:

    The abstract syntax defined in Section 8.3.7 (Invocation Expressions) and
    Section 8.3.9 (Behavior Invocation Expressions) will not match this
    expression...

    this.monitor.getActiveSensor().getReading()

    (NOTE: the above expression is used as an example in Section 8.5.6 - Isolation
    Expressions)

    The issue seems to be that the definition of InvocationExpression does not
    repeat.

    Here is the current definition for InvocationExpression...

    InvocationExpression= InvocationTarget Tuple
    InvocationTarget= BehaviorInvocationTarget

    FeatureInvocationTarget
    SuperInvocationTarget

    Maybe the definition for InvocationTarget should be something like this?...

    InvocationExpression= InvocationTarget Tuple

    { "." InvocationTarget Tuple }
  • Reported: ALF 1.0b1 — Tue, 15 Feb 2011 05:00 GMT
  • Disposition: Resolved — ALF 1.0b2
  • Disposition Summary:

    The expression “this.monitor.getActiveSensor().getReading()” is not a behavior invocation expression, it is a feature invocation expression. The production needed is the one for FeatureInvocationTarget in Subclause 8.3.10:

    FeatureInvocationTarget(e: FeatureInvocationExpression)
    = FeatureReference(e.target) | "this"

    The expression given in the issues parses in full as follows:

    FeatureInvocationExpression
    FeatureInvocationTarget
    FeatureReference
    FeatureTargetExpression
    NonNamePrimaryExpression
    InvocationExpression [ <- Note recursion on InvocationExpression here ]
    FeatureInvocationExpression
    FeatureInvocationTarget
    FeatureReference
    FeatureTargetExpression
    NonNamePrimaryExpression
    PropertyAccessExpression
    FeatureReference
    FeatureTargetExpression
    NonNamePrimaryExpression
    ThisExpression
    NameBinding
    Name
    “monitor”
    NameBinding
    Name
    “getActiveSensor”
    Tuple
    NameBinding
    Name
    “getReading”
    Tuple

  • Updated: Fri, 6 Mar 2015 20:57 GMT