Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / ниче не получается с XSLT :( / 3 сообщений из 3, страница 1 из 1
02.07.2009, 18:05
    #36070739
badboychik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ниче не получается с XSLT :(
вот есть fb2 файлик, как оказалось это обычный XML, хочу стиль для компа написать для тренировки. почитал туториалы, примеры, делаю как там, ниче не выходит:
Код: plaintext
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.
47.
48.
49.
<?xml version="1.0" encoding="windows-1251"?>
<?xml-stylesheet type="text/xsl" href="fb2style.xsl"?>
<FictionBook xmlns:l="http://www.w3.org/1999/xlink" xmlns="http://www.gribuser.ru/xml/fictionbook/2.0">
<description> 
	<title-info>
		<genre match="">sci_psychology</genre> 
		<author> 
			<first-name>Имя</first-name> 
			<middle-name>О.</middle-name> 
			<last-name>Ф.</last-name> <nickname/> 
			<home-page/> 
			<email/> 
		</author> 
		<book-title>Название</book-title> 
		<annotation>
		    <p><strong>От издателя</strong></p>		    
		</annotation> 
		<annotation><p>...</p></annotation> 
		<keywords/> 
		<date> 2001 </date> 
		<coverpage> <image l:href="#cover.jpg"/> </coverpage> 
		<lang>ru</lang> <src-lang>ru</src-lang> <sequence number="" name=""/> 
	</title-info> 
	<document-info>
		<author> 
			<first-name>...</first-name> 
			<middle-name/> 
			<last-name/> <nickname/> <home-page/> <email/> 
		</author> 
		<program-used>...</program-used> 
		<date value="2009-05-08"> 2009 - 05 - 08 </date> <src-ocr/> 
		<id>...</id> 
		<version> 1 . 0 </version> 
		<history> <p/></history> 
	</document-info> 
	<publish-info> <book-name></book-name> <publisher>Попурри</publisher> <city>Москва</city> <year> 2007 </year> 
<isbn> 978 - 985 - 15 - 0037 - 2 ,  0 - 671 - 64678 - 8 </isbn> </publish-info> 
</description> 
<body> 
  <title>
   <p>Автор</p>
   <p>Название</p>
  </title>
  <section>
   <title>
    <p>ОГЛАВЛЕНИЕ</p>
   </title>
   <p><a l:href="#n_000">Глава  1 </a></p>
</body>
</FictionBook>
Стиль такой сделал
Код: plaintext
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.
<!-- заголовки пропустил -->
<!-- Главное правило -->
  <xsl:template match="/">
    <html>
      <head>
      	<title>   Книга     </title>
      </head>
      <body>
      	<xsl:value-of select="name()"/>  
        <br/>
	    <xsl:text>Описание: </xsl:text>
	    <xsl:apply-templates select="description"/>
	 	<hr/>
		<xsl:text>Текст: </xsl:text>
		<xsl:apply-templates select="body"/>
      </body>
    </html>
   </xsl:template>
    <!-- Подичененные правила -->
    <!-- Секция описания-->
  <xsl:template match="description">
    <div class="descr">
      <div class="title-info">
    	Жанр: <b><xsl:value-of select="title-info/genre"/></b>
		Название: <b><xsl:value-of select="title-info/book-title"/></b>
      </div>
      <xsl:apply-templates select="document-info"/>
    </div>
  </xsl:template>
ну и так далее
дело в том что получается такое
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<html>
  <head>
    <META http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <title>   Книга     </title>
  </head>
  <body>
      	<br>Описание: <hr>Текст: </body>
</html>
т.е. кабутто тег <xsl:apply-templates select="description"/> не вызывает никакого эффекта, а срабатывает только основное правило
...
Рейтинг: 0 / 0
02.07.2009, 19:50
    #36070944
badboychik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ниче не получается с XSLT :(
Блин! почему когда я из вот этого вот
Код: plaintext
1.
<FictionBook xmlns:l="http://www.w3.org/1999/xlink" xmlns="http://www.gribuser.ru/xml/fictionbook/2.0">
сделал вот это
Код: plaintext
<FictionBook>
, все заработало!!
...
Рейтинг: 0 / 0
02.07.2009, 21:51
    #36071094
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ниче не получается с XSLT :(
Потому, что вы поменяли пространство имен при этом. Вам нужно в XSL квалифицировать имена всех узлов

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


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