Because XML files are plain text. (DOCX, PPTX, XLSX, etc., are XML files with custom file extensions meant to denote application association.)
Any application that claims to be XML compliant, is supposed to (when reading XML,) ignore any unknown attributes, or any unknown tag elements. Older versions of an application would encounter unknowns (attributes and tags) when it loads files from newer versions. But XML is schema based. A schema is a specification of what tags and attributes are in the XML file. Schemas (XSL files) can and most often are versioned. They themselves are plain text. A compliant XML specifies it’s schema(s) at the top of the file. These schemas are usually out on a web server. MS Office schemas are likely publically accessible on a microsoft server. So even an older application version can “know” what the tags and attributes ARE in the newer version XML file, can load them into memory, but will not know what to do with them. This is because the older application does not have the native code to process the data attached to newer tags and attributes.
Programmers are not clairvoyant. We cannot see into the future, and know what the file data is going to contain for future feature support.
SketchUp’s SKP file format is binary. It is not plain text. It is proprietary database format of the model. Over the years, as new model features have been added, the file format needed to change so that this new data was saved into the file, and could be reloaded by SketchUp.
An example, is the recent Classification features. Classification assignments to definition objects need to be saved in the SKP file. Older SketchUp versions would choke and likely crash SketchUp if they encountered this data.
Lastly, a menu or toolbar button command can be scripted to “save as” a certain SKP version, which can streamline the saving of your organization, into a common file version.