-
Notifications
You must be signed in to change notification settings - Fork 0
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
Proposed Standardised Element "Validity" #19
Comments
Ok. Taking Ambogio's input, the solution (based on a real-world implementation) could look like this: We thus would
|
Document that this is intended as a domain-specific validity range and is not a replacement for a technical Version attribute. |
explicitly document that ValidityType is only sensible for immutable objects. If dealing with a mutable object, a version or iteration attirbute should be additionally applied. |
fix unitType add validityType (cf #19)
implemented with #25 |
validityProposal.xlsx
Since domain versioning is a ever-recurring requirement, it makes sense to standardise and thereby simplify the usage thereof.
Requirements:
As is evident from the above, this proposal is non-judgmental as to the approach chosen by architects in the implementation if a given service.
This proposal is for "Domain" versioning only and does not preclude technical versioning in any way.
The proposed elements contained herein are:
validFromInclusive (xs:date | xs: dateTimestamp)m not null Supports the concept of entry of a domain object into circulation or usage.
validFromExclusive (xs:date | xs:dateTimeStamp) nullable, default 9999-12-12 , nullable. Supports the concept of removal of a domain object from circulation.
iteration xs:postiveInteger, nullable
A few words of explanation as to the proposed elements:
See the following referenced white paper from IBM Temporal Data Management for a lucid argument in support of this approach, specifically the section Inclusive-inclusive or inclusive-exclusive time periods:
https://public.dhe.ibm.com/ps/products/db2/info/devWorks_pdfs/Best_practices/DB2BP_Temporal_Data_Management_1012.pdf
Example of conundrum with validToInclusive
select * from crop where validToInclusive =< '2004-04-12T23:59:59Z' // will potentially miss a value based on the precision of the value.
Example of Clean Query with validToExclusive
select * from crop where validToInclusive < '2004-04-13' // will deterministically return all eintries that up to and including the previous day.
If put into this standard, then this and the other standards (0261 - 0267) should be updated to use this.
The text was updated successfully, but these errors were encountered: