Description
Hello,
I have two ideas about the improvement of versioning support in the struct plugin. If you find them useful, I can implement them into the mainline. If not, I'll try to implement them as struct plugins.
-
I believe that struct table aggregation of page schemas should reflect the "&at=" parameter. Since the page data is versioned, it should be quite straightforward. This will not work when the aggregation page is created after the data pages (we can crate something like the "&struct_at" parameter for this) but can still be useful in many situations.
-
This is more complicated but also worth considering. Since the new serial data is bounded to the concrete page, I believe that is should also be versioned with the page. I think that the best solution here would be freezing the serial data on each page revision. To achieve this we need to simply copy the serial data on each revision and tag it with the correct rev parameter. Maybe this shouldn't be the default for all serial schemas but I think that it should be possible and can be very useful in some use cases.
What is your opinion about this features?