In value fields that are text, an underscore shall be equivalent to a single blank.
Individual blanks between non-blank characters shall be retained (shall be significant) but
multiple blanks shall be equivalent to a single blank.
We interpreted this a long time ago as: we should replace ‘_’ with ’ '.
However, during some discussions with the CCSDS navigation group, it was agreed that this should not happen and ‘_’ should remain. So we changed it back in ODM and ADM. We probably forgit to do it in CDM.
The change is applied to CDM. However, the change is only in develop branch. Therefore, we can’t see it because we’re using Orekit 11.3.3. Version 12.0 will fix the problem.
Description=Spacecraft name for the object. (with no formatting rule)
Normative Values/
Examples=SPOT, ENVISAT, IRIDIUM, INTELSAT
Normative Values/Examples=E
Obligatory=Yes
In the example, there is always a space
I also quoted this :
In the value fields for the keywords ORIGINATOR, MESSAGE_ID,
OBJECT_DESIGNATOR, CATALOG_NAME and INTERNATIONAL_DESIGNATOR,
values shall be given as alphanumeric text. The underscore ‘_’ and dash ‘-’ may also be used.
More generally, I am wondering if it is normal that Orekit changes values at reading.
At writing, it makes sense as Orekit is kind of the author of the generated file.
In the case of a file not matching the standard (written with another application), it is more simple to investigate the wrong values if we are sure they are the values from the file, unchanged at reading.
We also change the numerical values as we enforce SI units and CCSDS enforces km, km/s and degrees. So I would say text normalization is simply the text version on units conversions.