XML & XSL

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Ответить
as90
Сообщения: 1
Зарегистрирован: 23 фев 2010, 20:59

Всем привет!
Пишется проект на C# в VS, надо сформировать отчет...

Как с помощью XML & XSL сформировать HTML страницу?
(может статьи или книги или еще что-то, буду благодарен за любую информацию)
Хыиуду
Сообщения: 2442
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

Файл test.xml

Код: Выделить всё

<?xml version="1.0" encoding="windows-1251"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<!DOCTYPE PRODUCTS
     [
     <!ELEMENT PRODUCTS (PRODUCT)*>
     <!ELEMENT PRODUCT (TITLE, SORT+)>
     <!ELEMENT TITLE (#PCDATA)>
     <!ELEMENT COLOR (#PCDATA)>
     <!ELEMENT PRICE (#PCDATA)>
     <!ELEMENT SORT (COLOR, PRICE)>
     <!ATTLIST PRODUCT import (да | нет) "нет">
     ]
>
<PRODUCTS>
    <PRODUCT import="yes">
        <TITLE> Пуфик </TITLE>
        <SORT>
            <COLOR> red </COLOR>
            <PRICE> $10.00 </PRICE>
        </SORT>
        <SORT>
            <COLOR> blue </COLOR>
            <PRICE> $11.00 </PRICE>
        </SORT>
        <SORT>
            <COLOR> gray </COLOR>
            <PRICE> $16.00 </PRICE>
        </SORT>
    </PRODUCT>
    <PRODUCT>
        <TITLE> Шняга </TITLE>
        <SORT>
            <COLOR> red </COLOR>
            <PRICE> $20.00 </PRICE>
        </SORT>
        <SORT>
            <COLOR> green </COLOR>
            <PRICE> $22.00 </PRICE>
        </SORT>
    </PRODUCT>
    <PRODUCT import="да">
        <TITLE> Импортная фиговина </TITLE>
        <SORT>
            <COLOR> red </COLOR>
            <PRICE> $30.00 </PRICE>
        </SORT>
        <SORT>
            <COLOR> blue </COLOR>
            <PRICE> $33.00 </PRICE>
        </SORT>
    </PRODUCT>
    <PRODUCT>
        <TITLE> Отечественная хреновина </TITLE>
        <SORT>
            <COLOR> red </COLOR>
            <PRICE> $40.00 </PRICE>
        </SORT>
        <SORT>
            <COLOR> blue </COLOR>
            <PRICE> $44.00 </PRICE>
        </SORT>
    </PRODUCT>
    <PRODUCT>
        <TITLE> Дорогая гравицапа </TITLE>
        <SORT>
            <COLOR> red </COLOR>
            <PRICE> $50.00 </PRICE>
        </SORT>
        <SORT>
            <COLOR> gray </COLOR>
            <PRICE> $55.00 </PRICE>
        </SORT>
    </PRODUCT>
</PRODUCTS>
Файл test.xsl

Код: Выделить всё


<?xml version="1.0" encoding="windows-1251"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
	<H1>Каталог товаров</H1>
	<xsl:apply-templates select="PRODUCTS/PRODUCT" /> 
	<!-- <xsl:apply-templates select="PRODUCTS/PRODUCT[SORT/COLOR='gray']" />  -->
</xsl:template>
<xsl:template match="PRODUCT">

	<SPAN style="font-style:italic">Наименование:</SPAN>
	<xsl:value-of select="TITLE" /> 

	<SPAN style="font-style:italic">Импортный:</SPAN>
	<xsl:value-of select="@import" /> 

	<TABLE border="1" width="100%" cellspacing="0">
	<xsl:apply-templates select="SORT" />
	</TABLE>
	

</xsl:template>
<xsl:template match="SORT">
	<TR>
	<TD><xsl:value-of select="COLOR" /></TD>
	<TD><xsl:value-of select="PRICE" /></TD>
	</TR>
</xsl:template>
</xsl:stylesheet>
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить