Menu

#187 Subtyping for information types

open
5
2008-08-03
2008-08-03
No

This is a request for subtyping within the Information Types to enable substitutability.

For example "Order" is an Information Type. It has the following sub-types of "Limit Order", "Market Order", "Stop Order", "Market-if-touched order", etc. See Wikipedia article for more background on the example domain: http://en.wikipedia.org/wiki/Limit_order#Limit_order. My choreography has an interaction with a Message Type of "Order". This should be substitutable by the other Information Types given in the eample.

To fulfil this choreography requires the additional feature of subtyping.

Consequential to subtyping is the ability to mark some Information Types as abstract. Subtypes are necessary but not sufficient for abstract information types.

btw - Ideally subtyping would be available for any Type in the Choreography, but it is most pressing for Information Types because modelling is more advanced in this area.

Discussion

  • Nobody/Anonymous

    Logged In: NO

    Well this gives me some thought----

    When you send a message, and if it is specified to be
    say an integer, then it is safe for you to send a
    positive integer.

    But not a floating point number.

    If you receive a message, and if it is specified to
    be say a positive integer, and I am in fact prepared
    to receive a general integer (or even a floating
    point number) then it is safe: so I can be ready to
    receive more than specified.

    Whereas the sender should be ready to send less than
    specified.

    In choreography it is both about sending and receiving:
    two methods:

    (1) Sender's side can use a subtype: Receiver's type
    can be ready for a supertype.

    (2) This is rather about refining the choreography as a
    whole.

    I will study Limit_order anyway to get the concrete
    feel. Anyway I just throw these two possibilities for
    the time being.

    kohei

     
  • kohei

    kohei - 2008-08-04

    Logged In: YES
    user_id=1274231
    Originator: NO

    The previous post is by me: somehow "sender" becomes nobody
    not me.

    kohei

     

Log in to post a comment.

MongoDB Logo MongoDB