Я бы не посмел попытаться решить эту проблему с помощью XSLT - XSLT хорош для простых базовых преобразований.Хотя это может быть возможным, это, вероятно, сведет вас с ума в процессе.
Что касается решения вообще:
- Используйте округление или аналогичные методы для решенияпроблема "off by 1/2"
- Сортировка данных.
- Создание таблицы из отсортированных данных должно быть тривиальным
Теперь я ожидаю, что выспросить "а без сортировки?"(потому что это слишком дорого, что угодно).Ответ: Вы будете сортировать данные, так или иначе.Создание огромной карты в памяти и добавление к ней элементов на основе координат сортировки.Это просто неочевидно.
[EDIT] Может быть, этот прием тоже подойдет: вместо таблицы используйте div
с position: absolute
и масштабируйте координаты до тех пор, пока тексты не перестанутперекрытия.Это будет эмулировать таблицу, но работает ли она для вас, зависит от того, действительно ли координаты что-то значат (т.е. они не случайны, но какая-то другая система использует их для выкладки данных)