Topic: Leap years and vague dates between Recorder and NBN
Just had a weird issue come back from NBN and wondered if anyone had a good way of dealing with it.
We run all our NBN submissions through NBNRecordCleaner to check they validate. However in the latest update I've had some validation errors returned from NBN and it turns out that the validation tests they run against the data before importing are more strict than the rules built into NBNRecordCleaner.
One of the issues it's returned is that we have records with date types O or OO meaning months or month ranges so records where the event / sample date has been entered into Recorder as Feb 1984 or Jan 1984 - Feb 1984 for instance.
Where Feb is the end month of that range Recorder has calculated the end date as 28/02 regardless of whether the year is a leap year.
NBN is now rejecting those records because 28/02 isn't the end of the month so it doesn't match the O or OO date type.
I assume people other than us have got similar records - just wondered how people are dealing with them.
We could go through Recorder and find all those events / samples (somehow) and then re-enter the date as 01/02/xxxx - 29/02/xxxx which I can't quite figure out how to do easily or I could write a script which iterates through every record in every NBN update to spot end dates that are 28/02 in leap years and correct them (provided they aren't genuine 28/02 records) but that seems a lot of work for what's a really trivial problem. Is 01/02 - 28/02 really any different to 01/02 - 29/02 in terms of what the data actually means?
Any thoughts welcome.