The offline conversion process includes a filter step at the end: it does schema validation using a paid-licensed Saxon version to obtain Xpaths of elements with schema validation errors, and then uses these Xpaths to filter the IATI XML, and exclude any iati-activity with an error inside.
The resulting IATI XML may miss information about some activities, but is guaranteed schema-valid.
We rely on this in a custom configuration, where the exports from various source systems are not consistent.
For instance, there may be information about transactions that are not related to projects with general information.
Since the source systems are not linked, it is not possible to exclude such transactions from the export, but activities with only transaction information can easily be filtered using this schema validation filter step.
The offline conversion process includes a filter step at the end: it does schema validation using a paid-licensed Saxon version to obtain Xpaths of elements with schema validation errors, and then uses these Xpaths to filter the IATI XML, and exclude any iati-activity with an error inside.
The resulting IATI XML may miss information about some activities, but is guaranteed schema-valid.
We rely on this in a custom configuration, where the exports from various source systems are not consistent. For instance, there may be information about transactions that are not related to projects with general information. Since the source systems are not linked, it is not possible to exclude such transactions from the export, but activities with only transaction information can easily be filtered using this schema validation filter step.