С типами понятно, ПакетXDTO.Получить("СписокТоваров"). А свойства зачем?
Помимо этого под свойством любого типа типа можно создать "определение типа" и так по иерархии. Тоже не совсем понятно зачем это поскольку во всех примерах типы идут одним списком без вложений.
Документ - тип.
реквизит - свойства этого типа.
ТЧ - тоже тип. хотя тут да, тут удобнее сделать вложенный тип поскольку он больше ни в одном другом свойстве не будет использоваться.
Но корневые свойства зачем?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший