BGBilling XSLT

Материал из BiTel WiKi

(Различия между версиями)
Перейти к: навигация, поиск
(Содержимое страницы заменено на «Статья переехала: http://wiki.bitel.ru/index.php/XSLT»)
Строка 1: Строка 1:
-
XSLT - язык, основанный на формате XML. Его назначение - трансформация XML дерева с данными в какой-либо результирующий формат. Например: TXT, XHTML (HTML документ, соответсвующий правилам формата XML). Трансформация производится XSLT процессором.
+
Статья переехала: http://wiki.bitel.ru/index.php/XSLT
-
 
+
-
{|
+
-
|- valign=top
+
-
| [[Изображение:XSLT_1.png]]
+
-
|}
+
-
 
+
-
 
+
-
В XSLT шаблоне различаются просто теги, которые без изменений перейдут в результирующий документ и управляющие теги для процессора с префиксом xslt. Пример фрагмента XSLT документа:
+
-
<pre>
+
-
<tbody>
+
-
  <xsl:for-each select="bills/bill">
+
-
  <xsl:variable name="uid" select="@uid"/>
+
-
  <tr>
+
-
  <td nowrap="nowrap"><xsl:value-of select="@number"/></td>
+
-
  <td><xsl:value-of select="@create_dt"/></td>
+
-
  <td><xsl:value-of select="@pay_dt"/></td>
+
-
  <td nowrap="nowrap"><xsl:value-of select="@summ"/></td>
+
-
  <td nowrap="nowrap">
+
-
    <xsl:choose>
+
-
    <xsl:when test="@status=0">не оплачен</xsl:when>
+
-
    <xsl:otherwise>оплачен</xsl:otherwise>
+
-
    </xsl:choose>
+
-
  </td>
+
-
  <td>
+
-
    <xsl:choose>
+
-
    <xsl:when test="$uid=-1">создан Вами</xsl:when>
+
-
    <xsl:otherwise>создан администратором</xsl:otherwise>
+
-
    </xsl:choose>
+
-
  < /td>
+
-
</pre>
+
-
 
+
-
Здесь форматируется XHTML документ, при этом используются стандартые HTML теги (tr, td) и управляющие теги поцессора (xsl:choose, xsl:value-of).
+
-
 
+
-
Рассмотрим несколько XSLT директив, встречающихся в приведенном фрагменте:
+
-
'''<xsl:for-each select="bills/bill">'''  - для каждого узла '''bills/bill''' исходного дерева XML данных выполнить то что указано до '''</xsl:for-each>'''
+
-
 
+
-
'''<xsl:variable name="uid" select="@uid"/>''' - создать переменную '''uid''' и присвоить ей значение из атрибута '''uid''' текущего узла '''bill'''
+
-
 
+
-
'''<xsl:value-of select="@number"/>''' - вставить значение атрибута '''number''' текущего элемента '''bill'''
+
-
 
+
-
'''<xsl:choose>''' - условный оператор, аналог case либо '''if-else''', внутри могу быть несколько '''<xsl:when>''' условий и действие по умолчанию '''<xsl:otherwise>'''
+
-
 
+
-
С помощью XSLT формируются все выводимые биллингом XHTML, TXT, PDF формы, в т.ч. страницы статистики пользователя. Модифицируя шаблон, поставляемый в составе системы, вы можете менять оформление выводимых данных любым образом. Для этого нужно только получить XML документ с данными и имя XSLT шаблона, который биллинг использует для той или иной трансформации.
+
-
 
+
-
Ниже приведены ссылки на руководства по XSLT. Язык разметки XSLT тесно завязан с языком XPath - языком выборки данных в XML деревьях. XSLT процессор используемый биллингом поддерживает спецификации XSLT и XPath версий 1.0 и 2.0.
+
-
 
+
-
'''На русском:'''
+
-
#http://www.raleigh.ru/XML/XSLTutorial/contents.htm либо http://www.zvon.org/xxl/XSLTutorial/Output_rus/contents.htm
+
-
#http://www.webclub.ru/archive/xml/article-724.html либо http://citforum.ru/internet/xmlxslt/xmlxslt.shtml
+
-
#http://www.opennet.ru/base/dev/xml_example.txt.html
+
-
#http://citforum.ru/internet/xslt/index.shtml
+
-
 
+
-
'''На английском:'''
+
-
#ftp://bgbilling.ru/pub/bgbilling/doc
+
-
#http://www.w3schools.com/xsl/default.asp
+
-
#http://www.w3schools.com/xpath/default.asp
+
-
#http://www.tizag.com/xmlTutorial/xslttutorial.php
+
-
#http://www.zvon.org/xxl/XSLTutorial/Books/Book1/index.html
+
-
#http://www.topxml.com/xsl/tutorials/intro/default.asp
+
-
#Запрос в Google: http://www.google.ru/search?hl=en&q=xslt+tutorial
+

Версия 07:21, 22 декабря 2008

Статья переехала: http://wiki.bitel.ru/index.php/XSLT

Личные инструменты