Я пытаюсь динамически определить структуру файла xml, чтобы определить присутствующие уникальные узлы.
то есть если бы у меня было
<?xml version="1.0" encoding="UTF-8"?>
<nsX:bookstore xmlns:nsX="http://namespace1" xmlns:nsY="http://namespace2">
<nsX:bookList>
<nsX:book category="COOKING">
<nsX:title lang="en">Everyday Italian</nsX:title>
<nsY:stock>1</nsY:stock>
</nsX:book>
<nsX:book category="CHILDREN">
<nsX:title lang="en">Harry Potter</nsX:title>
<nsX:edition lang="en">2</nsX:edition>
<nsY:stock>0</nsY:stock>
</nsX:book>
<nsX:cd category="WEB">
<nsX:albumTitle lang="en">XQuery Kick Start</nsX:albumTitle >
<nsY:stock>1</nsY:stock>
</nsX:cd>
<nsX:tape category="WEB">
<nsX:title lang="en">Learning XML</nsX:title>
<nsY:year>1992</nsY:year>
</nsX:tape>
</nsX:bookList>
</nsX:bookstore>
и хотел создать список моих уникальных типов объектов
book
cd
tape
Я знаю, как найти различные значения узлов, но мне нужно найти различные локальные имена узлов (для которых я не знаю команды).
Я могу использовать цикл для возврата локального имени каждого элемента, но это возвращает каждое локальное имя отдельно, что делает невозможным использование функции различных значений.
Я могу использовать программную логику для обработки результатов моего xQuery, но я бы предпочел просто возвращать правильную информацию. Мы будем очень признательны за любые советы.
В конечном счете, я хотел бы также иметь возможность определять уникальную структуру дочерних узлов, чтобы я мог видеть, что у меня есть 2 разных типа книг (одна с заголовком и одна с дополнением), а также компакт-диск и кассета. Достаточно легко проверить, существуют ли эти вещи, но если бы я не знал, что ищу, и хотел бы идентифицировать уникальные типы объектов на основе их структуры узлов, мне нужно было бы знать, как это найти. .