-
Notifications
You must be signed in to change notification settings - Fork 8
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
Handle SP amendments #41
Comments
Using the tool for diffing JS objects: https://github.com/benjamine/jsondiffpatch |
Each SP modification must be in a defined "amendment object" for every change to a SP dataset. An amendment:
|
Editing dataset directly doesn’t preclude any of the above. It’s the question of GUI, and GUI that implements change management by exposing a sequence of patches, rather than the dataset directly, may be extremely complicated and inconvenient to use. (Imagine adding amendments on top of amendments, and on top of that correcting erroneous amendments that have other amendments added afterwards.) |
It's not only the GUI but the data representation. We need the changes to be expressed explicitly for every amendment. This is the same for IEC and ISO standardization items. Each change must be expressed explicitly (unless we are talking about "replacing with a full object").
We do not need to support Amendment + Amendment. |
If amendment 1 contained a typo discovered before the next ITU OB was published, “Dataset (A with 1 applied)” is no longer a thing. Replacing Amendment 1 with Amendment 1.2 means Amendment 2 would have to be applied to “Dataset (A with 1.2)”. We can’t simply reapply Amendment 2 as is. If Amendment 1 is “remove row 123”, Amendment 1.2 is “remove row 125”, and Amendment 2 is “remove row 124”, then Amendment 2 would result in a wrong row being removed. We would need the user to re-add all amendments following Amendment 1. |
There are often multiple amendments to a given SP between ITU OB issues. An “amendment message” as published in ITU OB is not an amendment; it contains multiple factual changes, coming from different telecom operators. For example, this amendment message represents three “atomic amendments” coming from three different carriers in Germany. This message has multiple changes coming from multiple countries. |
I have an idea of how to implement it, let’s see if it works. |
Can we consider these as multiple individual messages inside an OB? |
With the legacy form of OB, adding an “amendment message” for each individual change to SP would make the document much less readable. (Remember, a message takes a whole page at least.) So, unless we are getting rid of existing deliverables (paged MS Word/PDF documents) or thoroughly revamping their content structure[0], we should probably combine multiple changes to an SP into one amendment message for now. Thankfully, those are two different things anyway. Updating ITU dataset is one thing. Creating an appropriate amendment in the next upcoming OB issue describing the changes that took place is another thing. I believe the app should give the facility to edit ITU datasets, and easily create appropriate amendment messages without having to re-enter the data. [0] Since those docs are essentially ITU’s interface to external parties, they probably wouldn’t be happy if we just did that unilaterally. |
Proposed way:
Store normalized SP data in this repository (ITU OB data).[0]
Expose a GUI for editing this SP data in ITU OB Editor app. ITU representative would be able to edit SP at any time, whenever new information comes in.
Make amendment entry zero-input. ITU representative selects an SP dataset, and everything else is handled by the app. The app reads dataset state from the commit corresponding to previous OB publication date, calculates a diff with the current working tree version of the dataset, and adds amendments in RFC 6902 format.
[0] In future move SPs into their own repo(s)
The text was updated successfully, but these errors were encountered: