У меня есть такой вид XML:
<nav:objectList>
<nav:item >
<nav:attribute name="display">1</nav:attribute>
<nav:attribute name="className">document.Document</nav:attribute>
<nav:attribute name="title">item 1</nav:attribute>
<nav:attribute name="getFileExtension">pdf</nav:attribute>
</nav:item>
<nav:item >
<nav:attribute name="display">2</nav:attribute>
<nav:attribute name="className">video.Video</nav:attribute>
<nav:attribute name="title">item 2</nav:attribute>
<nav:attribute name="getFileExtension">mp4</nav:attribute>
</nav:item>
<nav:item >
<nav:attribute name="display">3</nav:attribute>
<nav:attribute name="className">document.Document</nav:attribute>
<nav:attribute name="title">item 3</nav:attribute>
<nav:attribute name="getFileExtension">pdf</nav:attribute>
</nav:item>
<nav:item >
<nav:attribute name="display">4</nav:attribute>
<nav:attribute name="className">video.Video</nav:attribute>
<nav:attribute name="title">item 4</nav:attribute>
<nav:attribute name="getFileExtension">mp4</nav:attribute>
</nav:item>
<nav:item >
<nav:attribute name="display">5</nav:attribute>
<nav:attribute name="className">document.Document</nav:attribute>
<nav:attribute name="title">item 5</nav:attribute>
<nav:attribute name="getFileExtension">pdf</nav:attribute>
</nav:item>
</nav:objectList>
Я хочу подсчитать все document.Document , предшествующие текущему document.Document.
(Я не хочу считать видео. Видео)
Например, если я на 5, я хочу вернуть 2, а не 4.
Это похоже на пост: XSLT - Сравнение элементов предыдущего брата с элементом узла текущего
Я действительно пытался (много вещей), как:
count(preceding-sibling::nav:attribute[@name='type.className']='com.arsdigita.cms.document.Document'
Спасибо в
Ромны