I think some of the Activiti extensions are an issue.
e.g. there is an attribut defined called 'type' which is restricted to an enumeration with one element, "shell"
but the bpmn files they provide with the engine defines service and send tasks with:
activiti:type="mail", which for sure violates their provided XML schema, activiti-bpmn-extensions-5.10.xsd in this case.
But if u investigate other XSDs, like activiti-bpmn-extensions-5.3.xsd, u will find that there is no "shell" element in the enum for the attribute "type", there is only "mail"…
So, i think the XSDs file are not very stable nor correct to be used for serious validation.
Regarding the validation errors against the BPMN20.xsd. From what i saw the XMLs are valid… I did not find out too why the validation fails in Eclipse.