based on r44601, xsd-330