fatalEN 16931syntax binding ruleCII
TypeCode should not be present
'TypeCode' is present somewhere this profile does not allow it. It is not forbidden outright: the rule permits it on AdditionalReferencedDocument with a type code of 50, 130 or 916, and rejects it everywhere else — so what is wrong is where it appears, not that it appears at all.
Do not strip 'TypeCode' from the whole document; that would delete it from the one place it belongs. Keep it on AdditionalReferencedDocument with a type code of 50, 130 or 916, remove the other occurrences, and read the expression below for the exact condition the validator applies. Reported as an error.
CII — context //ram:*[ends-with(name(), 'ReferencedDocument')]
not(ram:TypeCode) or (self::ram:AdditionalReferencedDocument) and (ram:TypeCode='50' or ram:TypeCode='130' or ram:TypeCode='916')
Nothing is stored, and the whole invoice is checked, not just this rule. A PDF only works if it is Factur-X / ZUGFeRD — a PDF with the invoice XML inside it.