static String modelStringDurationToDuration(final String oldValue) {
        if (oldValue == null || oldValue.isBlank()) {
            return null;
//        } else if (oldValue.isBlank()) {
//            return "";
        } else if (oldValue.matches("^[0-9]+[dD]$")) {
            // special case for days to stop Duration turning them into hours
            // e.g. 30d becomes PT720H rather than P30D
            String daysPart = oldValue.replaceAll("[dD]$", "");
            return Duration.parse("P" + daysPart + "D").toString();
        } else {
            final Long durationMs = ModelStringUtil.parseDurationString(oldValue);
            return Duration.ofMillis(durationMs).toString();
        }
    }
ModelString e.g. 30d to an ISO-8601 duration string, e.g. P30D
stroom-legacy/stroom-legacy-db-migration/src/main/java/stroom/legacy/db/migration/V07_00_00_1202__property_rename.java