Mercurial > hg > tema
changeset 31:3e77076621a8
Remove obsolete docs and sample.
author | Mikhail Kryshen <mikhail@kryshen.net> |
---|---|
date | Sun, 30 Aug 2009 02:51:15 +0400 |
parents | 54539dff18ca |
children | bdd1c8d6b560 |
files | build.xml misc/biotopes/biotope-top.sql misc/biotopes/biotope.sql misc/biotopes/biotope.template misc/biotopes/brief.dtd misc/biotopes/class.sql misc/biotopes/classes.template misc/biotopes/doc/article.txt misc/biotopes/doc/readme.html misc/biotopes/doc/readme.txt misc/biotopes/main.template misc/biotopes/photo.sql misc/biotopes/photo.template misc/biotopes/plant.sql misc/biotopes/plants.template misc/biotopes/tema.properties misc/manual-ru-old/index.html misc/util/header misc/util/header.gpl misc/util/update_headers.pl |
diffstat | 20 files changed, 0 insertions(+), 1131 deletions(-) [+] |
line diff
1.1 --- a/build.xml Fri May 15 03:07:16 2009 +0400 1.2 +++ b/build.xml Sun Aug 30 02:51:15 2009 +0400 1.3 @@ -118,7 +118,6 @@ 1.4 <exclude name=".hg/**"/> 1.5 <exclude name=".hg*"/> 1.6 <exclude name="${build}/**"/> 1.7 - <exclude name="misc/**"/> 1.8 <exclude name="test/**"/> 1.9 <exclude name="nbproject/**"/> 1.10 <exclude name="${dist}/${ant.project.name}-*.tar.gz"/>
2.1 --- a/misc/biotopes/biotope-top.sql Fri May 15 03:07:16 2009 +0400 2.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 2.3 @@ -1,20 +0,0 @@ 2.4 -SELECT t1.*, 2.5 - 2.6 -(SELECT t2.rusname FROM biotopelist AS t2 2.7 -WHERE Left(t2.rangcode, 1) = Left(t1.rangcode, 1) AND 2.8 -Right(t2.rangcode, 8) = '00000000') AS class0, 2.9 - 2.10 -(SELECT t2.rusname FROM biotopelist AS t2 2.11 -WHERE Left(t2.rangcode, 3) = Left(t1.rangcode, 3) AND 2.12 -Right(t2.rangcode, 6) = '000000') AS class1, 2.13 - 2.14 -(SELECT t2.rusname FROM biotopelist AS t2 2.15 -WHERE Left(t2.rangcode, 5) = Left(t1.rangcode, 5) AND 2.16 -Right(t2.rangcode, 4) = '0000') AS class2, 2.17 - 2.18 -(SELECT t2.rusname FROM biotopelist AS t2 2.19 -WHERE Left(t2.rangcode, 7) = Left(t1.rangcode, 7) AND 2.20 -Right(t2.rangcode, 2) = '00') AS class3 2.21 - 2.22 -FROM biotopelist AS t1 2.23 -WHERE Right(t1.rangcode, 2) <> '00' AND rusname
3.1 --- a/misc/biotopes/biotope.sql Fri May 15 03:07:16 2009 +0400 3.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 3.3 @@ -1,24 +0,0 @@ 3.4 -SELECT t1.*, 3.5 - 3.6 -(SELECT t2.rusname FROM biotopelist AS t2 3.7 -WHERE Left(t2.rangcode, 1) = Left(t1.rangcode, 1) 3.8 -AND Right(t2.rangcode, 8) = '00000000' 3.9 -AND Right(t1.rangcode, 8) <> '00000000') AS class0, 3.10 - 3.11 -(SELECT t2.rusname FROM biotopelist AS t2 3.12 -WHERE Left(t2.rangcode, 3) = Left(t1.rangcode, 3) 3.13 -AND Right(t2.rangcode, 6) = '000000' 3.14 -AND Right(t1.rangcode, 6) <> '000000') AS class1, 3.15 - 3.16 -(SELECT t2.rusname FROM biotopelist AS t2 3.17 -WHERE Left(t2.rangcode, 5) = Left(t1.rangcode, 5) 3.18 -AND Right(t2.rangcode, 4) = '0000' 3.19 -AND Right(t1.rangcode, 4) <> '0000') AS class2, 3.20 - 3.21 -(SELECT t2.rusname FROM biotopelist AS t2 3.22 -WHERE Left(t2.rangcode, 7) = Left(t1.rangcode, 7) 3.23 -AND Right(t2.rangcode, 2) = '00' 3.24 -AND Right(t1.rangcode, 2) <> '00') AS class3 3.25 - 3.26 -FROM biotopelist AS t1 3.27 -WHERE rusname
4.1 --- a/misc/biotopes/biotope.template Fri May 15 03:07:16 2009 +0400 4.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 4.3 @@ -1,17 +0,0 @@ 4.4 -<?xml version="1.0" encoding="ISO-8859-5"?> 4.5 -<!DOCTYPE чъьАпщьу_рьтп SYSTEM "brief.dtd"> 4.6 -<!-- rangcode: <%xml_escape db\rangcode%> --> 4.7 -<чъьАпщьу_рьтп show="0"> 4.8 - <ЮьАЦщзь display="0"> 4.9 - <%optional:<зпЮБп_ЮпАъЮчАБЮпщущьО щчэуЮ="1" file="<%xml_escape image:maps/<%db\rangcode%>.gif maps/<%db\code%>.png png%>"/>%> 4.10 -<%query:photo_sql [%\<%include\photo.template%>%] <%get\code%>%> 4.11 - </ЮьАЦщзь> 4.12 - <щпврпщьу><%xml_escape db\rusname%></щпврпщьу> 4.13 - <зшпАА><%xml_escape db\class0%></зшпАА> 4.14 - <ъчтзшпАА1><%xml_escape db\class1%></ъчтзшпАА1> 4.15 - <ъчтзшпАА2><%xml_escape db\class2%></ъчтзшпАА2> 4.16 - <ъчтзшпАА3><%xml_escape db\class3%></ъчтзшпАА3> 4.17 - <зЮпБзпО_ЕпЮпзБуЮьАБьзп rows="3"><%xml_cdata db\descript%></зЮпБзпО_ЕпЮпзБуЮьАБьзп> 4.18 - <ъЮьэуЮ_чъьАпщьО rows="3"><%xml_cdata db\geobotdescr%></ъЮьэуЮ_чъьАпщьО> 4.19 - <прБчЮК_чъьАпщьО><%xml_escape db\contributors%></прБчЮК_чъьАпщьО> 4.20 -</чъьАпщьу_рьтп>
5.1 --- a/misc/biotopes/brief.dtd Fri May 15 03:07:16 2009 +0400 5.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 5.3 @@ -1,27 +0,0 @@ 5.4 -<?xml encoding="ISO-8859-5"?> 5.5 -<!ELEMENT чъьАпщьу_рьтп (ЮьАЦщзь?, щпврпщьу, зшпАА, ъчтзшпАА1, ъчтзшпАА2, ъчтзшпАА3, зЮпБзпО_ЕпЮпзБуЮьАБьзп, ъЮьэуЮ_чъьАпщьО, прБчЮК_чъьАпщьО)> 5.6 -<!ELEMENT ЮьАЦщзь (ДчБчсЮпДьО|зпЮБп_ЮпАъЮчАБЮпщущьО)*> 5.7 -<!ELEMENT ДчБчсЮпДьО EMPTY> 5.8 -<!ELEMENT зпЮБп_ЮпАъЮчАБЮпщущьО EMPTY> 5.9 -<!ELEMENT щпврпщьу (#PCDATA)> 5.10 -<!ELEMENT зшпАА (#PCDATA)> 5.11 -<!ELEMENT ъчтзшпАА1 (#PCDATA)> 5.12 -<!ELEMENT ъчтзшпАА2 (#PCDATA)> 5.13 -<!ELEMENT ъчтзшпАА3 (#PCDATA)> 5.14 -<!ELEMENT зЮпБзпО_ЕпЮпзБуЮьАБьзп (#PCDATA)> 5.15 -<!ELEMENT ъЮьэуЮ_чъьАпщьО (#PCDATA)> 5.16 -<!ELEMENT прБчЮК_чъьАпщьО (#PCDATA)> 5.17 -<!ATTLIST чъьАпщьу_рьтп show (0|1) "1"> 5.18 -<!ATTLIST ЮьАЦщзь 5.19 - display CDATA #FIXED "0"> 5.20 -<!ATTLIST ДчБчсЮпДьО 5.21 - num ID #REQUIRED 5.22 - file CDATA #REQUIRED 5.23 - big CDATA #REQUIRED 5.24 - text CDATA #IMPLIED 5.25 - прБчЮ CDATA #IMPLIED> 5.26 -<!ATTLIST зпЮБп_ЮпАъЮчАБЮпщущьО 5.27 - num ID #REQUIRED 5.28 - file CDATA #REQUIRED> 5.29 -<!ATTLIST зЮпБзпО_ЕпЮпзБуЮьАБьзп rows CDATA #FIXED "3"> 5.30 -<!ATTLIST ъЮьэуЮ_чъьАпщьО rows CDATA #FIXED "3">
6.1 --- a/misc/biotopes/class.sql Fri May 15 03:07:16 2009 +0400 6.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 6.3 @@ -1,7 +0,0 @@ 6.4 -SELECT t1.* 6.5 -FROM biotopelist AS t1 6.6 -WHERE rusname AND Right(t1.rangcode, 8) = '00000000' 6.7 - AND EXISTS 6.8 - (SELECT NULL FROM biotopelist AS t2 6.9 - WHERE Left(t2.rangcode, 1) = Left(t1.rangcode, 1) 6.10 - AND Right(t2.rangcode, 8) <> '00000000')
7.1 --- a/misc/biotopes/classes.template Fri May 15 03:07:16 2009 +0400 7.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 7.3 @@ -1,5 +0,0 @@ 7.4 -<?xml version="1.0" encoding="ISO-8859-5"?> 7.5 -<зшпААьДьзпФьО><%query:class_sql [%\ 7.6 - <!-- rangcode: <%xml_escape get\rangcode%> --> 7.7 - <зшпАА id="<%get\NUMBER%>"><%xml_escape db\rusname%></зшпАА>%]%> 7.8 -</зшпААьДьзпФьО>
8.1 --- a/misc/biotopes/doc/article.txt Fri May 15 03:07:16 2009 +0400 8.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 8.3 @@ -1,391 +0,0 @@ 8.4 -* Преобразование базы данных в XML-формат электронной библиотеки. 8.5 - 8.6 -Для решения задачи преобразования базы данных "Местообитания Восточной 8.7 -Фенноскандии" из формата Microsoft Access в XML-формат электронной 8.8 -библиотеки КарНЦ РАН была разработана программная система DbReader. 8.9 - 8.10 -Программа DbReader является универсальным средством для представления 8.11 -информации из баз данных в текстовых форматах. Программа обрабатывает 8.12 -заданные шаблоны текстовых файлов и заменяет найденные в них 8.13 -инструкции на результаты их выполнения. Различные инструкции позволяют 8.14 -формировать SQL-запросы, выполнять их и обрабатывать полученные 8.15 -данные. 8.16 - 8.17 - 8.18 -* Формат инструкций: 8.19 - 8.20 - <%<список_функций>{:|\}<данные>%> 8.21 - где 8.22 - 8.23 -<список_функций> - список имен функций, разделенных пробелами. 8.24 - Может быть пустым. 8.25 -<данные> - данные, передаваемые функции. 8.26 - 8.27 - 8.28 -* Формат данных: 8.29 - 8.30 - [<список_аргументов>][<текст>] 8.31 - где 8.32 - 8.33 -<список_аргументов> - список аргументов функции, разделенных пробелами. 8.34 - Может быть пустым. 8.35 -<текст> - текст, передаваемый функции без разбиения на аргументы. 8.36 - Может быть пустым. Количество аргументов, после которого следует 8.37 - текст, зависит от функции. 8.38 - 8.39 -Разделитель между списком функций и данными определяет, как должны 8.40 -обрабатываться данные функции: 8.41 -: - рекурсивная обработка, 8.42 -\ - передать без обработки. 8.43 - 8.44 -Если в списке функций задано две и более функции, они выполняются, 8.45 -начиная с последней, так что каждая функция получает в качестве данных 8.46 -результат выполнения следующей функции. 8.47 - 8.48 -Каждая функция имеет код возврата - целое число. Код возврата 8.49 -инструкции - код возврата первой в списке функции. Код возврата, 8.50 -получаемый при обработке текста - сумма кодов возврата обработанных 8.51 -инструкций. 8.52 - 8.53 -Вместо скобок '<', '>' можно использовать скобки '[', ']'. 8.54 - 8.55 - 8.56 -* Реализованные функции: 8.57 - 8.58 -Функция: set 8.59 -Аргументы: <имя> 8.60 -Текст: <значение> 8.61 -Действие: устанавливает значение переменной <имя> 8.62 -Результат: <имя> 8.63 -Код возврата: 1 8.64 - 8.65 -Функция: get 8.66 -Аргументы: <имя> 8.67 -Результат: значение переменной <имя>. 8.68 -Код возврата: 1, если значение переменной было установлено, 0 - иначе. 8.69 - 8.70 -Функция: prepare 8.71 -Аргументы: <имя> 8.72 -Текст: <запрос> 8.73 -Действие: Подготавливает SQL-запрос <запрос> для выполнения, 8.74 - записывает подготовленный запрос в переменную <имя>. 8.75 -Результат: <имя> 8.76 -Код возврата: 1 8.77 - 8.78 -Функция: query 8.79 -Аргументы: <имя_запроса> <шаблон> <парам1> ... <парамN> 8.80 -Действие: Выполняет запрос с параметрами, подготовленный с помощью 8.81 - функции prepare. Значения параметров подставляются в 8.82 - запрос вместо символа '?'. Значения полей ответа будут 8.83 - записаны, как переменные шаблона <шаблон>. При обработки 8.84 - шаблона <шаблон> также определяется переменная NUMBER, 8.85 - содержащая номер текущей строки ответа. Переменные, 8.86 - определенные в вызывающем шаблоне, доступны из шаблона 8.87 - <шаблон> по имени SUPER.<имя_переменной>. 8.88 - 8.89 -Результат: результат обработки шаблона <шаблон> для каждой строки 8.90 - ответа. 8.91 -Код возврата: количество полученных строк ответа. 8.92 - 8.93 -Функция: optional 8.94 -Текст: <данные> 8.95 -Результат: <данные>, если при обработке данных был получен 8.96 - код возврата отличный от 0, иначе - пустая строка. 8.97 -Код возврата: 1, если результат - пустая строка, 0 - иначе. 8.98 - 8.99 -Функция: image 8.100 -Аргументы: <исх_файл> <кон_файл> <формат> [<макс_ширина> [<макс_высота>]] 8.101 -Действие: Загружает изображение из файла <исх_файл> (путь определяется 8.102 - относительно конфигурационного параметра "resource_base") и 8.103 - преобразует его в указанный формат, сохраняя результат в 8.104 - <кон_файл>. Если заданы максимальная высота и ширина, большие 8.105 - изображения будут уменьшены. 8.106 -Результат: <кон_файл> при успешном выполнении, пустая строка - иначе. 8.107 -Код возврата: 1 при успешном выполнении, 0 - иначе. 8.108 - 8.109 -Функция: copy 8.110 -Аргументы: <исх_файл> <кон_файл> 8.111 -Действие: Копирует файл <исх_файл> в файл <кон_файл> 8.112 - (путь <исх_файл> определяется относительно 8.113 - конфигурационного параметра "resource_base"). 8.114 -Результат: <кон_файл> при успешном выполнении, пустая строка - иначе. 8.115 -Код возврата: 1 при успешном выполнении, 0 - иначе. 8.116 - 8.117 -Функция: write 8.118 -Аргументы: <имя_файла> 8.119 -Текст: <данные> 8.120 -Действие: Записывает <данные> в файл <исх_файл>. 8.121 -Результат: <кон_файл> при успешном выполнении, пустая строка - иначе. 8.122 -Код возврата: 1 при успешном выполнении, 0 - иначе. 8.123 - 8.124 -Функция: read 8.125 -Текст: <имя_файла> 8.126 -Действие: Читает файл <имя_файла>. 8.127 -Результат: прочитанные данные при успешном выполнении, пустая 8.128 - строка - иначе. 8.129 -Код возврата: 1 при успешном выполнении, 0 - иначе. 8.130 - 8.131 -Функция: include 8.132 -Текст: <имя_файла> 8.133 -Действие: включает шаблон из файла <имя_файла>. 8.134 -Результат: результат обработки шаблона. 8.135 -Код возврата: код возврата, полученный при обработке шаблона. 8.136 - 8.137 -Функция: ! 8.138 -Текст: <данные> 8.139 -Действие: нет. 8.140 -Результат: нет. 8.141 -Код возврата: код возврата, полученный при обработке текста данных. 8.142 - 8.143 -Функция: replace 8.144 -Аргументы: <стр1> <стр2> 8.145 -Текст: <данные> 8.146 -Результат: данные, с замененными вхождениями подстроки <стр1> 8.147 - на <стр2>. 8.148 -Код возврата: код возврата, полученный при обработке текста данных. 8.149 - 8.150 -Функция: xml_escape 8.151 -Текст: <данные> 8.152 -Результат: текст <данные>, в котором символы 8.153 - '&', '<', '>', '`', '\' заменены на соответствующие 8.154 - сущности XML. 8.155 -Код возврата: код возврата, полученный при обработке текста данных. 8.156 - 8.157 -Функция: xml_cdata 8.158 -Текст: <данные> 8.159 -Результат: данные в виде блока XML CDATA. 8.160 -Код возврата: код возврата, полученный при обработке текста данных. 8.161 - 8.162 -Система DbReader расширяема: возможно добавление в систему новых 8.163 -функций, реализованных в виде классов на языке Java. 8.164 - 8.165 - 8.166 -* Применение системы DbReader для преобразования базы данных 8.167 - "Местообитания Восточной Фенноскандии" из формата Microsoft Access в 8.168 - XML-формат электронной библиотеки КарНЦ РАН 8.169 - 8.170 -Для преобразования используются две таблицы базы данных "Местообитания 8.171 -Восточной Фенноскандии" (перечислены только используемые поля): 8.172 - 8.173 -biotopelist (code, rangcode, rusname, engname, descript, geobotdescr, 8.174 - contributors, descrdate) 8.175 - 8.176 - code - счетчик, ключевое поле; 8.177 - rangcode - поле в формате ABBCCDDEE, где А, BB, CC, DD, ЕЕ - коды 8.178 - класса, подклассов и растения; 8.179 - rusname, engname, descript, geobotdescr - текстовые поля; 8.180 - descrdate - дата. 8.181 - 8.182 -photos (biotope, photo, authphoto) 8.183 - 8.184 - biotope - число, указывает на code в biotopelist; 8.185 - photo - имя файла фотографии; 8.186 - authphoto - текст. 8.187 - 8.188 -Требуется сгенерировать xml-файл для каждой записи в biotopelist, файл 8.189 -со списком классов, файл со списком растений, полноразмерные и 8.190 -уменьшенные версии каждой фотографии. 8.191 - 8.192 -Для генерации xml-файлов с описаниями биотопов использовался следующий 8.193 -шаблон DbReader (файл biotope.template): 8.194 - 8.195 ----------------------------------------------------------------------- 8.196 -<?xml version="1.0" encoding="ISO-8859-5"?> 8.197 -<!DOCTYPE описание_вида SYSTEM "brief.dtd"> 8.198 -<!-- rangcode: <%xml_escape get\rangcode%> --> 8.199 -<описание_вида show="0"> 8.200 - <рисунки display="0"> 8.201 - <%optional:<карта_распространения номер="1" 8.202 - file="<%xml_escape image:maps/<%get\rangcode%>.gif maps/<%get\code%>.png png%>"/>%> 8.203 -<%query:photo_sql [%\<%include\photo.template%>%] <%get\code%>%> 8.204 - </рисунки> 8.205 - <название><%xml_escape get\rusname%></название> 8.206 - <класс><%xml_escape get\class0%></класс> 8.207 - <подкласс1><%xml_escape get\class1%></подкласс1> 8.208 - <подкласс2><%xml_escape get\class2%></подкласс2> 8.209 - <подкласс3><%xml_escape get\class3%></подкласс3> 8.210 - <краткая_характеристика rows="3"><%xml_cdata get\descript%></краткая_характеристика> 8.211 - <пример_описания rows="3"><%xml_cdata get\geobotdescr%></пример_описания> 8.212 - <авторы_описания><%xml_escape get\contributors%></авторы_описания> 8.213 -</описание_вида> 8.214 ----------------------------------------------------------------------- 8.215 - 8.216 -Соответствующий SQL-запрос, при выполнении которого устанавливаются 8.217 -значения переменных шаблона rangcode, rusname, class0, class1, class2, 8.218 -class3, descript, geobotdescr и contributors (файл biotope.sql): 8.219 - 8.220 ----------------------------------------------------------------------- 8.221 -SELECT t1.*, 8.222 - 8.223 -(SELECT t2.rusname FROM biotopelist AS t2 8.224 -WHERE Left(t2.rangcode, 1) = Left(t1.rangcode, 1) 8.225 -AND Right(t2.rangcode, 8) = '00000000' 8.226 -AND Right(t1.rangcode, 8) <> '00000000') AS class0, 8.227 - 8.228 -(SELECT t2.rusname FROM biotopelist AS t2 8.229 -WHERE Left(t2.rangcode, 3) = Left(t1.rangcode, 3) 8.230 -AND Right(t2.rangcode, 6) = '000000' 8.231 -AND Right(t1.rangcode, 6) <> '000000') AS class1, 8.232 - 8.233 -(SELECT t2.rusname FROM biotopelist AS t2 8.234 -WHERE Left(t2.rangcode, 5) = Left(t1.rangcode, 5) 8.235 -AND Right(t2.rangcode, 4) = '0000' 8.236 -AND Right(t1.rangcode, 4) <> '0000') AS class2, 8.237 - 8.238 -(SELECT t2.rusname FROM biotopelist AS t2 8.239 -WHERE Left(t2.rangcode, 7) = Left(t1.rangcode, 7) 8.240 -AND Right(t2.rangcode, 2) = '00' 8.241 -AND Right(t1.rangcode, 2) <> '00') AS class3 8.242 - 8.243 -FROM biotopelist AS t1 8.244 -WHERE rusname 8.245 ----------------------------------------------------------------------- 8.246 - 8.247 -Шаблон biotope.template содержит инструкцию <%include\photo.template%>, 8.248 -включающую шаблон описания фотографии (файл photo.template): 8.249 - 8.250 ----------------------------------------------------------------------- 8.251 - <фотография num="<%xml_escape get\NUMBER%>" 8.252 - <%optional:автор="<%xml_escape get\authphoto%>" %>text="" 8.253 - file="<%xml_escape image:biotopephotos/<%get\photo%> images/<%get\SUPER.code%>_<%get\NUMBER%>.jpg jpg 300 300%>" 8.254 - big="<%xml_escape copy:biotopephotos/<%get\photo%> images/big/<%get\SUPER.code%>_<%get\NUMBER%>.jpg%>"/> 8.255 ----------------------------------------------------------------------- 8.256 - 8.257 -Соответствующий SQL-запрос для получения описания фотографий 8.258 -(photo.sql): 8.259 - 8.260 ----------------------------------------------------------------------- 8.261 -SELECT * from photos WHERE biotope = ? 8.262 ----------------------------------------------------------------------- 8.263 - 8.264 -Шаблон, генерирующий список классов (файл classes.template): 8.265 - 8.266 ----------------------------------------------------------------------- 8.267 -<?xml version="1.0" encoding="ISO-8859-5"?> 8.268 -<классификация><%query:class_sql [%\ 8.269 - <!-- rangcode: <%xml_escape get\rangcode%> --> 8.270 - <класс id="<%get\NUMBER%>"><%xml_escape get\rusname%></класс>%]%> 8.271 -</классификация> 8.272 ----------------------------------------------------------------------- 8.273 - 8.274 -Соответствующий SQL-запрос (class.sql): 8.275 - 8.276 ----------------------------------------------------------------------- 8.277 -SELECT t1.* 8.278 -FROM biotopelist AS t1 8.279 -WHERE rusname AND Right(t1.rangcode, 8) = '00000000' 8.280 - AND EXISTS 8.281 - (SELECT NULL FROM biotopelist AS t2 8.282 - WHERE Left(t2.rangcode, 1) = Left(t1.rangcode, 1) 8.283 - AND Right(t2.rangcode, 8) <> '00000000') 8.284 ----------------------------------------------------------------------- 8.285 - 8.286 -Шаблон, генерирующий список растений (файл plants.template): 8.287 - 8.288 ----------------------------------------------------------------------- 8.289 -<?xml version="1.0" encoding="ISO-8859-5"?> 8.290 -<растения><%query:plant_sql [%\ 8.291 - <!-- rangcode: <%xml_escape get\rangcode%> --> 8.292 - <растение><%xml_escape get\rusname%></растение>%]%> 8.293 -</растения> 8.294 ----------------------------------------------------------------------- 8.295 - 8.296 -Соответствующий SQL-запрос (plant.sql): 8.297 - 8.298 ----------------------------------------------------------------------- 8.299 -SELECT t1.* 8.300 -FROM biotopelist AS t1 8.301 -WHERE rusname AND Right(t1.rangcode, 2) <> '00' 8.302 ----------------------------------------------------------------------- 8.303 - 8.304 -Система DbReader начинает работу с обработки шаблона index.template, 8.305 -который содержит вызовы перечисленных выше SQL-запросов и включения 8.306 -шаблонов: 8.307 - 8.308 ----------------------------------------------------------------------- 8.309 -<%!: 8.310 - <%prepare:biotope_sql <%read\biotope.sql%>%> 8.311 - <%prepare:photo_sql <%read\photo.sql%>%> 8.312 - <%prepare:class_sql <%read\class.sql%>%> 8.313 - <%prepare:plant_sql <%read\plant.sql%>%> 8.314 - 8.315 - <%query:biotope_sql [%\<%write:<%get\code%>.xml <%include\biotope.template%>%> %]%> 8.316 - 8.317 - <%write:classes.xml <%include\classes.template%>%> 8.318 - <%write:plants.xml <%include\plants.template%>%> 8.319 -%> 8.320 ----------------------------------------------------------------------- 8.321 - 8.322 -Пример сгенерированного XML-файла: 8.323 - 8.324 ----------------------------------------------------------------------- 8.325 -<?xml version="1.0" encoding="ISO-8859-5"?> 8.326 -<!DOCTYPE описание_вида SYSTEM "brief.dtd"> 8.327 -<!-- rangcode: E04020302 --> 8.328 -<описание_вида show="0"> 8.329 - <рисунки display="0"> 8.330 - <фотография num="1" автор="Крышень А.М." text="" 8.331 - file="images/3_1.jpg" 8.332 - big="images/big/3_1.jpg"/> 8.333 - <фотография num="2" автор="Крышень А.М." text="" 8.334 - file="images/3_2.jpg" 8.335 - big="images/big/3_2.jpg"/> 8.336 - </рисунки> 8.337 - <название>Betula sp. - Avenella flexuosa - Polytrichum commune</название> 8.338 - <класс>E. Суходольные местообитания</класс> 8.339 - <подкласс1>Автоморфные влажные</подкласс1> 8.340 - <подкласс2></подкласс2> 8.341 - <подкласс3></подкласс3> 8.342 - <краткая_характеристика rows="3"><![CDATA[Развиваются на луговиковых вырубках лесов черничного типа. Через 5 - 7 лет после рубки порослевая береза выходит из яруса травянистых растений, ее влияние сказывается, в первую очередь, на влажности почвы.]]></краткая_характеристика> 8.343 - <пример_описания rows="3"></пример_описания> 8.344 - <авторы_описания></авторы_описания> 8.345 -</описание_вида> 8.346 ----------------------------------------------------------------------- 8.347 - 8.348 - 8.349 -* Структура программы DbReader 8.350 - 8.351 -Программа DbReader написана на языке программирования Java и состоит 8.352 -из следующих основных классов: 8.353 - 8.354 -ru.karrc.dbreader.DbReader: cодержит точку входа программы. Загружает 8.355 -конфигурацию, устанавливает соединение с источником данных с помощью 8.356 -библиотеки JDBC, запускает обработку основного шаблона. 8.357 - 8.358 -ru.karrc.dbreader.TemplateParser: осуществляет разбор шаблона, 8.359 -обработку инструкций и вызов функций. 8.360 - 8.361 -ru.karrc.dbreader.Function: абстрактный класс. Реализации всех функций 8.362 -DbReader наследуют этот класс. 8.363 - 8.364 -ru.karrc.dbreader.FunctionDataParser: обработчик данных 8.365 -функции. Посволяет получить список аргументов и текст, передаваемый 8.366 -функции. При необходимости вызывает рекурсивную обработку данных с 8.367 -помощью TemplateParser. 8.368 - 8.369 -ru.karrc.dbreader.Functions: содержит реализации функций в виде 8.370 -анонимных классов, наследующих Function. 8.371 - 8.372 -ru.karrc.dbreader.TemplateParser: исключение, выбрасываемое в случае 8.373 -возникновения ошибки при обработке шаблона. 8.374 - 8.375 -Кроме того, реализовано несколько впомогательных классов, которые 8.376 -используются в реализациях функций системы. 8.377 - 8.378 - 8.379 -* Метрики реализованной программной системы. 8.380 - 8.381 -Количество файлов исходного кода: 8, 8.382 -Количество Java-классов (включая анонимные): 27, 8.383 -Общее количество строк исходного текста: 1311, 8.384 -Количество строк кода (исключая пустые строки и комментарии): 812, 8.385 -Количество строк комментариев: 180. 8.386 - 8.387 - 8.388 -* Заключение 8.389 - 8.390 -Автором была разработана программная система DbReader, которая 8.391 -является расширяемым и универсальным средством для представления 8.392 -информации из баз данных в текстовых форматах. С помощью системы 8.393 -DbReader база данных "Местообитания Восточной Фенноскандии" была 8.394 -переведена в XML-формат электронной библиотеки КарНЦ РАН.
9.1 --- a/misc/biotopes/doc/readme.html Fri May 15 03:07:16 2009 +0400 9.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 9.3 @@ -1,86 +0,0 @@ 9.4 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 9.5 - "DTD/xhtml1-transitional.dtd"> 9.6 - 9.7 -<html> 9.8 - 9.9 -<head> 9.10 - <title>DbReader</title> 9.11 - <meta http-equiv="Content-Type" content="text/html; charset=koi8-r" /> 9.12 -</head> 9.13 - 9.14 -<body> 9.15 -<h1>DbReader</h1> 9.16 - 9.17 -<h2>Установка программы</h2> 9.18 -<ol> 9.19 -<li>Распаковать архив.</li> 9.20 - 9.21 -<li>Установить источник данных:<br /> 9.22 -в Windows 2000: Панель управления/Администрирование/Источники данных (ODBC), добавить biotopes-data.mdb.</li> 9.23 - 9.24 -<li>Настроить программу:<br /> 9.25 -В файле dbreader.properties указать имя, присвоенное источнику данных:<br /> 9.26 - <code>resource: jdbc:odbc:<em>имя</em></code><br /> 9.27 -и путь к каталогу, относительно которого программа будет искать изображения (содержащий biotopephotos и maps):<br /> 9.28 - <code>resource_base: C:\\biotopes</code><br /> 9.29 -(символ '\' необходимо дублировать)</li> 9.30 - 9.31 -<li>Запуск программы:<br /> 9.32 -<code>dbreader.bat</code> или<br /> 9.33 -<code>java -jar dbreader.jar</code>.<br /> 9.34 -Для запуска необходима Java Runtime Environment (JRE) 5.0, можно скачать с <a href="http://java.sun.com/j2se/1.5.0/download.jsp">http://java.sun.com/j2se/1.5.0/download.jsp</a>. Возможно, будет работать и со старыми версиями JRE - не проверял. 9.35 - 9.36 -Все значения файла конфигурации можно переопределять при запуске программы:<br /> 9.37 -команда <code>java -Dru.karrc.dbreader.<em>ключ</em>=<em>значение</em> -jar dbreader.jar</code><br /> 9.38 -(например: <code>java -Dru.karrc.dbreader.log=dbreader.log -jar dbreader.jar</code>)</li> 9.39 -</ol> 9.40 - 9.41 -<h2>Работа программы</h2> 9.42 - 9.43 -<p>Программа выполняет запрос biotope.sql (или другой, указанный в dbreader.properties), после чего обрабатывает файл biotope.template, заменяя найденные в нем инструкции на результаты их выполнения.</p> 9.44 -<p>Формат инструкций: <code><%<em>список_функций</em>[:|\]<em>данные</em>%></code>, <em>список функций</em> - имена функций разделенные пробелом, список может быть пустым. Если указано несколько функций, они выполняются начиная с последней.</p> 9.45 - 9.46 -<h3>Разделители между списком функций и данными</h3> 9.47 - 9.48 -<ul> 9.49 - <li><code>:</code> - данные будут обрабатываться рекурсивно.</li> 9.50 - <li><code>\</code> - данные будут переданы функции без обработки. Можно использовать для экранирования комбинаций символов <code><%</code> и <code>%></code> (<code><%\<%%></code> и <code><%\%%>></code>).</li> 9.51 -</ul> 9.52 - 9.53 -<h3>Функции</h3> 9.54 - 9.55 -<ul> 9.56 - <li><code><%get:<em>имя</em>%></code><br /> 9.57 - Заменяется на значение встроенной переменной или колонки запроса.</li> 9.58 - 9.59 - <li><code><%optional:<em>текст</em>%></code><br /> 9.60 - Заменяется на <em>текст</em>, если в нем найдены инструкции, заменившиеся на непустые строки, иначе заменяется на пустую строку.</li> 9.61 - 9.62 - <li><code><%escape:<em>текст</em>%></code><br /> 9.63 - Заменяет в тексте "опасные" символы (таблица замен задается в файле конфигурации).</li> 9.64 - 9.65 - <li><code><%invoke:<em>имя</em>; <em>парам1</em> <em>парам2</em> ... <em>парамN</em>%></code><br /> 9.66 - Выполняет запрос с параметрами <em>имя</em>.sql и заменяется на результаты обработки шаблона <em>имя</em>.template. Значения параметров подставляются в запрос вместо символа '?'.</li> 9.67 - 9.68 - <li><code><%image:<em>исх_файл</em> <em>кон_файл</em> <em>формат</em> [<em>макс_ширина</em>] [<em>макс_высота</em>]%></code><br /> 9.69 - Загружает изображение из файла <em>исх_файл</em> (путь определяется относительно конфигурационного параметра "resource_base") и преобразует его в указанный формат, сохраняя результат в <em>кон_файл</em>. Если заданы максимальная высота и ширина, большие изображения будут уменьшены. 9.70 -При успешном выполнении, инструкция <code><%image:...%></code> будет заменена на значение <em>кон_файл</em>, иначе - на пустую строку.</li> 9.71 - 9.72 - <li><code><%copy:<em>исх_файл</em> <em>кон_файл</em>%></code><br /> 9.73 - Копирует файл <em>исх_файл</em> (путь определяется относительно конфигурационного параметра "resource_base") в <em>кон_файл</em>. При успешном выполнении, инструкция <code><%copy:...%></code> будет заменена на значение <em>кон_файл</em>, иначе - на пустую строку.</li> 9.74 -</ul> 9.75 - 9.76 -<h3>Встроенные переменные</h3> 9.77 - 9.78 -<p><code>NUMBER</code> - порядковый номер строки результата выполнения запроса. 9.79 -Чтобы обратиться к переменной запроса, из которого обрабатываемый шаблон был вызван с помощью функции invoke, перед именем переменной нужно добавить <code>SUPER.</code> (например: <code>SUPER.NUMBER</code>).</p> 9.80 - 9.81 -<h3>Пример</h3> 9.82 - 9.83 -<p>Следующая инструкция получит значение из столбца name и заменит в нем специальные символы:</p> 9.84 -<p><code><%escape get:name%></code></p> 9.85 - 9.86 -<p align="right"><i><a href="mailto:kryshen@cs.karelia.ru">Михаил Крышень</a></i></p> 9.87 - 9.88 -</body> 9.89 -</html>
10.1 --- a/misc/biotopes/doc/readme.txt Fri May 15 03:07:16 2009 +0400 10.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 10.3 @@ -1,63 +0,0 @@ 10.4 -text/plain; charset=UTF-8 10.5 - 10.6 -пёя│я┌п╟п╫п╬п╡п╨п╟ п©я─п╬пЁя─п╟п╪п╪я▀ 10.7 -------------------- 10.8 - 10.9 -1. п═п╟я│п©п╟п╨п╬п╡п╟я┌я▄ п╟я─я┘п╦п╡. 10.10 - 10.11 -2. пёя│я┌п╟п╫п╬п╡п╦я┌я▄ п╦я│я┌п╬я┤п╫п╦п╨ п╢п╟п╫п╫я▀я┘: 10.12 -п╡ Windows 2000: п÷п╟п╫п╣п╩я▄ я┐п©я─п╟п╡п╩п╣п╫п╦я▐/п░п╢п╪п╦п╫п╦я│я┌я─п╦я─п╬п╡п╟п╫п╦п╣/п≤я│я┌п╬я┤п╫п╦п╨п╦ п╢п╟п╫п╫я▀я┘ (ODBC), п╢п╬п╠п╟п╡п╦я┌я▄ biotopes.mdb. 10.13 - 10.14 -3. п²п╟я│я┌я─п╬п╦я┌я▄ п©я─п╬пЁя─п╟п╪п╪я┐: 10.15 -п▓ я└п╟п╧п╩п╣ dbreader.properties я┐п╨п╟п╥п╟я┌я▄ п╦п╪я▐, п©я─п╦я│п╡п╬п╣п╫п╫п╬п╣ п╦я│я┌п╬я┤п╫п╦п╨я┐ п╢п╟п╫п╫я▀я┘: 10.16 - "resource: jdbc:odbc:<п╦п╪я▐>" 10.17 -п╦ п©я┐я┌я▄ п╨ п╨п╟я┌п╟п╩п╬пЁя┐, п╬я┌п╫п╬я│п╦я┌п╣п╩я▄п╫п╬ п╨п╬я┌п╬я─п╬пЁп╬ п©я─п╬пЁя─п╟п╪п╪п╟ п╠я┐п╢п╣я┌ п╦я│п╨п╟я┌я▄ п╦п╥п╬п╠я─п╟п╤п╣п╫п╦я▐ (я│п╬п╢п╣я─п╤п╟я┴п╦п╧ biotopephotos п╦ maps): 10.18 - "resource_base: C:\\biotopes" 10.19 -(я│п╦п╪п╡п╬п╩ '\' п╫п╣п╬п╠я┘п╬п╢п╦п╪п╬ п╢я┐п╠п╩п╦я─п╬п╡п╟я┌я▄) 10.20 - 10.21 -4. п≈п╟п©я┐я│п╨ п©я─п╬пЁя─п╟п╪п╪я▀: dbreader.bat п╦п╩п╦ "java -jar dbreader.jar" 10.22 -п■п╩я▐ п╥п╟п©я┐я│п╨п╟ п╫п╣п╬п╠я┘п╬п╢п╦п╪п╟ Java Runtime Environment (JRE) 5.0, п╪п╬п╤п╫п╬ я│п╨п╟я┤п╟я┌я▄ я│ http://java.sun.com/j2se/1.5.0/download.jsp. п▓п╬п╥п╪п╬п╤п╫п╬, п╠я┐п╢п╣я┌ я─п╟п╠п╬я┌п╟я┌я▄ п╦ я│п╬ я│я┌п╟я─я▀п╪п╦ п╡п╣я─я│п╦я▐п╪п╦ JRE - п╫п╣ п©я─п╬п╡п╣я─я▐п╩. 10.23 - 10.24 -п▓я│п╣ п╥п╫п╟я┤п╣п╫п╦я▐ я└п╟п╧п╩п╟ п╨п╬п╫я└п╦пЁя┐я─п╟я├п╦п╦ п╪п╬п╤п╫п╬ п©п╣я─п╣п╬п©я─п╣п╢п╣п╩я▐я┌я▄ п©я─п╦ п╥п╟п©я┐я│п╨п╣ п©я─п╬пЁя─п╟п╪п╪я▀: 10.25 - п╨п╬п╪п╟п╫п╢п╟ "java -Dru.karrc.dbreader.<п╨п╩я▌я┤>=<п╥п╫п╟я┤п╣п╫п╦п╣> -jar dbreader.jar" 10.26 -(п╫п╟п©я─п╦п╪п╣я─: "java -Dru.karrc.dbreader.log=dbreader.log -jar dbreader.jar") 10.27 - 10.28 - 10.29 -п═п╟п╠п╬я┌п╟ п©я─п╬пЁя─п╟п╪п╪я▀ 10.30 ----------------- 10.31 - 10.32 -п÷я─п╬пЁя─п╟п╪п╪п╟ п╡я▀п©п╬п╩п╫я▐п╣я┌ п╥п╟п©я─п╬я│ biotope.sql (п╦п╩п╦ п╢я─я┐пЁп╬п╧, я┐п╨п╟п╥п╟п╫п╫я▀п╧ п╡ dbreader.properties), п©п╬я│п╩п╣ я┤п╣пЁп╬ п╬п╠я─п╟п╠п╟я┌я▀п╡п╟п╣я┌ я└п╟п╧п╩ biotope.template, п╥п╟п╪п╣п╫я▐я▐ п╫п╟п╧п╢п╣п╫п╫я▀п╣ п╡ п╫п╣п╪ п╦п╫я│я┌я─я┐п╨я├п╦п╦ п╫п╟ я─п╣п╥я┐п╩я▄я┌п╟я┌я▀ п╦я┘ п╡я▀п©п╬п╩п╫п╣п╫п╦я▐. 10.33 - 10.34 -п╓п╬я─п╪п╟я┌ п╦п╫я│я┌я─я┐п╨я├п╦п╧: "<%я│п©п╦я│п╬п╨_я└я┐п╫п╨я├п╦п╧[:|\]п╢п╟п╫п╫я▀п╣%>", я│п©п╦я│п╬п╨ я└я┐п╫п╨я├п╦п╧ - п╦п╪п╣п╫п╟ я└я┐п╫п╨я├п╦п╧ я─п╟п╥п╢п╣п╩п╣п╫п╫я▀п╣ п©я─п╬п╠п╣п╩п╬п╪, я│п©п╦я│п╬п╨ п╪п╬п╤п╣я┌ п╠я▀я┌я▄ п©я┐я│я┌я▀п╪. п∙я│п╩п╦ я┐п╨п╟п╥п╟п╫п╬ п╫п╣я│п╨п╬п╩я▄п╨п╬ я└я┐п╫п╨я├п╦п╧, п╬п╫п╦ п╡я▀п©п╬п╩п╫я▐я▌я┌я│я▐ п╫п╟я┤п╦п╫п╟я▐ я│ п©п╬я│п╩п╣п╢п╫п╣п╧. 10.35 - 10.36 -п═п╟п╥п╢п╣п╩п╦я┌п╣п╩п╦ п╪п╣п╤п╢я┐ я│п©п╦я│п╨п╬п╪ я└я┐п╫п╨я├п╦п╧ п╦ п╢п╟п╫п╫я▀п╪п╦: 10.37 -':' - п╢п╟п╫п╫я▀п╣ п╠я┐п╢я┐я┌ п╬п╠я─п╟п╠п╟я┌я▀п╡п╟я┌я▄я│я▐ я─п╣п╨я┐я─я│п╦п╡п╫п╬. 10.38 -'\' - п╢п╟п╫п╫я▀п╣ п╠я┐п╢я┐я┌ п©п╣я─п╣п╢п╟п╫я▀ я└я┐п╫п╨я├п╦п╦ п╠п╣п╥ п╬п╠я─п╟п╠п╬я┌п╨п╦. п°п╬п╤п╫п╬ п╦я│п©п╬п╩я▄п╥п╬п╡п╟я┌я▄ п╢п╩я▐ я█п╨я─п╟п╫п╦я─п╬п╡п╟п╫п╦я▐ п╨п╬п╪п╠п╦п╫п╟я├п╦п╧ я│п╦п╪п╡п╬п╩п╬п╡ "<%" п╦ "%>" ("<%\<%%>" п╦ "<%\%%>>"). 10.39 - 10.40 -п╓я┐п╫п╨я├п╦п╦: 10.41 -<%get:<п╦п╪я▐>%> - п╥п╟п╪п╣п╫я▐п╣я┌я│я▐ п╫п╟ п╥п╫п╟я┤п╣п╫п╦п╣ п╡я│я┌я─п╬п╣п╫п╫п╬п╧ п©п╣я─п╣п╪п╣п╫п╫п╬п╧ п╦п╩п╦ п╨п╬п╩п╬п╫п╨п╦ п╥п╟п©я─п╬я│п╟. 10.42 - 10.43 -<%optional:<я┌п╣п╨я│я┌>%> 10.44 -п≈п╟п╪п╣п╫я▐п╣я┌я│я▐ п╫п╟ <я┌п╣п╨я│я┌>, п╣я│п╩п╦ п╡ п╫п╣п╪ п╫п╟п╧п╢п╣п╫я▀ п╦п╫я│я┌я─я┐п╨я├п╦п╦, п╥п╟п╪п╣п╫п╦п╡я┬п╦п╣я│я▐ п╫п╟ п╫п╣п©я┐я│я┌я▀п╣ я│я┌я─п╬п╨п╦, п╦п╫п╟я┤п╣ п╥п╟п╪п╣п╫я▐п╣я┌я│я▐ п╫п╟ п©я┐я│я┌я┐я▌ я│я┌я─п╬п╨я┐. 10.45 - 10.46 -<%escape:<я┌п╣п╨я│я┌>%> 10.47 -п≈п╟п╪п╣п╫я▐п╣я┌ п╡ я┌п╣п╨я│я┌п╣ "п╬п©п╟я│п╫я▀п╣" я│п╦п╪п╡п╬п╩я▀ (я┌п╟п╠п╩п╦я├п╟ п╥п╟п╪п╣п╫ п╥п╟п╢п╟п╣я┌я│я▐ п╡ я└п╟п╧п╩п╣ п╨п╬п╫я└п╦пЁя┐я─п╟я├п╦п╦). 10.48 - 10.49 -<%invoke:<п╦п╪я▐> <п©п╟я─п╟п╪1> <п©п╟я─п╟п╪2> ... <п©п╟я─п╟п╪N>%> 10.50 -п▓я▀п©п╬п╩п╫я▐п╣я┌ п╥п╟п©я─п╬я│ я│ п©п╟я─п╟п╪п╣я┌я─п╟п╪п╦ <п╦п╪я▐>.sql п╦ п╥п╟п╪п╣п╫я▐п╣я┌я│я▐ п╫п╟ я─п╣п╥я┐п╩я▄я┌п╟я┌я▀ п╬п╠я─п╟п╠п╬я┌п╨п╦ я┬п╟п╠п╩п╬п╫п╟ <п╦п╪я▐>.template. п≈п╫п╟я┤п╣п╫п╦я▐ п©п╟я─п╟п╪п╣я┌я─п╬п╡ п©п╬п╢я│я┌п╟п╡п╩я▐я▌я┌я│я▐ п╡ п╥п╟п©я─п╬я│ п╡п╪п╣я│я┌п╬ я│п╦п╪п╡п╬п╩п╟ '?'. 10.51 - 10.52 -<%image:<п╦я│я┘_я└п╟п╧п╩> <п╨п╬п╫_я└п╟п╧п╩> <я└п╬я─п╪п╟я┌> [<п╪п╟п╨я│_я┬п╦я─п╦п╫п╟>] [<п╪п╟п╨я│_п╡я▀я│п╬я┌п╟>]%> 10.53 -п≈п╟пЁя─я┐п╤п╟п╣я┌ п╦п╥п╬п╠я─п╟п╤п╣п╫п╦п╣ п╦п╥ я└п╟п╧п╩п╟ <п╦я│я┘_я└п╟п╧п╩> (п©я┐я┌я▄ п╬п©я─п╣п╢п╣п╩я▐п╣я┌я│я▐ п╬я┌п╫п╬я│п╦я┌п╣п╩я▄п╫п╬ п╨п╬п╫я└п╦пЁя┐я─п╟я├п╦п╬п╫п╫п╬пЁп╬ п©п╟я─п╟п╪п╣я┌я─п╟ "resource_base") п╦ п©я─п╣п╬п╠я─п╟п╥я┐п╣я┌ п╣пЁп╬ п╡ я┐п╨п╟п╥п╟п╫п╫я▀п╧ я└п╬я─п╪п╟я┌, я│п╬я┘я─п╟п╫я▐я▐ я─п╣п╥я┐п╩я▄я┌п╟я┌ п╡ <п╨п╬п╫_я└п╟п╧п╩>. п∙я│п╩п╦ п╥п╟п╢п╟п╫я▀ п╪п╟п╨я│п╦п╪п╟п╩я▄п╫п╟я▐ п╡я▀я│п╬я┌п╟ п╦ я┬п╦я─п╦п╫п╟, п╠п╬п╩я▄я┬п╦п╣ п╦п╥п╬п╠я─п╟п╤п╣п╫п╦я▐ п╠я┐п╢я┐я┌ я┐п╪п╣п╫я▄я┬п╣п╫я▀. 10.54 -п÷я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, п╦п╫я│я┌я─я┐п╨я├п╦я▐ "<%!image ...%>" п╠я┐п╢п╣я┌ п╥п╟п╪п╣п╫п╣п╫п╟ п╫п╟ п╥п╫п╟я┤п╣п╫п╦п╣ <п╨п╬п╫_я└п╟п╧п╩>, п╦п╫п╟я┤п╣ - п╫п╟ п©я┐я│я┌я┐я▌ я│я┌я─п╬п╨я┐. 10.55 - 10.56 -<%copy:<п╦я│я┘_я└п╟п╧п╩> <п╨п╬п╫_я└п╟п╧п╩>%> 10.57 -п п╬п©п╦я─я┐п╣я┌ я└п╟п╧п╩ <п╦я│я┘_я└п╟п╧п╩> (п©я┐я┌я▄ п╬п©я─п╣п╢п╣п╩я▐п╣я┌я│я▐ п╬я┌п╫п╬я│п╦я┌п╣п╩я▄п╫п╬ п╨п╬п╫я└п╦пЁя┐я─п╟я├п╦п╬п╫п╫п╬пЁп╬ п©п╟я─п╟п╪п╣я┌я─п╟ "resource_base"). 10.58 -п÷я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, п╦п╫я│я┌я─я┐п╨я├п╦я▐ "<%!copy ...%>" п╠я┐п╢п╣я┌ п╥п╟п╪п╣п╫п╣п╫п╟ п╫п╟ п╥п╫п╟я┤п╣п╫п╦п╣ <п╨п╬п╫_я└п╟п╧п╩>, п╦п╫п╟я┤п╣ - п╫п╟ п©я┐я│я┌я┐я▌ я│я┌я─п╬п╨я┐. 10.59 - 10.60 -п▓я│я┌я─п╬п╣п╫п╫я▀п╣ п©п╣я─п╣п╪п╣п╫п╫я▀п╣: 10.61 -NUMBER - п©п╬я─я▐п╢п╨п╬п╡я▀п╧ п╫п╬п╪п╣я─ я│я┌я─п╬п╨п╦ я─п╣п╥я┐п╩я▄я┌п╟я┌п╟ п╡я▀п©п╬п╩п╫п╣п╫п╦я▐ п╥п╟п©я─п╬я│п╟. 10.62 -п╖я┌п╬п╠я▀ п╬п╠я─п╟я┌п╦я┌я▄я│я▐ п╨ п©п╣я─п╣п╪п╣п╫п╫п╬п╧ п╥п╟п©я─п╬я│п╟, п╦п╥ п╨п╬я┌п╬я─п╬пЁп╬ п╬п╠я─п╟п╠п╟я┌я▀п╡п╟п╣п╪я▀п╧ я┬п╟п╠п╩п╬п╫ п╠я▀п╩ п╡я▀п╥п╡п╟п╫ я│ п©п╬п╪п╬я┴я▄я▌ я└я┐п╫п╨я├п╦п╦ invoke, п©п╣я─п╣п╢ п╦п╪п╣п╫п╣п╪ п©п╣я─п╣п╪п╣п╫п╫п╬п╧ п╫я┐п╤п╫п╬ п╢п╬п╠п╟п╡п╦я┌я▄ "SUPER." (п╫п╟п©я─п╦п╪п╣я─: "SUPER.NUMBER"). 10.63 - 10.64 -п÷я─п╦п╪п╣я─: 10.65 -п║п╩п╣п╢я┐я▌я┴п╟я▐ п╦п╫я│я┌я─я┐п╨я├п╦я▐ п©п╬п╩я┐я┤п╦я┌ п╥п╫п╟я┤п╣п╫п╦п╣ п╦п╥ я│я┌п╬п╩п╠я├п╟ name п╦ п╥п╟п╪п╣п╫п╦я┌ п╡ п╫п╣п╪ я│п©п╣я├п╦п╟п╩я▄п╫я▀п╣ я│п╦п╪п╡п╬п╩я▀: 10.66 -<%escape get:name%>
11.1 --- a/misc/biotopes/main.template Fri May 15 03:07:16 2009 +0400 11.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 11.3 @@ -1,11 +0,0 @@ 11.4 -<%!: 11.5 - <%prepare:biotope_sql <%read\biotope.sql%>%> 11.6 - <%prepare:photo_sql <%read\photo.sql%>%> 11.7 - <%prepare:class_sql <%read\class.sql%>%> 11.8 - <%prepare:plant_sql <%read\plant.sql%>%> 11.9 - 11.10 - <%query:biotope_sql [%\<%write:<%db\code%>.xml <%include\biotope.template%>%> %]%> 11.11 - 11.12 - <%write:classes.xml <%include\classes.template%>%> 11.13 - <%write:plants.xml <%include\plants.template%>%> 11.14 -%>
12.1 --- a/misc/biotopes/photo.sql Fri May 15 03:07:16 2009 +0400 12.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 12.3 @@ -1,1 +0,0 @@ 12.4 -SELECT * from photos WHERE biotope = ?
13.1 --- a/misc/biotopes/photo.template Fri May 15 03:07:16 2009 +0400 13.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 13.3 @@ -1,3 +0,0 @@ 13.4 - <ДчБчсЮпДьО num="<%number\%>" <%optional:прБчЮ="<%xml_escape db\authphoto%>" %>text="" 13.5 - file="<%xml_escape image:biotopephotos/<%db\photo%> images/<%super.db\code%>_<%number\%>.jpg jpg 300 300%>" 13.6 - big="<%xml_escape copy:biotopephotos/<%db\photo%> images/big/<%super.db\code%>_<%number\%>.jpg%>"/>
14.1 --- a/misc/biotopes/plant.sql Fri May 15 03:07:16 2009 +0400 14.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 14.3 @@ -1,3 +0,0 @@ 14.4 -SELECT t1.* 14.5 -FROM biotopelist AS t1 14.6 -WHERE rusname AND Right(t1.rangcode, 2) <> '00'
15.1 --- a/misc/biotopes/plants.template Fri May 15 03:07:16 2009 +0400 15.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 15.3 @@ -1,5 +0,0 @@ 15.4 -<?xml version="1.0" encoding="ISO-8859-5"?> 15.5 -<ЮпАБущьО><%query:plant_sql [%\ 15.6 - <!-- rangcode: <%xml_escape db\rangcode%> --> 15.7 - <ЮпАБущьу><%xml_escape db\rusname%></ЮпАБущьу>%]%> 15.8 -</ЮпАБущьО>
16.1 --- a/misc/biotopes/tema.properties Fri May 15 03:07:16 2009 +0400 16.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 16.3 @@ -1,22 +0,0 @@ 16.4 -# Data source configuration 16.5 -resource : jdbc:odbc:biotopes-data 16.6 -driver : sun.jdbc.odbc.JdbcOdbcDriver 16.7 - 16.8 -# Base directory for images and files 16.9 -resource_base : C:\\biotopes\\db 16.10 - 16.11 -# Template to start processing with 16.12 -main_template : main.template 16.13 - 16.14 -# File encodings 16.15 -input_encoding : ISO-8859-5 16.16 -output_encoding : ISO-8859-5 16.17 - 16.18 -# Cache templates 16.19 -cache_read : true 16.20 - 16.21 -# Output main_template parsing result to stderr 16.22 -#output : stderr 16.23 - 16.24 -# File to output error messages (redirect stderr) 16.25 -#log : tema.log
17.1 --- a/misc/manual-ru-old/index.html Fri May 15 03:07:16 2009 +0400 17.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 17.3 @@ -1,370 +0,0 @@ 17.4 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 17.5 - "DTD/xhtml1-transitional.dtd"> 17.6 - 17.7 -<html> 17.8 - 17.9 -<head> 17.10 - <title>п°п╟п╨я─п╬п©я─п╬я├п╣я│я│п╬я─ TEMA</title> 17.11 - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 17.12 -</head> 17.13 - 17.14 -<body> 17.15 -<h1>п°п╟п╨я─п╬п©я─п╬я├п╣я│я│п╬я─ TEMA</h1> 17.16 - 17.17 -<p>п°п╟п╨я─п╬п©я─п╬я├п╣я│я│п╬я─ TEMA п╬п╠я─п╟п╠п╟я┌я▀п╡п╟п╣я┌ п╥п╟п╢п╟п╫п╫я▀п╣ я┬п╟п╠п╩п╬п╫я▀ я┌п╣п╨я│я┌п╬п╡я▀я┘ я└п╟п╧п╩п╬п╡ п╦ 17.18 -п╥п╟п╪п╣п╫я▐п╣я┌ п╫п╟п╧п╢п╣п╫п╫я▀п╣ п╡ п╫п╦я┘ п╦п╫я│я┌я─я┐п╨я├п╦п╦ п╫п╟ я─п╣п╥я┐п╩я▄я┌п╟я┌я▀ п╦я┘ п╡я▀п©п╬п╩п╫п╣п╫п╦я▐. 17.19 -</p><p> 17.20 -п·я│п╬п╠п╣п╫п╫п╬я│я┌п╦: 17.21 -</p> 17.22 -<ul> 17.23 - <li>п═п╟я│я┬п╦я─я▐п╣п╪п╬я│я┌я▄: п╡п╬п╥п╪п╬п╤п╫п╬ п╢п╦п╫п╟п╪п╦я┤п╣я│п╨п╦ п©п╬п╢п╨п╩я▌я┤п╟я┌я▄ п╫п╬п╡я▀п╣ я└я┐п╫п╨п╦п╦, 17.24 - я─п╣п╟п╩п╦п╥п╬п╡п╟п╫п╫я▀п╣ п╡ п╡п╦п╢п╣ п╨п╩п╟я│я│п╬п╡ п╫п╟ Java.</li> 17.25 - <li>п═п╟п╠п╬я┌п╟ я│ п╠п╟п╥п╟п╪п╦ п╢п╟п╫п╫я▀я┘: п╦я│п©п╬п╩я▄п╥п╬п╡п╟п╫п╦п╣ SQL-п╥п╟п©я─п╬я│п╬п╡ п╢п╩я▐ п©п╬п╩я┐я┤п╣п╫п╦я▐ 17.26 - п╢п╟п╫п╫я▀я┘.</li> 17.27 - <li>п÷п╬я┌п╬я┤п╫п╟я▐ п╬п╠я─п╟п╠п╬я┌п╨п╟ п╢п╟п╫п╫я▀я┘: п╦п╫я│я┌я─я┐п╨я├п╦п╦ п╬п╠я─п╟п╠п╟я┌я▀п╡п╟я▌я┌я│я▐ п©п╬ п╪п╣я─п╣ 17.28 - я┤я┌п╣п╫п╦я▐ я┌п╣п╨я│я┌п╟ п╠п╣п╥ п╫п╣п╬п╠я┘п╬п╢п╦п╪п╬я│я┌п╦ п╥п╟пЁя─я┐п╥п╨п╦ я└п╟п╧п╩п╟ п╡ п╬п©п╣я─п╟я┌п╦п╡п╫я┐я▌ п©п╟п╪я▐я┌я▄ 17.29 - п╦ п╡я▀п©п╬п╩п╫п╣п╫п╦я▐ п©п╬п╩п╫п╬пЁп╬ я│п╦п╫я┌п╟п╨я│п╦я┤п╣я│п╨п╬пЁп╬ я─п╟п╥п╠п╬я─п╟.</li> 17.30 -</ul> 17.31 - 17.32 -<p><b>п╓п╬я─п╪п╟я┌ п╦п╫я│я┌я─я┐п╨я├п╦п╧</b></p> 17.33 - 17.34 -<blockquote> 17.35 - <code><%<i>я│п©п╦я│п╬п╨_я└я┐п╫п╨я├п╦п╧</i>{:|\|`}<i>п╢п╟п╫п╫я▀п╣</i>%></code> 17.36 -</blockquote> 17.37 -<p> 17.38 -пЁп╢п╣<br /> 17.39 - 17.40 -<code><i>я│п©п╦я│п╬п╨_я└я┐п╫п╨я├п╦п╧</i></code> - я│п©п╦я│п╬п╨ п╦п╪п╣п╫ я└я┐п╫п╨я├п╦п╧, я─п╟п╥п╢п╣п╩п╣п╫п╫я▀я┘ 17.41 - п©я─п╬п╠п╣п╩п╟п╪п╦. п°п╬п╤п╣я┌ п╠я▀я┌я▄ п©я┐я│я┌я▀п╪.<br /> 17.42 -<code><i>п╢п╟п╫п╫я▀п╣</i></code> - п╢п╟п╫п╫я▀п╣, п©п╣я─п╣п╢п╟п╡п╟п╣п╪я▀п╣ я└я┐п╫п╨я├п╦п╦. 17.43 -</p> 17.44 - 17.45 -<p><b>п╓п╬я─п╪п╟я┌ п╢п╟п╫п╫я▀я┘</b></p> 17.46 - 17.47 -<blockquote> 17.48 - <code> 17.49 - [<i>я│п©п╦я│п╬п╨_п╟я─пЁя┐п╪п╣п╫я┌п╬п╡</i>][<i>я┌п╣п╨я│я┌</i>] 17.50 - </code> 17.51 -</blockquote> 17.52 -<p> 17.53 -пЁп╢п╣<br /> 17.54 - 17.55 -<code><i>я│п©п╦я│п╬п╨_п╟я─пЁя┐п╪п╣п╫я┌п╬п╡</i></code> - я│п©п╦я│п╬п╨ п╟я─пЁя┐п╪п╣п╫я┌п╬п╡ я└я┐п╫п╨я├п╦п╦, я─п╟п╥п╢п╣п╩п╣п╫п╫я▀я┘ п©я─п╬п╠п╣п╩п╟п╪п╦. 17.56 - п°п╬п╤п╣я┌ п╠я▀я┌я▄ п©я┐я│я┌я▀п╪.<br /> 17.57 -<code><i>я┌п╣п╨я│я┌</i></code> - я┌п╣п╨я│я┌, п©п╣я─п╣п╢п╟п╡п╟п╣п╪я▀п╧ я└я┐п╫п╨я├п╦п╦ п╠п╣п╥ я─п╟п╥п╠п╦п╣п╫п╦я▐ п╫п╟ п╟я─пЁя┐п╪п╣п╫я┌я▀. 17.58 - п°п╬п╤п╣я┌ п╠я▀я┌я▄ п©я┐я│я┌я▀п╪. п п╬п╩п╦я┤п╣я│я┌п╡п╬ п╟я─пЁя┐п╪п╣п╫я┌п╬п╡, п©п╬я│п╩п╣ п╨п╬я┌п╬я─п╬пЁп╬ я│п╩п╣п╢я┐п╣я┌ 17.59 - я┌п╣п╨я│я┌, п╥п╟п╡п╦я│п╦я┌ п╬я┌ я└я┐п╫п╨я├п╦п╦. 17.60 -</p><p> 17.61 -п═п╟п╥п╢п╣п╩п╦я┌п╣п╩я▄ п╪п╣п╤п╢я┐ я│п©п╦я│п╨п╬п╪ я└я┐п╫п╨я├п╦п╧ п╦ п╢п╟п╫п╫я▀п╪п╦ п╬п©я─п╣п╢п╣п╩я▐п╣я┌, п╨п╟п╨ п╢п╬п╩п╤п╫я▀ 17.62 -п╬п╠я─п╟п╠п╟я┌я▀п╡п╟я┌я▄я│я▐ п╢п╟п╫п╫я▀п╣ я└я┐п╫п╨я├п╦п╦: 17.63 -</p><p> 17.64 -<code>:</code> - я─п╣п╨я┐я─я│п╦п╡п╫п╟я▐ п╬п╠я─п╟п╠п╬я┌п╨п╟,<br /> 17.65 -<code>\</code> п╦п╩п╦ <code>`</code> - п©п╣я─п╣п╢п╟я┌я▄ п╠п╣п╥ п╬п╠я─п╟п╠п╬я┌п╨п╦. 17.66 -</p><p> 17.67 -п∙я│п╩п╦ п╡ я│п©п╦я│п╨п╣ я└я┐п╫п╨я├п╦п╧ п╥п╟п╢п╟п╫п╬ п╢п╡п╣ п╦ п╠п╬п╩п╣п╣ я└я┐п╫п╨я├п╦п╦, п╬п╫п╦ п╡я▀п©п╬п╩п╫я▐я▌я┌я│я▐, 17.68 -п╫п╟я┤п╦п╫п╟я▐ я│ п©п╬я│п╩п╣п╢п╫п╣п╧, я┌п╟п╨ я┤я┌п╬ п╨п╟п╤п╢п╟я▐ я└я┐п╫п╨я├п╦я▐ п©п╬п╩я┐я┤п╟п╣я┌ п╡ п╨п╟я┤п╣я│я┌п╡п╣ п╢п╟п╫п╫я▀я┘ 17.69 -я─п╣п╥я┐п╩я▄я┌п╟я┌ п╡я▀п©п╬п╩п╫п╣п╫п╦я▐ я│п╩п╣п╢я┐я▌я┴п╣п╧ я└я┐п╫п╨я├п╦п╦. 17.70 -</p><p> 17.71 -п п╟п╤п╢п╟я▐ я└я┐п╫п╨я├п╦я▐ п╦п╪п╣п╣я┌ п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟ - я├п╣п╩п╬п╣ я┤п╦я│п╩п╬. п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟ 17.72 -п╦п╫я│я┌я─я┐п╨я├п╦п╦ - п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟ п©п╣я─п╡п╬п╧ п╡ я│п©п╦я│п╨п╣ я└я┐п╫п╨я├п╦п╦. п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟, 17.73 -п©п╬п╩я┐я┤п╟п╣п╪я▀п╧ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ я┌п╣п╨я│я┌п╟ - я│я┐п╪п╪п╟ п╨п╬п╢п╬п╡ п╡п╬п╥п╡я─п╟я┌п╟ п╬п╠я─п╟п╠п╬я┌п╟п╫п╫я▀я┘ 17.74 -п╦п╫я│я┌я─я┐п╨я├п╦п╧ (п╨п╟п╨ п©я─п╟п╡п╦п╩п╬, я│п╪я▀я│п╩ я█я┌п╬пЁп╬ п╥п╫п╟я┤п╣п╫п╦я▐ - п╨п╬п╩п╦я┤п╣я│я┌п╡п╬ п╦п╫я│я┌я─я┐п╨я├п╦п╧, 17.75 -п╥п╟п╪п╣п╫п╣п╫п╫я▀я┘ п╫п╟ п╫п╣п©я┐я│я┌п╬п╧ я┌п╣п╨я│я┌). 17.76 -</p><p> 17.77 -п я─п╬п╪п╣ я│п╨п╬п╠п╬п╨ '<', '>', п╪п╬п╤п╫п╬ п╦я│п©п╬п╩я▄п╥п╬п╡п╟я┌я▄ я│п╨п╬п╠п╨п╦ '[', ']'. 17.78 -</p> 17.79 - 17.80 - 17.81 -<h2>п╓я┐п╫п╨я├п╦п╦</h2> 17.82 - 17.83 -<p><code><b>set</b></code></p> 17.84 - 17.85 -<table> 17.86 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td> 17.87 -<td><i>п╦п╪я▐</i></td></tr> 17.88 - 17.89 -<tr><td>п╒п╣п╨я│я┌:</td> 17.90 -<td><i>п╥п╫п╟я┤п╣п╫п╦п╣</i></td></tr> 17.91 - 17.92 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td> 17.93 -<td>пёя│я┌п╟п╫п╟п╡п╩п╦п╡п╟п╣я┌ п╥п╫п╟я┤п╣п╫п╦п╣ п©п╣я─п╣п╪п╣п╫п╫п╬п╧ <i>п╦п╪я▐</i>.</td></tr> 17.94 - 17.95 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td> 17.96 -<td><i>п╦п╪я▐</i></td></tr> 17.97 - 17.98 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.99 -<td>1</td></tr> 17.100 -</table> 17.101 - 17.102 -<p><code><b>define</b></code></p> 17.103 - 17.104 -<table> 17.105 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td> 17.106 -<td><i>п╦п╪я▐</i></td></tr> 17.107 - 17.108 -<tr><td>п╒п╣п╨я│я┌:</td> 17.109 -<td><i>я┬п╟п╠п╩п╬п╫</i></td></tr> 17.110 - 17.111 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td><td>п·п©я─п╣п╢п╣п╩я▐п╣я┌ п╫п╬п╡я┐я▌ я└я┐п╫п╨я├п╦я▌ <i>п╦п╪я▐</i>, п©я─п╦ 17.112 -п╡я▀п╥п╬п╡п╣ п╨п╬я┌п╬я─п╬п╧ п╬п╠я─п╟п╠п╟я┌я▀п╡п╟п╣я┌я│я▐ <i>я┬п╟п╠п╩п╬п╫</i>. п÷я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ п╢п╬я│я┌я┐п©п╫я▀ 17.113 -я└я┐п╫п╨я├п╦п╦ <code>nextarg</code> п╢п╩я▐ п©п╬п╩я┐я┤п╣п╫п╦я▐ п╬я┤п╣я─п╣п╢п╫п╬пЁп╬ п╟я─пЁя┐п╪п╣п╫я┌п╟ 17.114 -п╡я▀п╥я▀п╡п╟п╣п╪п╬п╧ я└я┐п╫п╨я├п╦п╦ п╦ <code>data</code> п╢п╩я▐ п©п╬п╩я┐я┤п╣п╫п╦я▐ я┌п╣п╨я│я┌п╟.</td></tr> 17.115 - 17.116 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td> 17.117 -<td><i>п╦п╪я▐</i></td></tr> 17.118 - 17.119 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.120 -<td>1</td></tr> 17.121 -</table> 17.122 - 17.123 -<p><code><b>load</b></code></p> 17.124 - 17.125 -<table> 17.126 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td> 17.127 -<td><i>п╦п╪я▐</i> <i>п╦п╪я▐_п╨п╩п╟я│я│п╟</i></td></tr> 17.128 - 17.129 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td> 17.130 - 17.131 -<td>п·п©я─п╣п╢п╣п╩я▐п╣я┌ п╫п╬п╡я┐я▌ я└я┐п╫п╨я├п╦я▌ <i>п╦п╪я▐</i>. п═п╣п╟п╩п╦п╥п╟я├п╦я▐ я└я┐п╫п╨я├п╦п╦ п╬п©я─п╣п╢п╣п╩п╣п╫п╟ 17.132 -Java-п╨п╩п╟я│я│п╬п╪ <i>п╦п╪я▐_п╨п╩п╟я│я│п╟</i>, п╫п╟я│п╩п╣п╢я┐я▌я┴п╦п╪ п╨п╩п╟я│я│ 17.133 -<code>kryshen.tema.Function</code>.</td></tr> 17.134 - 17.135 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td> 17.136 -<td><i>п╦п╪я▐</i></td></tr> 17.137 - 17.138 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.139 -<td>1</td></tr> 17.140 -</table> 17.141 - 17.142 -<p><code><b>prepare</b></code></p> 17.143 - 17.144 -<table> 17.145 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td> 17.146 -<td><i>п╦п╪я▐</i></td></tr> 17.147 - 17.148 -<tr><td>п╒п╣п╨я│я┌:</td> 17.149 -<td><i>п╥п╟п©я─п╬я│</i></td></tr> 17.150 - 17.151 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td> 17.152 -<td>п÷п╬п╢пЁп╬я┌п╟п╡п╩п╦п╡п╟п╣я┌ SQL-п╥п╟п©я─п╬я│ <i>п╥п╟п©я─п╬я│</i> п╢п╩я▐ п╡я▀п©п╬п╩п╫п╣п╫п╦я▐, п╥п╟п©п╦я│я▀п╡п╟п╣я┌ 17.153 -п©п╬п╢пЁп╬я┌п╬п╡п╩п╣п╫п╫я▀п╧ п╥п╟п©я─п╬я│ п╡ п©п╣я─п╣п╪п╣п╫п╫я┐я▌ <i>п╦п╪я▐</i>.</td></tr> 17.154 - 17.155 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td> 17.156 -<td><i>п╦п╪я▐</i></td></tr> 17.157 - 17.158 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.159 -<td>1</td></tr> 17.160 -</table> 17.161 - 17.162 -<p><code><b>query</b></code></p> 17.163 - 17.164 -<table> 17.165 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td> 17.166 -<td><i>п╦п╪я▐_п╥п╟п©я─п╬я│п╟</i> <i>я┬п╟п╠п╩п╬п╫</i> <i>п©п╟я─п╟п╪1</i> ... <i>п©п╟я─п╟п╪N</i></td></tr> 17.167 - 17.168 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td> 17.169 -<td>п▓я▀п©п╬п╩п╫я▐п╣я┌ п╥п╟п©я─п╬я│ я│ п©п╟я─п╟п╪п╣я┌я─п╟п╪п╦, п©п╬п╢пЁп╬я┌п╬п╡п╩п╣п╫п╫я▀п╧ я│ п©п╬п╪п╬я┴я▄я▌ я└я┐п╫п╨я├п╦п╦ 17.170 -prepare. п≈п╫п╟я┤п╣п╫п╦я▐ п©п╟я─п╟п╪п╣я┌я─п╬п╡ п©п╬п╢я│я┌п╟п╡п╩я▐я▌я┌я│я▐ п╡ п╥п╟п©я─п╬я│ п╡п╪п╣я│я┌п╬ я│п╦п╪п╡п╬п╩п╟ 17.171 -'?'. п≈п╫п╟я┤п╣п╫п╦я▐ п©п╬п╩п╣п╧ п╬я┌п╡п╣я┌п╟ п╢п╬я│я┌я┐п©п╫я▀ я│ п©п╬п╪п╬я┴я▄я▌ я└я┐п╫п╨я├п╦п╦ <code>db</code>, 17.172 -п╨п╟п╨ п©п╣я─п╣п╪п╣п╫п╫я▀п╣ я┬п╟п╠п╩п╬п╫п╟ <i>я┬п╟п╠п╩п╬п╫</i>. п÷я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╦ я┬п╟п╠п╩п╬п╫п╟ я┌п╟п╨п╤п╣ 17.173 -п╬п©я─п╣п╢п╣п╩я▐п╣я┌я│я▐ п©п╣я─п╣п╪п╣п╫п╫п╟я▐ <code>number</code>, я│п╬п╢п╣я─п╤п╟я┴п╟я▐ п╫п╬п╪п╣я─ я┌п╣п╨я┐я┴п╣п╧ 17.174 -я│я┌я─п╬п╨п╦ п╬я┌п╡п╣я┌п╟.</td></tr> 17.175 - 17.176 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td> 17.177 -<td>я─п╣п╥я┐п╩я▄я┌п╟я┌ п╬п╠я─п╟п╠п╬я┌п╨п╦ я┬п╟п╠п╩п╬п╫п╟ <i>я┬п╟п╠п╩п╬п╫</i> п╢п╩я▐ п╨п╟п╤п╢п╬п╧ я│я┌я─п╬п╨п╦ 17.178 -п╬я┌п╡п╣я┌п╟.</td></tr> 17.179 - 17.180 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.181 -<td>п п╬п╩п╦я┤п╣я│я┌п╡п╬ п©п╬п╩я┐я┤п╣п╫п╫я▀я┘ я│я┌я─п╬п╨ п╬я┌п╡п╣я┌п╟.</td></tr> 17.182 -</table> 17.183 - 17.184 -<p><code><b>optional</b></code></p> 17.185 - 17.186 -<table> 17.187 -<tr><td>п╒п╣п╨я│я┌:</td> 17.188 -<td><i>п╢п╟п╫п╫я▀п╣</i></td></tr> 17.189 - 17.190 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td><i>п╢п╟п╫п╫я▀п╣</i>, п╣я│п╩п╦ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ п╢п╟п╫п╫я▀я┘ 17.191 -п╠я▀п╩ п©п╬п╩я┐я┤п╣п╫ п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟ п╬я┌п╩п╦я┤п╫я▀п╧ п╬я┌ 0, п╦п╫п╟я┤п╣ - п©я┐я│я┌п╟я▐ 17.192 -я│я┌я─п╬п╨п╟.</td></tr> 17.193 - 17.194 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.195 -<td>1, п╣я│п╩п╦ я─п╣п╥я┐п╩я▄я┌п╟я┌ - п©я┐я│я┌п╟я▐ я│я┌я─п╬п╨п╟, 0 - п╦п╫п╟я┤п╣.</td></tr> 17.196 -</table> 17.197 - 17.198 -<p><code><b>image</b></code></p> 17.199 - 17.200 -<table> 17.201 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td> 17.202 -<td><i>п╦я│я┘_я└п╟п╧п╩</i> <i>п╨п╬п╫_я└п╟п╧п╩</i> <i>я└п╬я─п╪п╟я┌</i> [<i>п╪п╟п╨я│_я┬п╦я─п╦п╫п╟</i> 17.203 -[<i>п╪п╟п╨я│_п╡я▀я│п╬я┌п╟</i>]]</td></tr> 17.204 - 17.205 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td> 17.206 -<td>п≈п╟пЁя─я┐п╤п╟п╣я┌ п╦п╥п╬п╠я─п╟п╤п╣п╫п╦п╣ п╦п╥ я└п╟п╧п╩п╟ <i>п╦я│я┘_я└п╟п╧п╩</i> (п©я┐я┌я▄ п╬п©я─п╣п╢п╣п╩я▐п╣я┌я│я▐ 17.207 -п╬я┌п╫п╬я│п╦я┌п╣п╩я▄п╫п╬ п╨п╬п╫я└п╦пЁя┐я─п╟я├п╦п╬п╫п╫п╬пЁп╬ п©п╟я─п╟п╪п╣я┌я─п╟ "resource_base") п╦ 17.208 -п©я─п╣п╬п╠я─п╟п╥я┐п╣я┌ п╣пЁп╬ п╡ я┐п╨п╟п╥п╟п╫п╫я▀п╧ я└п╬я─п╪п╟я┌, я│п╬я┘я─п╟п╫я▐я▐ я─п╣п╥я┐п╩я▄я┌п╟я┌ п╡ 17.209 -<i>п╨п╬п╫_я└п╟п╧п╩</i>. п∙я│п╩п╦ п╥п╟п╢п╟п╫я▀ п╪п╟п╨я│п╦п╪п╟п╩я▄п╫п╟я▐ п╡я▀я│п╬я┌п╟ п╦ я┬п╦я─п╦п╫п╟, п╠п╬п╩я▄я┬п╦п╣ 17.210 -п╦п╥п╬п╠я─п╟п╤п╣п╫п╦я▐ п╠я┐п╢я┐я┌ я┐п╪п╣п╫я▄я┬п╣п╫я▀.</td></tr> 17.211 - 17.212 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td> 17.213 -<td><i>п╨п╬п╫_я└п╟п╧п╩</i> п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, п©я┐я│я┌п╟я▐ я│я┌я─п╬п╨п╟ - п╦п╫п╟я┤п╣.</td></tr> 17.214 - 17.215 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td> 17.216 -<td>1 п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 0 - п╦п╫п╟я┤п╣.</td></tr> 17.217 -</table> 17.218 - 17.219 - 17.220 -<p><code><b>copy</b></code></p> 17.221 - 17.222 -<table> 17.223 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td><td><i>п╦я│я┘_я└п╟п╧п╩</i> <i>п╨п╬п╫_я└п╟п╧п╩</i></td></tr> 17.224 - 17.225 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td><td>п п╬п©п╦я─я┐п╣я┌ я└п╟п╧п╩ <i>п╦я│я┘_я└п╟п╧п╩</i> п╡ я└п╟п╧п╩ 17.226 -<i>п╨п╬п╫_я└п╟п╧п╩</i> (п©я┐я┌я▄ <i>п╦я│я┘_я└п╟п╧п╩</i> п╬п©я─п╣п╢п╣п╩я▐п╣я┌я│я▐ п╬я┌п╫п╬я│п╦я┌п╣п╩я▄п╫п╬ 17.227 -п╨п╬п╫я└п╦пЁя┐я─п╟я├п╦п╬п╫п╫п╬пЁп╬ п©п╟я─п╟п╪п╣я┌я─п╟ "resource_base").</td></tr> 17.228 - 17.229 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td><i>п╨п╬п╫_я└п╟п╧п╩</i> п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 17.230 -п©я┐я│я┌п╟я▐ я│я┌я─п╬п╨п╟ - п╦п╫п╟я┤п╣.</td></tr> 17.231 - 17.232 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td>1 п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 0 - 17.233 -п╦п╫п╟я┤п╣.</td></tr> 17.234 -</table> 17.235 - 17.236 -<p><code><b>write</b></code></p> 17.237 - 17.238 -<table> 17.239 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td><td><i>п╦п╪я▐_я└п╟п╧п╩п╟</i></td></tr> 17.240 - 17.241 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╢п╟п╫п╫я▀п╣</i></td></tr> 17.242 - 17.243 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td><td>п≈п╟п©п╦я│я▀п╡п╟п╣я┌ <i>п╢п╟п╫п╫я▀п╣</i> п╡ я└п╟п╧п╩ 17.244 -<i>п╦я│я┘_я└п╟п╧п╩</i>.</td></tr> 17.245 - 17.246 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td><i>п╨п╬п╫_я└п╟п╧п╩</i> п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 17.247 -п©я┐я│я┌п╟я▐ я│я┌я─п╬п╨п╟ - п╦п╫п╟я┤п╣.</td></tr> 17.248 - 17.249 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td>1 п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 0 - 17.250 -п╦п╫п╟я┤п╣.</td></tr> 17.251 -</table> 17.252 - 17.253 -<p><code><b>read</b></code></p> 17.254 - 17.255 -<table> 17.256 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╦п╪я▐_я└п╟п╧п╩п╟</i></td></tr> 17.257 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td><td>п╖п╦я┌п╟п╣я┌ я└п╟п╧п╩ <i>п╦п╪я▐_я└п╟п╧п╩п╟</i>.</td></tr> 17.258 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td>п©я─п╬я┤п╦я┌п╟п╫п╫я▀п╣ п╢п╟п╫п╫я▀п╣ п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 17.259 - п©я┐я│я┌п╟я▐ я│я┌я─п╬п╨п╟ - п╦п╫п╟я┤п╣.</td></tr> 17.260 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td>1 п©я─п╦ я┐я│п©п╣я┬п╫п╬п╪ п╡я▀п©п╬п╩п╫п╣п╫п╦п╦, 0 - 17.261 -п╦п╫п╟я┤п╣.</td></tr> 17.262 -</table> 17.263 - 17.264 -<p><code><b>include</b></code></p> 17.265 - 17.266 -<table> 17.267 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╦п╪я▐_я└п╟п╧п╩п╟</i></td></tr> 17.268 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td><td>п╡п╨п╩я▌я┤п╟п╣я┌ я┬п╟п╠п╩п╬п╫ п╦п╥ я└п╟п╧п╩п╟ 17.269 -<i>п╦п╪я▐_я└п╟п╧п╩п╟</i>.</td></tr> 17.270 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td>я─п╣п╥я┐п╩я▄я┌п╟я┌ п╬п╠я─п╟п╠п╬я┌п╨п╦ я┬п╟п╠п╩п╬п╫п╟.</td></tr> 17.271 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td>п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟, п©п╬п╩я┐я┤п╣п╫п╫я▀п╧ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ 17.272 -я┬п╟п╠п╩п╬п╫п╟.</td></tr> 17.273 -</table> 17.274 - 17.275 -<p><code><b>!</b></code></p> 17.276 - 17.277 -<table> 17.278 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╢п╟п╫п╫я▀п╣</i></td></tr> 17.279 - 17.280 -<tr><td>п■п╣п╧я│я┌п╡п╦п╣:</td><td>п╫п╣я┌.</td></tr> 17.281 - 17.282 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td>п╫п╣я┌.</td></tr> 17.283 - 17.284 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td>п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟, п©п╬п╩я┐я┤п╣п╫п╫я▀п╧ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ 17.285 -я┌п╣п╨я│я┌п╟ п╢п╟п╫п╫я▀я┘.</td></tr> 17.286 -</table> 17.287 - 17.288 -<p><code><b>replace</b></code></p> 17.289 - 17.290 -<table> 17.291 -<tr><td>п░я─пЁя┐п╪п╣п╫я┌я▀:</td><td><i>я│я┌я─1</i> <i>я│я┌я─2</i></td></tr> 17.292 - 17.293 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╢п╟п╫п╫я▀п╣</i></td></tr> 17.294 - 17.295 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td>п╢п╟п╫п╫я▀п╣, я│ п╥п╟п╪п╣п╫п╣п╫п╫я▀п╪п╦ п╡я┘п╬п╤п╢п╣п╫п╦я▐п╪п╦ п©п╬п╢я│я┌я─п╬п╨п╦ 17.296 -<i>я│я┌я─1</i> п╫п╟ <i>я│я┌я─2</i>.</td></tr> 17.297 - 17.298 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td> п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟, п©п╬п╩я┐я┤п╣п╫п╫я▀п╧ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ 17.299 -я┌п╣п╨я│я┌п╟ п╢п╟п╫п╫я▀я┘.</td></tr> 17.300 -</table> 17.301 - 17.302 -<p><code><b>xml_escape</b></code></p> 17.303 - 17.304 -<table> 17.305 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╢п╟п╫п╫я▀п╣</i></td></tr> 17.306 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td>я┌п╣п╨я│я┌ <i>п╢п╟п╫п╫я▀п╣</i>, п╡ п╨п╬я┌п╬я─п╬п╪ я│п╦п╪п╡п╬п╩я▀ 17.307 -'&', '<', '>', '`', '\' п╥п╟п╪п╣п╫п╣п╫я▀ п╫п╟ я│п╬п╬я┌п╡п╣я┌я│я┌п╡я┐я▌я┴п╦п╣ я│я┐я┴п╫п╬я│я┌п╦ 17.308 -XML.</td></tr> 17.309 - 17.310 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td> п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟, п©п╬п╩я┐я┤п╣п╫п╫я▀п╧ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ 17.311 -я┌п╣п╨я│я┌п╟ п╢п╟п╫п╫я▀я┘.</td></tr> 17.312 -</table> 17.313 - 17.314 -<p><code><b>xml_cdata</b></code></p> 17.315 - 17.316 -<table> 17.317 -<tr><td>п╒п╣п╨я│я┌:</td><td><i>п╢п╟п╫п╫я▀п╣</i></td></tr> 17.318 - 17.319 -<tr><td>п═п╣п╥я┐п╩я▄я┌п╟я┌:</td><td>п╢п╟п╫п╫я▀п╣ п╡ п╡п╦п╢п╣ п╠п╩п╬п╨п╟ XML CDATA.</td></tr> 17.320 - 17.321 -<tr><td>п п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟:</td><td> п╨п╬п╢ п╡п╬п╥п╡я─п╟я┌п╟, п©п╬п╩я┐я┤п╣п╫п╫я▀п╧ п©я─п╦ п╬п╠я─п╟п╠п╬я┌п╨п╣ 17.322 -я┌п╣п╨я│я┌п╟ п╢п╟п╫п╫я▀я┘. </td></tr> 17.323 -</table> 17.324 - 17.325 -<p> 17.326 -п°п╟п╨я─п╬п©я─п╬я├п╣я│я│п╬я─ TEMA я─п╟я│я┬п╦я─я▐п╣п╪: п╡п╬п╥п╪п╬п╤п╫п╬ п╢п╬п╠п╟п╡п╩п╣п╫п╦п╣ п╡ я│п╦я│я┌п╣п╪я┐ п╫п╬п╡я▀я┘ 17.327 -я└я┐п╫п╨я├п╦п╧, я─п╣п╟п╩п╦п╥п╬п╡п╟п╫п╫я▀я┘ п╡ п╡п╦п╢п╣ п╨п╩п╟я│я│п╬п╡ п╫п╟ я▐п╥я▀п╨п╣ Java. 17.328 -</p> 17.329 - 17.330 -<h2>п≈п╟п©я┐я│п╨</h2> 17.331 - 17.332 -<p>java -jar tema.jar [<i>п╬п©я├п╦п╦</i>] 17.333 -</p><p> 17.334 -п·п©я├п╦п╦: 17.335 -</p> 17.336 -<table> 17.337 -<tr><td>-d[emo]</td><td>п■п╣п╪п╬п╫я│я┌я─п╟я├п╦п╬п╫п╫я▀п╧ я─п╣п╤п╦п╪</td></tr> 17.338 -<tr><td>-v[ersion]</td><td>п▓я▀п╡п╬п╢ п╡п╣я─я│п╦п╦</td></tr> 17.339 -<tr><td>-h[help] -u[sage]</td><td>п▓я▀п╡п╬п╢ я│п©я─п╟п╡п╨п╦</td></tr> 17.340 -</table> 17.341 - 17.342 -<p> 17.343 -п÷я─п╦ п╥п╟п©я┐я│п╨п╣ я┤п╦я┌п╟п╣я┌я│я▐ я└п╟п╧п╩ "tema.properties" п╦п╥ я┌п╣п╨я┐я┴п╣пЁп╬ п╨п╟я┌п╟п╩п╬пЁп╟.<br /> 17.344 -п÷я─п╦п╪п╣я─ я└п╟п╧п╩п╟ "tema.properties": 17.345 -</p> 17.346 - 17.347 -<pre> 17.348 -# п²п╟я│я┌я─п╬п╧п╨п╟ п╦я│я┌п╬я┤п╫п╦п╨п╟ п╢п╟п╫п╫я▀я┘ 17.349 -# resource : jdbc:odbc:database 17.350 -# driver : sun.jdbc.odbc.JdbcOdbcDriver 17.351 - 17.352 -# п▒п╟п╥п╬п╡я▀п╧ п╨п╟я┌п╟п╩п╬пЁ я─п╣я│я┐я─я│п╬п╡ 17.353 -# resource_base : . 17.354 - 17.355 -# п╗п╟п╠п╩п╬п╫, я│ п╨п╬я┌п╬я─п╬пЁп╬ п╫п╟я┤п╦п╫п╟п╣я┌я│я▐ п╬п╠я─п╟п╠п╬я┌п╨п╟ 17.356 -main_template : main.template 17.357 - 17.358 -# п п╬п╢п╦я─п╬п╡п╨п╦ я└п╟п╧п╩п╬п╡ 17.359 -# input_encoding : UTF-8 17.360 -# output_encoding : UTF-8 17.361 - 17.362 -# п я█я┬п╦я─п╬п╡п╟п╫п╦п╣ я┬п╟п╠п╩п╬п╫п╬п╡ 17.363 -# cache_read : true 17.364 - 17.365 -# п▓я▀п╡п╬п╢ я─п╣п╥я┐п╩я▄я┌п╟я┌п╟ я─п╟п╥п╠п╬я─п╟ я┬п╟п╠п╩п╬п╫п╟ main.template п╡ stderr 17.366 -# output : stderr 17.367 - 17.368 -# п▓я▀п╡п╬п╢ я│п╬п╬п╠я┴п╣п╫п╦п╧ п╬п╠ п╬я┬п╦п╠п╨п╟я┘ п╡ я└п╟п╧п╩ 17.369 -# log : dbreader.log 17.370 -</pre> 17.371 - 17.372 -</body> 17.373 -</html>
18.1 --- a/misc/util/header Fri May 15 03:07:16 2009 +0400 18.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 18.3 @@ -1,19 +0,0 @@ 18.4 -/* 18.5 - * Copyright 2006-2009 Mikhail Kryshen 18.6 - * 18.7 - * This file is part of Tema. 18.8 - * 18.9 - * Tema is free software: you can redistribute it and/or modify it 18.10 - * under the terms of the GNU Lesser General Public License as 18.11 - * published by the Free Software Foundation, either version 3 of the 18.12 - * License, or (at your option) any later version. 18.13 - * 18.14 - * Tema is distributed in the hope that it will be useful, 18.15 - * but WITHOUT ANY WARRANTY; without even the implied warranty of 18.16 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18.17 - * GNU Lesser General Public License for more details. 18.18 - * 18.19 - * You should have received a copy of the 18.20 - * GNU Lesser General Public License along with Tema. 18.21 - * If not, see <http://www.gnu.org/licenses/>. 18.22 - */
19.1 --- a/misc/util/header.gpl Fri May 15 03:07:16 2009 +0400 19.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 19.3 @@ -1,20 +0,0 @@ 19.4 -/* 19.5 - * Copyright (C) 2006, 2007, 2008 Mikhail Kryshen 19.6 - * 19.7 - * This file is part of Tema. 19.8 - * 19.9 - * Tema is free software: you can redistribute it and/or modify it 19.10 - * under the terms of the GNU General Public License as published by 19.11 - * the Free Software Foundation, either version 3 of the License, or 19.12 - * (at your option) any later version. 19.13 - * 19.14 - * Tema is distributed in the hope that it will be useful, 19.15 - * but WITHOUT ANY WARRANTY; without even the implied warranty of 19.16 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19.17 - * GNU General Public License for more details. 19.18 - * 19.19 - * You should have received a copy of the GNU General Public License 19.20 - * along with Tema. If not, see <http://www.gnu.org/licenses/>. 19.21 - * 19.22 - * $Id: header.gpl,v 1.1 2008/02/16 16:56:34 mikhail Exp $ 19.23 - */
20.1 --- a/misc/util/update_headers.pl Fri May 15 03:07:16 2009 +0400 20.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 20.3 @@ -1,36 +0,0 @@ 20.4 -#!/usr/bin/perl 20.5 - 20.6 -use File::Find; 20.7 - 20.8 -undef $/; 20.9 - 20.10 -my $src = "../../src"; 20.11 -my $header_file = "header"; 20.12 - 20.13 -open (FILE, "$header_file"); 20.14 -my $header = <FILE>; 20.15 -close(FILE); 20.16 - 20.17 -find (\&update_header, $src); 20.18 - 20.19 -sub update_header 20.20 -{ 20.21 - my $code; 20.22 - 20.23 - if ( $File::Find::name !~ /^.*\.java$/ ) 20.24 - { 20.25 - return; 20.26 - } 20.27 - 20.28 - print $File::Find::name."\n"; 20.29 - open(FILE, "$_") or die "error opening file"; 20.30 - 20.31 - $code = <FILE>; 20.32 - $code =~ s|(^[[:space:]]*/\*.*?\*/[[:space:]]*?\n\|^)|$header|s; 20.33 - 20.34 - close(FILE); 20.35 - 20.36 - open(FILE, ">$_") or die "error opening file"; 20.37 - print FILE $code; 20.38 - close(FILE); 20.39 -}