Hierarchical text processing preserving char position info