A warning or archive identifier as the API knows it, from the way people copy one:
Unicode NFC, with the whitespace, invisible characters and quotes around it removed
(see IDENTIFIER_EDGE), and a .json or .geojson suffix (any case) dropped, as
copied from an API URL such as …/warnings/<id>.json. No real identifier has any of
these, and the API answers each such variant of a live id with a redirect to its
archive, which used to read as "the warning has expired". Case is kept: the API's
identifiers are case-sensitive (mow.DE-…, DWD's lower-case hex parts), so no case
can be inferred. A non-string is returned unchanged for the rule to reject.
A warning or archive identifier as the API knows it, from the way people copy one: Unicode NFC, with the whitespace, invisible characters and quotes around it removed (see
IDENTIFIER_EDGE), and a.jsonor.geojsonsuffix (any case) dropped, as copied from an API URL such as…/warnings/<id>.json. No real identifier has any of these, and the API answers each such variant of a live id with a redirect to its archive, which used to read as "the warning has expired". Case is kept: the API's identifiers are case-sensitive (mow.DE-…, DWD's lower-case hex parts), so no case can be inferred. A non-string is returned unchanged for the rule to reject.