Identify and clean component uncertainty in timespans

This commit is contained in:
2026-06-08 13:42:45 +02:00
parent 59580720fe
commit 5b6d7f9401
2 changed files with 19 additions and 0 deletions
+16
View File
@@ -266,6 +266,15 @@ final class NodaUncertaintyHelper {
return "";
}
if (str_contains($name, '-')) {
$parts = explode('-', $name);
$partsCleaned = [];
foreach ($parts as $part) {
$partsCleaned[] = self::cleanUncertaintyIndicatorsTime($part);
}
$name = implode('-', $partsCleaned);
}
// Remove uncertainty prefixes
foreach (NodaUncertaintyHelper::TIME_UNCERTAINTY_PREFIXES as $prefix) {
if (\substr($name, 0, \strlen($prefix)) === "$prefix") {
@@ -296,6 +305,13 @@ final class NodaUncertaintyHelper {
$zeit_name = self::trim(strtolower($zeit_name));
if (str_contains($zeit_name, '-')) {
$parts = explode('-', $zeit_name);
foreach ($parts as $part) {
if (self::guessTimeCertainty($part) === false) return false;
}
}
// Attempt to guess uncertainty based on prefixes.
foreach (self::TIME_UNCERTAINTY_PREFIXES as $prefix) {
if (\substr($zeit_name, 0, \strlen($prefix)) === $prefix) {