-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Recognizing different cooperation conditions #105
Comments
@milsorm I would say it is a wrong implementation by HEI A. HEI A should not replace the content of their internal IIA, without showing the changes made by HEI B. |
Our IRO don't expect to see two copies of approval, manually to reentering all things from one side to another one, looking for same conditions between 30 others and doing this every thime when counter-party is sending something else. We are trying to display changes to IRO when received counter-IIA and trying to merge everything to keep only one existing copy. Of course sometimes it is not possible (when both parties are editing the same IIA simultaneouslly) and then we left to IRO to decide which one is newer one and manually merge it (like git with manual merge), but for continuing with process we want to have one "agreed" copy. The same things works many years with MS Word - copy is send than and back and than and back with revisions and merged together to one document, which is kept signed in two copies. And I understand business requirements to the the same thing eletronically. But BTW thanks for asking for identifier in #29. |
So how will identifier help here? What you are asking is partner B always keep the content that you have added to the IIA. But partner B is not bound to keep your contacts in their system and send it back. |
If partner is sending contacts we can use them. OK it can be that partner WANT to remove our contact - this cannot be distinguish but it is rare so it can be solve via email/call. |
This is also for @kamil-olszewski-uw because we are solving the same situation with USOS in Wroclaw - they receive our contact "Filáčková" but rewrite to their copy "Fláčková" (by mistake because they are doing it manually). And we have disproportion between contacts - we cannot found "Fláčková" but with ID we will have hint that it was our (relatively same named) contact because we can compare it automatically with our older copy. That ID will definitely helps us a lot. |
I am not sure at want point you will use call/email. You keep sending the same contact and partner B keeps removing them. And the IIA process is stuck because non mandatory contacts? Forget about contact. Each system can have their own way of representing the cooperation condition. You might have singe cooperation condition for 2 ISCED, while partner can have 2 cooperation conditions for 2 ISCED. How are you handling that? |
are you talking about sending-contact or receiving-contact tags? which are not required... |
If there whill be ID and I can found which cooperation condition is which one in our copy, I can keep our contacts (as HEI A because we are responsible for them) and get contacts from HEI B for their party. But if I am not able to recognize which cooperation condition is which that this has to be done MANUALLY and this is bad (mistake by typos, a lot of workload for IRO etc.).
Because I am not able to find which cooperation condition in our copy is which in partner copy I can only overtake the whole conditions as new ones and display to IRO "one is removed and two is added". |
Yes, sending and receiving contact inside MobilitySpecification. It is not required, but if our IRO is filling it and counter-party is not using it, we cannot distinguish which of our sending-contact can keep to which cooperation condition without any ID of that condition (returned list of condition can be in different order). |
In my opinion your implementation may not be very compliant with master-master model.
@umesh-qs
@milsorm |
I discussed that with our IROs and they answered that they cannot imagine to manually compare and re-write texts between copies, that is even worser than sending MS Word with revisions across e-mail. That will not help them with IIA and process around them at all. That is not my expectation, that is business expectation of our IROs :-( They promised me to returned that problem to BPO Forum for business decision. |
I understand the problem, but we have the original sin, that is the master-master model. In our internal system we have our copy with an editor to modify it; if the partner modifies its copy, our IROs can use the editor to change a few fields or to add/deleting a cooperation conditions. Something they have to do, but not to rewrite everything. |
@demilatof Oops. This is a surprise. Look like recent update in the specification. But this is done without any discussion with all the stakeholders. I am not sure if everyone is ready with this. |
@milsorm you may choose to implement in whatever way you choose. But as @demilatof explain you are risking data entered by your clients because of changes done by the partner. The problem of manual comparison only arise when there is a change. And manual check can only limited to what is changed. I guess you are causing more problems for your clients with this approach. Apart from contacts how are you dealing with "isced-clarification" in cooperation condition. This can be different for my copy and your copy |
Topic named 'Parent/child relationship' has been discussed at a couple of IF meetings. |
I do not remember any discussion in any infrastructure forum meeting that we voted was regarding same number of cooperation condition. Nor do we remember any voting on not allowing approved IIAs to be modified. Only thing we remember is that there was agreement on 1-to-1 IIA mapping. Please share proof of voting on these points. |
There was a long discussion, all proposals where available in presentations before the meeting and also in GitHub. Specification was shared before being finally approved. I do not see any counterproposals after the post in #66 (comment) (on the contrary, one thumb up). Whatever goes on during the meeting can be traced in chats . |
As always, generic reply. Please share the proof or chat as you say that there was agreement on these points. |
Everything is available in the shared drive. |
I didn't find, so I am asking. |
I think this proposal to add cooperation conditions ID only because someone is having one copy of IIA and not 2 , one for each partner, it's not compliant so there is no reason to consider this proposal for all the EWP network... i'm sorry but this is only my opinion. |
@skishk sorry I didn't understand your point on non compliance. 1-to-1 IIA doesn't means that cooperation conditions should also be 1-to-1. |
We are aware of the potential advantages of ids of cooperation conditions. However, they would only be useful if they were always fully and unambiguously recognizable on both sides. And this, unfortunately, would be very difficult to achieve in a master-master model. Please notice how much effort is involved in exchanging information about IIA ids and making sure that, for example, the partner has not changed the IIA id (due to incorrect implementation or user's mistake). As for our specific case of contact data, it is possible to enter these data manually in USOS, but it is also possible (and preferred) to copy them with a few clicks. It's hard for me to say why the user chose the first way. Nevertheless, mistakes like this do happen. In USOS, Dashboard, and other systems I've seen in action, users deal with this by comparing both copies of the IIA. |
He is proposing to add cooperation conditions ID because he can't understand when something is changed in contacts... and this problem he says is because he is working on one shared copy of IIA... so i can understand his problem but i can't understand why if he is working with one IIA copy for both partner must be a network problem if we must work with 2 IIA copies. that is my point. I'm not talking about cooperation conditions because the problem is in the beginning in my opinion. |
@skishk technically @milsorm is not doing anything again the specification. He must still be creating an IIA ID internally. |
I'm sorry but i can't understand the meaning to have cooperation-condition-id, probably my limit. scenario: so we are in the condition where we have 2 different cooperation-condition-ID , contacts are not required , so? i can change contacts but not cooperation-condition-ID. please correct my scenario if you see that i'm not on the point of the problem. thank you |
I am struggling to find an answer to this question since years now. But it is far better now. Earlier based on convenience some changes were not allowed by saying that "not many have participated in discussion so they are not interested" and then some changes were pushed saying "there is no objection to the proposal" |
With the upcoming IIA v7 changes I would also like to push this again to be included. From our point of view, these condition ids don't need to be mapped to partner conditions, they would just be used to track and visualize if conditions were changed / removed / added, but going with own-id and partner-id could also be useful in some cases. |
I don't see any problem to accomplish this need, we already have an ID for our mobilities. |
@janinamincer-daszkiewicz |
Do you see a good solution for this problem? We spent a lot of time discussing how to map IIAs, mapping CCs would be much more complicated. |
I think that it could enough if we add a mobility ID without mapping. There is even no warranties that a CC keeps the same CC-ID from a get to another one, but I think it could be a rare case that who wants to use the CC-IDs must accept. We already have an ID to identify every CC in our database, therefore we have no problem to expose it if this is all we are required to do. |
What do you mean by 'mobility ID' in the context of IIA? |
The CC section is made of mobilities; I think that what @georgschermann is asking for is simply an ID for every mobility in the CC. The mob-ID could be an attribute or an element:
|
So I add mobility ids to my copy, I send them to my partner, but partner omits them when making changes to his copy on the basis of my copy? Instead he adds his own mobility-ids? We both take mobility ids into account when calculating has? When I do IIA get, I see my partnner's mobility ids, but not mine. How does it help? |
My copy is mine, your copy is yours. I don't need to make changes to my copy on the basis of your copy, not always at least.
We can decide, there is no problem in taking ids into account when calculating hash.
It helps in this way:
|
exactly this If I have your IIA with 4 CCs without ids and I receive a CNR from you and the GET contains 4 CCs with minimal differences, I have no chance in automatically checking the changes. If I have CCs #1, #2, #3, #4 and pull a new GET from you with CCs #5, #6, #7, #8 I know these are unrelated, if I receive #1 with changed numbers, #2 with changed ISCED code, #5, #6, I know exactly which CCs have changed, which are new, which are deleted, etc. they can be included in hash calculation or excluded doesn't matter, there should be no case where the CC is byte-identical with a different id, except when the user/system messed up pretty hard The only requirement to the ids is that they don't change for the same CC. |
Should they be optional or mandatory? |
I think they should be mandatory, otherwise they could lose importance and personally I wouldn't implement any automatism if I suspect that it could be useful only for a few providers. I don't know what could think @georgschermann about this.
I think that it is not necessary, because until now nobody could have mapped them without an ID. If they have to be mandatory, we may have to consider what could happen to the hash code:
|
@georgschermann I still do not see fully your proposal, please help to elaborate. Let's assume that mobility-ids are mandatory. Partner A adds mobility-ids to his copy and when partner B calls IIA-get he has to store them in his system to make them available for A when A calls IIA get which means that some mapping is necessary on the B's side. Making mobility-ids mandatory means extra work for all partners, some may not be happy and will vote against. |
The ids need be mandatory, they should be very easy to add and maintain. They need to be added to all existing / approved IIAs (this is debatable), hashes will change anyway once with new version, after that they can be ignored or included in hash generation - it shouldn't matter, since they only may change when the content of the CCs changes. If using XSLT or other transformations for hash calculation I would remove them for calculation, just to be on the safe side. They are not meant to be matched at all, they don't need to be the same id for the same CC in both IIA versions, they can be the same but they don't need to be. If partner A uses UUIDs and partner B uses numeric ids and Partner C uses cc-sub-hashes(*) and partner D uses natural keys(*), thats perfectly fine, the only requirement is that they don't change for the same CC on one partners version of the IIA. (*) for those the implementation would need to make sure that they don't change when normal changes to the CC are made. Partner A releases IIA A1:
partner B imports it as B1:
Partner A updates numbers on A1, ids stay the same on both sides. Partner A removes one CC and adds a new one:
Partner B updates his version of B1:
This lets providers choose the most simple implementation in their system, maybe they already have some sort of ids, maybe they can generate ids on the fly based on the content like hashing or building a natural key or the like. Providers which want to add mappings on CC level can do, those who don't want to don't need to. Providers may have a different interpretation of what is a change to a CC and what is a new CC, This is OK to some extend, providers should keep in mind that abusing this (every change results in new id) may complicate exchange for their partners and also maybe for them in the long run, but for some it may be reasonable to have a new ID if e.g. the isced or ounit changes. |
I am not sure I follow. When B gets A1 from A, he ignores ids of A (1, 3) and puts his own? So when A get B1 from B he will not find there his ids, but will find (7f26228f-3384-4c4a-8690-38122accc173, ae78b29b-b6c1-4053-b006-e365c785c311)? |
exactly, he MAY ignore them, he may re-use them for his own CCs |
How will this help A in comparing A1 with B1? |
It won't, but it will help after that to keep track of changes.
|
Georg, if the added value is so small I suspect that providers will not be interested in this proposal. |
What is the effort of adding a mobility ID that we already have to our iia get response? Do you know how much providers don't have yet an ID to identify their mobilities in their DB tables? |
All have, but sharing them in IIAs means changing software. Not much but still. Also their is still a problem with the hash - how to handle it. |
Am I missing something with my reasoning? |
We do not yet have a solution to hash changes which would allow us to avoid re-approval. I am not as optimistic as Jiri that providers do not care and can handle re-approval automatically. |
Yes, but this has nothing to do with cc-ids. |
If we stay with version 6, I could understand your doubts.
Exactly |
No problems, great. |
We want to be able to track changes to CCs across different versions of an IIA and map them to our own CCs. We propose 3 options: 1 - add id attribute to all child elements of coopeating-conditions, the id needs to be unique within all partners versions of this IIA and be kept the same across changes of this CC, New IDs only appear for new CCs, deleted IDs for deleted CCs are not re-used. When a partner maps/updates his IIA version to a partner IIA he also needs to map and use all existing CC-ids. 2 - add id attribute to all child elements of coopeating-conditions, the id needs to be unique within their parent element and be kept the same across changes of this CC, New IDs only appear for new CCs, deleted IDs for deleted CCs are not re-used. The ids don't need to be mapped or used in any way. 3 - don't add cooperating-condition ids |
We have one pity issue in communication with our partners (and with USOS too), because they didn't return us our contacts written to every individual conditions inside IIA (when sending their copy of agreement). And we need to match which cooperation condition in our copy is the same in partner's copy.
Example:
HEI A is preparing IIA with two cooperation conditions and in both is written some contact from their party.
HEI B is receiving this IIA and ignoring some cooperation condition optional fields like contacts.
HEI B is changing conditions (one is removed, another two is added) and send IIA back to A.
HEI A is receving their copy and if we copy it at all, there will be no contacts in kept cooperation condition. IRO from HEI A is asking why it is disappeared. We need to compare this two copies and found which cooperation conditions are the same and keep contacts from our copy and merge it with new conditions from partner copy.
Is it possible to add some ID for every cooperation conditions which allow during the negotiation to understand which condition is which and allow this merge process?
Or everybody else is doing this manually by IRO staff?
Thnx in advance for answer, Milan
The text was updated successfully, but these errors were encountered: