Hi Daniel,
I've pushed a fix for the tests to bluezio/feature-metainformation. It was simple enough: that bit of XSD asks for send+receive or receive+send followed by 0+ mappings and 0+ headerProcessors. In the test, we had the mappings or the headerProcessors before the send/receive elements, which was wrong according to the new XSD.
Nevertheless, if we wanted to accept the old .bpts files, we'd need to do something like this instead of the big xs:sequence, and check ourselves that we've got exactly one send and one receive element. We can place a minOccurs="2" as we'll have the receive and send elements at least:
<xs:choice maxOccurs="unbounded" minOccurs="2">
<xs:element name="mapping" type="Mapping" />
<xs:element name="headerProcessor" type="HeaderProcessor" />
</xs:sequence>
I haven't tried it yet, though. What do you think?
Cheers,
Antonio