powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / ниче не получается с XSLT :(
3 сообщений из 3, страница 1 из 1
ниче не получается с XSLT :(
    #36070739
Фотография badboychik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот есть 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
ниче не получается с XSLT :(
    #36070944
Фотография badboychik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин! почему когда я из вот этого вот
Код: plaintext
1.
<FictionBook xmlns:l="http://www.w3.org/1999/xlink" xmlns="http://www.gribuser.ru/xml/fictionbook/2.0">
сделал вот это
Код: plaintext
<FictionBook>
, все заработало!!
...
Рейтинг: 0 / 0
ниче не получается с XSLT :(
    #36071094
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому, что вы поменяли пространство имен при этом. Вам нужно в XSL квалифицировать имена всех узлов

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


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