ISO-TC211 / StandardsTracker

This GitHub repository lets you - our users - log and track issues that you find with our standards and other document. Tag the issue with the standard or standards effected; we will assign it to the relevant group(s) within TC 211.
11 stars 0 forks source link

ISO 19115-1 MD_MaintenanceInformation: allow weeks #414

Open PeterParslow opened 2 years ago

PeterParslow commented 2 years ago

We (Ordnance Survey) have a number of products (& APIs) that are updated on a six week cycle.

This is not directly supported by ISO 19115, either in ISO 19115-1:2014 or the old ISO 19115:2003.

In 2003, you first had to pick a value from MD_MaintenanceFrequencyCode, and none of them is strictly true. So we pick one (e.g. "quarterly" or "asNeeded") and then add a maintenanceNote with the free text "six weekly".

Now with 2014, there is a choice between providing an MD_MaintenanceFrequencyCode and a UserDefinedMaintenanceFrequency - but that is an ISO 19108 TM_PeriodDuration, and that doesn't support weeks either, in spite of the implication that it does at B.2.4: "as specified by ISO 8601". Either way, we still need to give a value which isn't true, and then explain it in a maintenanceNote.

ISO 8601 durations can be specified in weeks.

In ISO 19115-3 (as in old ISO 19139), TM_PeriodDuration is encoded by xsd:duration, which - like TM_PeriodDuration - doesn't allow weeks.

I can see a few ways to allow us to specify "six weeks":

  1. add "six weekly" to MD_MaintenanceFrequencyCode. This just fixes our problem, rather than the general one.
  2. add "other" to MD_MaintenanceFrequencyCode, and we can then at least pick a value that's true and detail it in the note
  3. extend TM_PeriodDuration to allow periods counted in weeks; perhaps to allow the whole domain of W3C's xs:duration (i.e. simply reuse that at the logical model level, rather than just as an encoding).

Of course, at the XML level, we could work round this by creating our own code list at least for the extra value, and referencing that, but each supplier doing that independently would be less interoperable than standardising it.

As a minimum, change ISO 19115-1:2014 B.2.4 "TM_PeriodDuration: duration of a period as specified by ISO 8601" to "TM_PeriodDuration: duration of a period as a profile of ISO 8601" - or better "as a subset of", given that it is a 'profile by restriction' that is documented in ISO 19108.