Verifier Handling of Reflexive Relationship with Associative Object

homepage Forums BridgePoint/xtUML Usage and Training Verifier Handling of Reflexive Relationship with Associative Object

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #5919
    Dennis Tubbs
    Participant

    I have a reflexive relationship in my model (1c:1c) on both ends. I created an associative object and formalized the relationship, assigning prefix ‘Next_’ and ‘Prev_’ for the instances. My associative object contains two attributes from the formalization ‘Next_Id’ and ‘Prev_Id’.

    My initialization code creates two instances of the reflexive object (A) and one instance of the associative object (B). These instances I am calling a1, a2 and b1 respectively and unique identifiers are assigned to the identifying attribute ‘Id’ in each instance.

    The instances are related with the following OAL:
    relate a1 to a2 across R1.’prev’ using b1;

    When I run this in the Verifier I end up with the following attributes in object b1 after executing the relate statement:
    b1.Next_Id : a1.Id
    b1.Prev_Id : a1.Id

    b1.Next_Id should not be equal to b1.Prev_Id

    Am I missing something?

    Thanks,
    Dennis

    #5920

    I just tried this in a test model and couldn’t reproduce it. I’m using BridgePoint version 6.4.3.201708292034.

    #5921
    Dennis Tubbs
    Participant

    Hi Lee,

    I installed v6.4.3 and got the same results I had before. So I created a test model as you did and that worked. I then went back to my original model, deleted and recreated the classes and relationships in question. It still did not work. Any idea on how I can resolve this without having to recreate the model from scratch?

    Thanks,
    Dennis

    #5923
    Dennis Tubbs
    Participant

    I have resolved this issue, although I do not know exactly what was wrong. I created replacement classes as I did before but this time I did it with many intermediate steps, each time verifying the relationship was still correct.

    #5925
    keithbrown
    Keymaster

    Hi Dennis,

    In the case where it worked you said you used “many intermediate steps”. Can you explain what this means? Were you using copy/paste previously as an alternate method of class creation?

    Keith

    #5926
    Dennis Tubbs
    Participant

    Hi Keith,

    In both cases I created new classes, copy and paste was not used. The first time after I created the new classes I immediately deleted the old relationships and classes, then I renamed the new classes to the old names and recreated the relationships. If I had to guess, I think I fooled BridgePoint into thinking I hadn’t made any changes through the renaming process. The files are not in source control.

    The second time I did the same thing but broke it down into a couple of dozen steps. After each small change I checked that the relationship was correct in the Verifier before proceeding.

    Thanks,
    Dennis

Viewing 6 posts - 1 through 6 (of 6 total)
  • You must be logged in to reply to this topic.