1) ИД можно ввести но повторюсь что искать удаляемую строку хочется меньше всего - файл довольно большой и хотелось как-то обойтись "курсором" благо в момент нажатия кнопки "удаление" адг уже знает какой элемент выделен т.е. получается что придётся делать второй раз пересчёт всего файла

2) Спасиб, идея!
Добавлено через 13 часов 29 минут
С удалением удалось разобраться путём ввода ид в каждую ноду xml, в итоге удалять можно вот так:
delete xmlProvider.descendants("*").(@id==adg.selectedItem.@id)[0]
не очень правильно

но зато работает
Добавлено через 17 часов 18 минут
по удалению нашёлся ещё вот такой способ:
var node:XML = tree.selectedItem as XML;
delete node.parent().elements()[node.childIndex()];
проверено, работает но есть проблемка с индексами (соседняя тема)