Мне нужно создать XPath, чтобы получить значение элемента LMS/LMS.1/LMS.1.1
, но иногда подэлемент LMS.1.1
не существует и текст находится в родительском элементе LMS.1
.XPath выбор родительского или дочернего элемента
Input Case 1:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<LMS>
<LMS.1>
<LMS.1.1>content1</LMS.1.1>
<LMS.1.2>shouldNotBeSelected</LMS.1.2>
</LMS.1>
</LMS>
</root>
Input Case 2:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<LMS>
<LMS.1>content2</LMS.1>
<LMS.2>shouldNotBeSelected</LMS.2>
</LMS>
</root>
Как я должен создать XPath, что он является универсальным и может обрабатывать оба случая с одним XPath?
т.е. //LMS.1/text()
действительно возвращается только вернуть Content2
Или другой подход: Выберите родительский текст, если данный лист элемент не существует: //LMS.1/LMS1.1 также вернуть Content1.
Но это выбирает все элементы text() внутри LMS. Могут быть и другие элементы – FiveO