2013-11-29 2 views
-5

enter image description hereИспользование выражений с Xpath

Моя проблема заключается, чтобы найти названия и каждый из фамилии первого автора всех articles.I есть задание на XPath, и это последний вопрос я уже стучал голова больше часа, но я не могу понять. Спасибо за помощь.

+3

Рекомендации по использованию общего СО. Опубликуйте изображение/HTML/XML/В любом случае, если вы здесь, то в будущем сайт, на который вы ссылаетесь, падает (И тогда ваш вопрос теряет весь контекст) и публикуйте некоторые вещи, которые вы пробовали, чтобы мы могли исправить, где вы поступили неправильно (лучше, чем мы просто отвечаем за домашние задания в течение всего дня!) – MindingData

+2

Если вы пробовали в течение часа, что вы пробовали? Можете ли вы показать нам, где ваша проблема? –

+0

Очень сложно работать с XML, чтобы вы отображали структуру изображения. Когда вы [редактируете] свой вопрос, чтобы опубликовать фактические усилия, которые вы предприняли для решения этой проблемы, пожалуйста, также включите небольшой, соответствующий образец XML (** не ** список из 5000 публикаций, но ** небольшой, соответствующий образец**). Невозможно скопировать/вставить из графика, чтобы протестировать или отладить что-либо, и я, конечно же, не собираюсь писать образец XML в соответствии с вашим описанием, чтобы попытаться помочь. :-) –

ответ

1

Первое, что вам нужно сделать, это найти все статьи. Теперь мы можем либо сделать это, зная их конкретное положение в дереве - /Publications/Proceedings/Article - или найти все Статьи, где бы они ни находились - //Article. Однако это дает нам слишком много информации и нуждается в сужении.

Нам нужны две части информации, название статьи и фамилия первого автора.

Получение названия, проще, чем из статьи, мы можем просто захватить заголовок, например: Article/Title.

Чтобы получить информацию об авторе немного сложнее, последнее имя anygiven Author может быть выполнено следующим образом: Author/Surname, однако нам нужен один автор.

Чтобы получить первый автор данной статьи, мы можем просто использовать функцию position(), чтобы захватить первую (помните, что индексирование массива XML начинается с 1): Author[position()=1]. Мы можем сократить это, просто используя номер сам - Author[1]

Оттуда у вас есть достаточно информации, чтобы построить два XPaths вам нужно. Удачи.

Смежные вопросы