powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Составной ключ к множеству
1 сообщений из 1, страница 1 из 1
Составной ключ к множеству
    #38708651
MADONZY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте! Имеется XML :

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="lab61.xsl"?>
<lab6_1>
    <course id ="XML">
        <title>
        XML и  XSLT. Современные технологии  
        обработки данных для Web и Office 2007 
        </title>
        <keywords>
            <keyword>XML</keyword>
            <keyword>XML Schema</keyword>
            <keyword>XPath</keyword>
            <keyword>XSLT</keyword>
        </keywords>
        <teachers>
            <teacher>Никитин И.Г.</teacher>
            <teacher>Павлов Ю.Е.</teacher>
        </teachers>
    </course>
    <course id ="AJAX">
        <title>AJAX. Ра зработка web-приложений для Web 2.0</title>
        <keywords>
            <keyword>AJAX</keyword>
            <keyword>XML</keyword>
            <keyword>XML Sc hema</keyword>
            <keyword>JavaScript</keyword>
            <keyword>XSLT</keyword>
        </keywords>
        <teachers> 
            <teacher>Никитин И.Г.</teacher>
            <teacher>Чебыкин Р.И.</teacher>
        </teachers>
    </course>
    <course id ="PHP">
        <title>Профессиональное программирование на PHP 5</title>
        <keywords>
            <keyword>PHP</keyword>
            <keyword>XML</keyword>
            <keyword>XSLT</keyword>
        </keywords>
        <teachers>
            <teacher>Никитин И.Г.</teacher>
            <teacher>Борисов И.О.</teacher>
        </teachers>
    </course> 
</lab6_1>



и есть XSL :
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

	<xsl:key name="coursesByTeachers" match="/lab6_1/course" use="teachers/teacher"/>
	<xsl:key name="coursesByKeywords" match="/lab6_1/course" use="keywords/keyword"/>
	<xsl:key name="coursesByKeywordsAndTeacher" match="/lab6_1/course" use="concat(teachers/teacher, keywords/keyword)"/>

	<xsl:template match="/">
		<html>
			<body>
				<h1>All courses:</h1>
				<ul>
					<xsl:apply-templates select="lab6_1/course" />
				</ul>
				<h2>Чебыкин Р.И. is reading</h2>
				<ul>
					<xsl:apply-templates select="key('coursesByTeachers', 'Чебыкин Р.И.')"/>
				</ul>

				<h2>XML is in</h2>
				<ul>
					<xsl:apply-templates select="key('coursesByKeywords', 'XML')"/>
				</ul>

				<h2>Борисов И.О. is reading XML in</h2>
				<ul>
					<xsl:apply-templates select="key('coursesByKeywordsAndTeacher', 'Борисов И.О.XSLT')"/> <!-- Не видит -->
				</ul>
			</body>
		</html>
	</xsl:template>

	<xsl:template match="course">
		<li>
			<xsl:value-of select="@id" />
		</li>
	</xsl:template>

</xsl:stylesheet>



В общем задача такова: Вывести название курса который ведет Борисов и в котором есть тема XSLT . Дело в том что моя конструкция ищет в каждом курсе по ПЕРВОМУ ключевому слову и по ПЕРВОМУ преподователю.
И теперь вопрос: Как заставить его гулять по всем потомкам и соответственно сравнивать каждого препода ко всем курсам?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Составной ключ к множеству
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]