Объявление типа как xs: integer говорит всем, что начальные нули не являются значимыми, то есть 0012 и 12 являются взаимозаменяемыми и эквивалентными, потому что это является частью того, что значит быть целым числом. Вы можете использовать фасет шаблона, чтобы ограничить длину до 6 цифр, но вы попадете в беспорядок, потому что, например, если вы выполните преобразование идентичности через процессор с поддержкой схемы, то ведущие нули, вероятно, будут потеряны.
Если начальные нули действительно значимы (как, например, в номере телефона), то его следует печатать не как целое число, а как строку, соответствующую шаблону \ d +.