У меня есть структура XML, как показано ниже
<Categories>
<cat>Video</cat>
<cat>Audio</cat>
<cat>Hybrid</cat>
</Categories>
Существует отображение, доступное для этих категорий в поисковом XML, подобном этому
<Lookup>
<cat>Video</cat>
<mapping>1</mapping>
</Lookup>
<Lookup>
<cat>Audio</cat>
<mapping>2</mapping>
</Lookup>
<Lookup>
<cat>Hybrid</cat>
<mapping>3</mapping>
</Lookup>
</ValueSet>
Теперь я ищу решение XSLT, которое может вернуть мне значение Max в качестве вывода в результате преобразования без использования функции расширения набора узлов.
Вот мои тесты
Контрольный пример 1:
Ввод:
<Categories>
<cat>Video</cat>
<cat>Audio</cat>
<cat>Hybrid</cat>
</Categories>
Ожидаемый результат 3
Контрольный пример 2:
Ввод:
<Categories>
<cat>Video</cat>
<cat>Hybrid</cat>
</Categories>
Ожидаемый результат 3
Контрольный пример 3:
Ввод:
<Categories>
<cat>Video</cat>
<cat>Audio</cat>
</Categories>
Ожидаемый результат 2
Контрольный пример 4:
Ввод:
<Categories>
<cat>Audio</cat>
<cat>Hybrid</cat>
</Categories>
Ожидаемый результат 3
Контрольный пример 5:
Ввод:
<Categories>
<cat>Video</cat>
</Categories>
Ожидаемый результат 1
Заранее спасибо.
Обновление из комментариев :
Поиск информации для меня не
доступно для загрузки [с document()
функция]. Мне нужно сделать for-each
на
категории вводят, а затем выводят
значение поиска. После этого мне нужно
чтобы получить максимум.
У меня есть расширение, доступное из xsl
процессор двигателя, чтобы получить это в
xslt как показано ниже:
<xsl:value-of select='xx:lookupValue("MappingXML","Category",.,"COL1")'/>
Эта функция возвращает строку. это
функция не возвращает набор узлов. я
пробовал с переменной, захватывая все
производные значения после выполнения
for-each
, но для дальнейшей обработки
эта переменная выводится (RTF), в XSLt
1.0, у меня нет дескриптора ни в одной функции-набора ()