Спецификация RSSB формата
Для того, что бы понять, как строится RSSB файл, достаточно взглянуть на его краткое представление (структуру).
<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0" xmlns:bfs="http://www.bfs.ru/rssb/">
<channel>
<title>....</title> <category>...</category> <link>...</link> <description>...</description> .... <item>
<bfs:Action actiontype="sale" /> <bfs:Price pricetype="..">...</bfs:Price> <title>...</title> <description>...</description> <bfs:Country>...</bfs:Country> <bfs:Region>...</bfs:Region> <bfs:City>...</bfs:City> <link>...</link> <guid>...</guid> <pubDate>...</pubDate> ..... </item> ... </channel> </rss>
Ниже эта схема будет разобрана подробно.
Более полное представление структуры формата можно найти в этом примере
Если Вы уже встречались с форматом RSS и знакомы с языком разметки XML, проанализировать формат RSSB не составит труда. Как уже упоминалось выше, формат RSSB основывается на формате RSS версии 2.0. Поэтому для совместимости были сохранены основные поля RSS и добавленные новые, четко определенные поля для передачи бизнес информации.
Как и любой правильный XML файл, формат требует определения версии и языка документа:
<? xml version ="1.0" encoding ="windows-1251"?>
Формат RSSB объявляется строкой, указывающей на совместимость с форматом RSS 2.0 и поддержкой дополнительного пространства имен bfs – необходимого для передачи бизнес информации:
<rss version="2.0" xmlns:bfs="http://www.bfs.ru/rssb">
Далее в структуре документа следует объявление параметров канала после поля <channel> и передаваемые элементы канала <item>...</item>.
Многие из полей формата RSSB являются необязательными, но есть и обязательные поля, отсутствие которых может привести к ошибкам и Ваш документ в этом случае не будет валидным (valid).
Обязательные поля описания канала:
| Поле |
Описание |
| <title> |
Заголовок канала. Основной элемент, по которому люди смогут идентифицировать Ваш канал. Используйте заголовки умеренной длины и максимально информативные. |
| <title>BFS.RU продажа готового бизнеса</title> |
| <link> |
Ссылка на Ваш сайт. Ссылка должна вести на главную страницу Вашего сайта или на соответствующий каналу раздел. |
| <link>http://www.bfs.ru/sale.asp</link> |
| <description> |
Описание канала. Описание должно не повторять заголовок, а его дополнять и расшифровывать. |
| <description>Заявки на продажу готового бизнеса и дополнительная информация</description> |
| <item> |
В элементе item содержится вся информация заявки (бизнес-единицы). Подробно его поля рассмотрены ниже. |
| <item>..</item> |
Дополнительные поля описания канала:
| Поле |
Описание |
| <language> |
Язык, на котором написан канал. |
| <language>ru</language> |
| <copyright> |
Информация о владельце канала. |
| <copyright>Форум готового бизнеса BFS.RU</copyright> |
| <pubDate> |
Дата последнего обновления канала. Если прибавить к ней число, содержащееся в поле ttl (мин) можно примерно вычислить время, когда информация канала будет обновлена. Дата должна быть указана в точном формате GMT - как указано в примере ниже. |
| <pubDate>Fri, 06 May 2005 11:36:50 GMT</pubDate> |
| <generator> |
Информация о программе, генерирующей канал. |
| <generator>XML.RSSB.Generator</generator> |
| <docs> |
Ссылка на страницу с документацией по формату RSSB. Так как этот формат разработан BFS.RU, поле должно содержать следующую ссылку: |
| <docs>http://www.bfs.ru/rssb/</docs> |
| <ttl> |
Поле указывает время в минутах, через которое обновляется данный канал. |
| <ttl>360</ttl> |
| <image> |
Поле, содержащее иллюстрации. Обычно в нем размещается логотип канала. Дополнительные поля содержат url, link, title - для размещенного изображения. Размер изображения не должен превышать 144X400. |
<image>
- <url>http://www.bfs.ru/images/bfs_rss.gif</url>
- <link>http://www.bfs.ru</link>
- <title>Форум Готового Бизнеса</title>
</image> |
После завершения описания канала идет описание элементов (бизнес-единиц) канала:
Бизнес-единицы размещаются в полях <item>...</item>. Канал может содержать неограниченное число этих полей, что позволяет выгружать большое количество информации. Обычно используется 10-15 полей.
Все перечисляемые ниже поля разделены на 3 группы:
- 1. Обязательные поля, наследованные из RSS.
- 2. Обязательные поля, используемые форматом RSSB
- 3. Дополнительные поля, использование которые не обязательно, но желательно для более четкого описания бизнес единицы.
Все поля 2-й и 3-й группы могут содержать дополнительные атрибут name. Это атрибут предназначен, чтобы избежать двусмысленности в значении поля. В этом атрибуте можно дать краткое описание значения представленного в поле. Например:
<bfs:Product name="Выпускаемая продукция">Товары народного потребления: мясные продукты</bfs:Product>
Описание бизнес-единиц (содержится в полях ):
| Поле |
Описание |
| 1. Обязательные поля, наследованные из RSS. |
| <title> |
Название бизнес-единицы |
| <title>АЗС 60км</title> |
| <link> |
Ссылка на страницу с дополнительной (или полной) информацией, например на HTML-страницу сервера. Если на сервере есть форма связи с владельцем бизнес-единицы, также можно использовать эту ссылку для связи с ним, чтобы исключить СПАМ. |
| <link>http://www.bfs.ru/viewrequest.asp?rqid=2345</link> |
| <description> |
Описание бизнес-единицы. |
| <description>АЗС находится в г. Белгороде на земельном участке 12 соток, земля в бессрочной аренде….</description> |
| <guid> |
Идентификатор бизнес-единицы - должен быть УНИКАЛЬНЫМ в пределах базы сайта, для того, чтобы при обмене информацией между сайтами не происходило дублирование единиц. |
| <guid>A840E5B1-3590-4717-8DC6-5EFCD843EB79</guid> |
| <pubDate> |
Дата публикации бизнес-единицы. Дата должна быть указана в точном формате GMT - как указано в примере ниже. |
| <pubDate>Fri, 06 May 2005 11:36:50 GMT</pubDate> |
| 2. Обязательные поля, используемые форматом RSSB |
| <bfs:Action> |
Поле-флаг, определяющее тип бизнес-единицы. Атрибут actiontype может содержать одно из допустимых значений: buy,sale,invest,project - что соответствует продаже бизнеса, покупке бизнеса, инвестированию, проекту для инвестирования. |
| <bfs:Action actiontype="buy"/> |
| <bfs:Price> |
Поле цены. Указывает цену, тип цены (pricetype) и валюту (cur). Для обязательного атрибута pricetype возможны два варианта - fixed и float, что соответствует фиксированной цене и договорной цене. Атрибут cur - необязательный, он указывает валюту, в которой представлена цена, по умолчанию это USD (также возможны usd,euro,rubls). |
| <bfs:Price pricetype="fixed" cur="usd">4000.00</bfs:Price> |
| <bfs:BusinessField> |
Поле для указания вида деятельности – должно быть кратким и информативным. |
| <bfs:BusinessField>Туризм</bfs:BusinessField> |
| <bfs:Country> |
Страна происхождения бизнес-единицы |
| <bfs:Country>Россия</bfs:Country> |
| <bfs:City> |
Город происхождения бизнес-единицы |
| <bfs:City>Москва</bfs:City> |
| 3. Дополнительные поля бизнес-единицы. |
| <bfs:CorpName> |
Наименование компании-владельца (бизнеса, проекта, предложения) |
| <bfs:CorpName>Регион-Центр-Инвест</bfs:CorpName> |
| <bfs:LegalForm> |
Организационно-правовая форма компании-владельца |
| <bfs:LegalForm> Общество с ограниченной ответственностью </bfs:LegalForm> |
| <bfs:CorpOwners> |
Учредители (акционеры) компании-владельца |
| <bfs:CorpOwners>Физические лица </bfs:CorpOwners> |
| <bfs:Assets> |
Активы (фонды) бизнес-единицы |
| <bfs:Assets> 4х-этажное капитальное здание со всеми коммуникациями и оборудованием площадью около 5000 кв.м., …, специализированный производственный корпус, одноэтажное здание, ремонтно-механический цех, площадью 896,3 кв.м., с парком 30 станков … </bfs:Assets> |
| <bfs:Comment> |
Поле дополнительных сведений, не указанных в прочих элементах |
| <bfs:Comment> Надежный рентабельный бизнес, сложившийся контингент клиентов, административный ресурс ...</bfs:Comment> |
| <bfs:BusinessAge> |
Возраст (планируемый срок деятельности) |
| <bfs:BusinessAge>3 года </bfs:BusinessAge> |
| <bfs:Product> |
Производимые услуги или продукция |
| <bfs:Product> Заправка автотехники всеми видами топлива, автосервис, магазин ... </bfs:Product> |
| <bfs:Terms> |
Поле для описания условий сделки (сотрудничества) |
| <bfs:Terms> Продажа АЗС - как имущественного комплекса, финансовый аудит…, страхование сделки …</bfs:Terms> |
| <bfs:Share> |
Процент участия, покупаемая или продаваемая доля |
| <bfs:Share>100%</bfs:Share> |
| <bfs:PayBack> |
Срок окупаемости вложений |
| <bfs:PayBack>1 год </bfs:PayBack> |
| <bfs:Personnel> |
Поле для описания персонала |
| <bfs:Personnel>Слаженная, квалифицированная команда. Курсы специальной подготовки …</bfs:Personnel> |
| <bfs:EmplNum> |
Количество работников |
| <bfs:EmplNum>20 человек, в том числе 3 управленца</bfs:EmplNum> |
| <bfs:FinRatios> |
Поле для описания финансовых показателей бизнес-единицы |
| <bfs:FinRatios>Коэффициент внутренней рентабельности 63%, Окупаемость проекта 6 месяцев, коэффициент ликвидности, оценка рисков … </bfs:FinRatios> |
| <bfs:CapitalRet> |
Доходность на вложенный капитал |
| <bfs:CapitalRet> 58% годовых в USD </bfs:CapitalRet> |
| <bfs:Region> |
Регион происхождение бизнес-единицы (для РФ) |
| <bfs:Region>Центральный</bfs:Region> |
| <bfs:Income> |
Выручка (оборот) |
| <bfs:Income>210000 USD в мес.</bfs:Income> |
| <bfs:Margin> |
Маржинальный доход |
| <bfs:Margin> 75000 USD в мес.</bfs:Margin> |
| <bfs:Outlay> |
Затраты на содержание бизнес-единицы |
| <bfs:Outlay>85000 USD в мес., включая ФОТ</bfs:Outlay> |
| <bfs:AssetsCost> |
Стоимость активов (фондов) бизнес-единицы |
| <bfs:AssetsCost>950000 USD</bfs:AssetsCost> |
| <bfs:WageFund> |
Фонд оплаты труда |
| <bfs:WageFund> 42000 USD в месяц</bfs:WageFund> |
| <bfs:DocList> |
Перечень имеющейся (требующейся) документации к бизнес-единице |
| <bfs:DocList> Финансовая отчетность, полный пакет разрешительной документации, бизнес-план…</bfs:DocList> |
* В представлении базы BFS.RU все финансовые показатели бизнес-единиц, если не указано иное, указаны в USD.
Несколько важных замечаний.
Файл RSSB на сервере размещается с расширением .rss – для совместимости с пользовательскими агрегаторами. Так же рекомендуется создать файл opml.xml или chanel.opml, как список всеx доступных каналов сервера (см. пример – список RSS и RSSB каналов BFS.RU). О OPML формате можно прочесть в статьях про RSS на нашем портале.
Рекомендуется использовать кодировку "windows-1251" или "utf-8"
Для соответствия формату RSSB, предоставляемый сервером файл должен точно соответствовать требованиям, указанным в данной спецификации. Для проверки корректности файла можно воспользоваться нашим валидатором, он проанализирует и сообщит вам о неточностях или ошибках допущенных в файле.
Все требования, изложенные в данной спецификации, консолидированы в DTD (rssb.dtd), который можно использовать для построения RSSB файла.
Для приведения RSSB файла в более удобную для прочтения форму XML, можно воспользоваться файлом преобразования XSL (rssb.xsl). Этот файл поможет преобразовать XML файл к дизайну Вашего сайта, и сделать его, тем самым, читаемым пользователями без использования агрегатора. Для того чтобы подсоединить файл к вашему RSSB файлу, добавьте в него (после декларации xml) строку:
<?xml-stylesheet type="text/xsl" href="rssb.xsl" version="1.0"?>
При этом сохраните свой вариант rssb.xsl в текущей папке, где сохранен RSSB файл.
Поле <guid> - содержит уникальный идентификатор заявки. Если вы получаете заявки из чужого RSSB канала, поле guid поможет избежать дублирования в базе. Если же вы создаете RSSB канал, используйте уникальный номер для каждой бизнес единицы. Для этого можно воспользоваться генератором newid() из T-SQL или же System.Guid.NewGuid() - из Net Framework.
Если нужно использовать HTML теги в текстовом содержание полей, нужно использовать оператор <![CDATA[..HTMLкод..]>.
Примеры загрузки/выгрузки и применения RSSB файлов разобраны в разделе "Создание RSSB-канала"
Приложение 1. DTD (rssb.dtd)
<!-- DTD for RSSB format (c) Vendor BFS.RU www.bfs.ru Created 21/05/2005 Alexander Ivanov --> <!ELEMENT rss (channel)> <!ATTLIST rss version CDATA #REQUIRED> <!ATTLIST rss xmlns:bfs CDATA #FIXED "http://www.bfs.ru/rssb/"> <!ELEMENT channel (title | link | description | language? | rating? | image? | textinput? | copyright? | pubDate? | lastBuildDate? | docs? | managingEditor? | webMaster? | skipHours? | skipDays? | generator? | ttl? | category? | item+ )*> <!ELEMENT title (#PCDATA)> <!ELEMENT generator (#PCDATA)> <!ELEMENT ttl (#PCDATA)> <!ELEMENT category (#PCDATA)> <!ELEMENT description (#PCDATA)> <!ELEMENT link (#PCDATA)> <!ELEMENT image (title | url | link | width? | height? | description?)*> <!ELEMENT url (#PCDATA)> <!ELEMENT textinput (title | description | name | link)*> <!ELEMENT name (#PCDATA)> <!ELEMENT rating (#PCDATA)> <!ELEMENT language (#PCDATA)> <!ELEMENT width (#PCDATA)> <!ELEMENT height (#PCDATA)> <!ELEMENT copyright (#PCDATA)> <!ELEMENT pubDate (#PCDATA)> <!ELEMENT lastBuildDate (#PCDATA)> <!ELEMENT docs (#PCDATA)> <!ELEMENT managingEditor (#PCDATA)> <!ELEMENT webMaster (#PCDATA)> <!ELEMENT hour (#PCDATA)> <!ELEMENT day (#PCDATA)> <!ELEMENT skipHours (hour+)> <!ELEMENT skipDays (day+)> <!ELEMENT source (#PCDATA)> <!ELEMENT comments (#PCDATA)> <!ELEMENT author (#PCDATA)> <!ELEMENT guid (#PCDATA)> <!ELEMENT enclosure (#PCDATA)> <!ATTLIST enclosure url CDATA #REQUIRED type CDATA #REQUIRED > <!--RSSB Filds--> <!ELEMENT bfs:Personnel (#PCDATA)> <!ATTLIST bfs:Personnel name CDATA #IMPLIED> <!ELEMENT bfs:City (#PCDATA)> <!ATTLIST bfs:City name CDATA #IMPLIED> <!ELEMENT bfs:DocList (#PCDATA)> <!ATTLIST bfs:DocList name CDATA #IMPLIED> <!ELEMENT bfs:EmplNum (#PCDATA)> <!ATTLIST bfs:EmplNum name CDATA #IMPLIED> <!ELEMENT bfs:AssetsCost (#PCDATA)> <!ATTLIST bfs:AssetsCost name CDATA #IMPLIED> <!ELEMENT bfs:Product (#PCDATA)> <!ATTLIST bfs:Product name CDATA #IMPLIED> <!ELEMENT bfs:CorpName (#PCDATA)> <!ATTLIST bfs:CorpName name CDATA #IMPLIED> <!ELEMENT bfs:Margin (#PCDATA)> <!ATTLIST bfs:Margin name CDATA #IMPLIED> <!ELEMENT bfs:Outlay (#PCDATA)> <!ATTLIST bfs:Outlay name CDATA #IMPLIED> <!ELEMENT bfs:Share (#PCDATA)> <!ATTLIST bfs:Share name CDATA #IMPLIED> <!ELEMENT bfs:Terms (#PCDATA)> <!ATTLIST bfs:Terms name CDATA #IMPLIED> <!ELEMENT bfs:Region (#PCDATA)> <!ATTLIST bfs:Region name CDATA #IMPLIED> <!ELEMENT bfs:Country (#PCDATA)> <!ATTLIST bfs:Country name CDATA #IMPLIED> <!ELEMENT bfs:BusinessField (#PCDATA)> <!ATTLIST bfs:BusinessField name CDATA #IMPLIED> <!ELEMENT bfs:LegalForm (#PCDATA)> <!ATTLIST bfs:LegalForm name CDATA #IMPLIED> <!ELEMENT bfs:CorpOwners (#PCDATA)> <!ATTLIST bfs:CorpOwners name CDATA #IMPLIED> <!ELEMENT bfs:Assets (#PCDATA)> <!ATTLIST bfs:Assets name CDATA #IMPLIED> <!ELEMENT bfs:Comment (#PCDATA)> <!ATTLIST bfs:Comment name CDATA #IMPLIED> <!ELEMENT bfs:FinRatios (#PCDATA)> <!ATTLIST bfs:FinRatios name CDATA #IMPLIED> <!ELEMENT bfs:BusinessAge (#PCDATA)> <!ATTLIST bfs:BusinessAge name CDATA #IMPLIED > <!ELEMENT bfs:Action EMPTY> <!ATTLIST bfs:Action actiontype (buy|sale|invest|project) #REQUIRED> <!ELEMENT bfs:Price (#PCDATA)> <!ATTLIST bfs:Price pricetype (fixed|float) #REQUIRED> <!ATTLIST bfs:Price name CDATA #IMPLIED cur (usd|rubls|euro) #IMPLIED > <!ELEMENT bfs:WageFund (#PCDATA)> <!ATTLIST bfs:WageFund name CDATA #IMPLIED > <!ELEMENT bfs:Income (#PCDATA)> <!ATTLIST bfs:Income name CDATA #IMPLIED> <!ELEMENT bfs:PayBack (#PCDATA)> <!ATTLIST bfs:PayBack name CDATA #IMPLIED > <!ELEMENT bfs:CapitalRet (#PCDATA)> <!ATTLIST bfs:CapitalRet name CDATA #IMPLIED>
<!ELEMENT item ( title?, link?, description?, guid?, bfs:Action?, bfs:Price?, bfs:BusinessField?, bfs:Country?, bfs:City?, bfs:LegalForm?, bfs:CorpOwners?, bfs:Assets?, bfs:Comment?, bfs:BusinessAge?, bfs:CapitalRet?, bfs:Region?, bfs:Terms?, bfs:Income?, bfs:Margin?, bfs:Outlay?, bfs:Share?, bfs:DocList?, bfs:WageFund?, bfs:EmplNum?, bfs:AssetsCost?, bfs:PayBack?, bfs:Product?, bfs:CorpName?, bfs:Personnel?, bfs:FinRatios?, source?, comments?, author?, pubDate?, enclosure?, category? )+>
Приложение 2. XSL (rrsb.xsl)
- <!-- XSL for RSSB format (c) Vendor BFS.RU www.bfs.ru Created 21/05/2005 Alexander Ivanov --> - <xsl:stylesheet version="1.0"> - <xsl:template match="/rss"> - <html> - <head> - <title><xsl:value-of select="channel/title"/></title><link rel="stylesheet" type="text/css" href="http://www.bfs.ru/css/bfs.css"/></head> - <body> - <TABLE class="MainTitle" height="100%" border="0" cellspacing="0" width="100%"> - <TR> - <TD nowrap="" align="right"><img src="http://www.bfs.ru/images/logo.gif" alt="Форум Готового Бизнеса BFS.RU"/><BR/><b>ФОРУМ ГОТОВОГО БИЗНЕСА</b></TD> - <TD width="100%"> - <table class="MainTitle"> - <TR> - <TD width="100%"> - <a class="Head1"><xsl:value-of select="channel/title"/></a></TD> - <TD> - <a href=""><img src="http://www.bfs.ru/images/rssb.gif" alt="Поддерживает RSSB" border="0"/></a></TD></TR> - <TR> - <TD colspan="2"> - <b> - <a class="Link"><xsl:value-of select="channel/description"/></a></b></TD></TR> - <TR> - <TD colspan="2"><a href="">HTML версия</a> | <a href="opml.xml">другие каналы</a></TD></TR> - <TR> - <TD colspan="2">Последнее обновление: <xsl:value-of select="channel/lastBuildDate"/></TD></TR></table></TD></TR> - <TR height="100%"> - <TD class="RSS" colspan="2" align="center" Valign="top"><br/><br/> - <div class="about" ><b>Информация:</b> Вы обратились к RSSB каналу. Используя программу агрегатор, Вы можете просматривать эту страницу, не посещая портал BFS.RU.</div><br/><br/><xsl:apply-templates select="channel/item"/><br/><br/> - <div class="about" ><b>Информация:</b> Вы обратились к RSSB каналу. Используя программу агрегатор, Вы можете просматривать эту страницу, не посещая портал BFS.RU.</div><br/><br/></TD></TR></TABLE> - <TABLE width="100%"> - <TR> - <TD colspan="2" align="center"> - <TABLE width="100%" class="DownMenu" border="0"> - <TR> - <TD nowrap=""><a href="http://www.bfs.ru/" >главная</a> |</TD> - <TD nowrap="" align="center"><a href="http://www.bfs.ru/news/">новости</a> |</TD> - <TD nowrap="" align="center"><a href="http://www.bfs.ru/userlib/">публикации</a> |</TD> - <TD nowrap="" align="center"><a href="http://www.bfs.ru/raitings/">рейтинги</a> |</TD> - <TD nowrap="" align="center"><a href="http://www.bfs.ru/feedback.asp">контакты</a> |</TD> - <TD nowrap="" align="center"><a href="http://www.bfs.ru/sitemap.asp">карта сайта</a> |</TD> - <TD nowrap="" align="center"><a href="http://www.bfs.ru/search.asp">поиск</a> |</TD> - <TD nowrap="" width="100%" align="right"><xsl:text disable-output-escaping="yes">©</xsl:text> Форум Готового Бизнеса | Business Forum Stock 2005</TD></TR></TABLE></TD></TR></TABLE></body></html></xsl:template> - <xsl:template match="channel/item"> - <table class="InfoTable" cellpadding="3" cellspacing="0" width="90%"> - <tr class="Title"> - <td width="1%" align="right"><xsl:number value="position()"/>.</td> - <td valign="top" align="right"><xsl:apply-templates select="bfs:Action"/>:</td> - <td><xsl:value-of select="title"/></td></tr><xsl:apply-templates select="description"/><xsl:apply-templates select="bfs:BusinessField"/><xsl:apply-templates select="bfs:Country"/><xsl:apply-templates select="bfs:City"/><xsl:apply-templates select="bfs:Price"/> - <!-- <xsl:apply-templates select='bfs:CorpName' /><xsl:apply-templates select='bfs:LegalForm' /><xsl:apply-templates select='bfs:CorpOwners' /><xsl:apply-templates select='bfs:Assets' /><xsl:apply-templates select='bfs:Comment' /><xsl:apply-templates select='bfs:BusinessAge' /><xsl:apply-templates select='bfs:Product' /><xsl:apply-templates select='bfs:Terms' /><xsl:apply-templates select='bfs:Share' /><xsl:apply-templates select='bfs:PayBack' /><xsl:apply-templates select='bfs:Personnel' /><xsl:apply-templates select='bfs:FinRatios' /><xsl:apply-templates select='bfs:Region' /><xsl:apply-templates select='bfs:Income' /><xsl:apply-templates select='bfs:Margin' /><xsl:apply-templates select='bfs:Outlay' /><xsl:apply-templates select='bfs:AssetsCost' /><xsl:apply-templates select='bfs:EmplNum' /><xsl:apply-templates select='bfs:WageFund' /><xsl:apply-templates select='pubDate' /> --> - <tr class="R1"><td/><td valign="top" align="right">Дата размещения:</td> - <td><xsl:value-of select="substring(pubDate,6,12)"/><xsl:apply-templates select="author"/></td></tr> - <tr class="R2"><td/><td/> - <td valign="top"><a href="" target="blank">Посмотреть детали и сделать запрос</a></td></tr></table><BR/><BR/></xsl:template><xsl:template match="bfs:Action[@actiontype='buy']"> Покупка бизнеса</xsl:template><xsl:template match="bfs:Action[@actiontype='sale']"> Продажа бизнеса</xsl:template> - <xsl:template match="author"> (<xsl:value-of select="." disable-output-escaping="yes"/>)</xsl:template> - <xsl:template match="description"> - <tr class="Group"><td/><td width="10%" nowrap="nowrap" align="right" valign="top">Описание :</td> - <td valign="top"><xsl:apply-templates select="../enclosure"/><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:BusinessField"> - <tr class="R1"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Country"> - <tr class="R1"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:City"> - <tr class="R1"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Price[@pricetype='fixed']"> - <tr class="R1"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"> - <a class="Opt"><xsl:value-of select="." disable-output-escaping="yes"/></a></td></tr></xsl:template> - <xsl:template match="bfs:Price[@pricetype='float']"> - <tr class="R1"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><a class="Opt">договорная</a></td></tr></xsl:template> - <xsl:template match="bfs:CorpName"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:LegalForm"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:CorpOwners"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Assets"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Comment"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:BusinessAge"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Product"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Terms"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Share"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:PayBack"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Personnel"> - <tr class="R2"> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="guid"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:FinRatios"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Region"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Income"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Margin"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:Outlay"> - <tr class="R2"> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:AssetsCost"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:EmplNum"> - <tr class="R2"><td/> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="bfs:WageFund"> - <tr class="R2"> - <td width="10%" nowrap="nowrap" align="right" valign="top"><xsl:value-of select="@name"/>:</td> - <td valign="top"><xsl:value-of select="." disable-output-escaping="yes"/></td></tr></xsl:template> - <xsl:template match="enclosure[@type='image/gif']|enclosure[@type='image/jpeg']|enclosure[@type='image/jpg']"><img src="{@url}" align="left"/></xsl:template></xsl:stylesheet>
Спецификация Формата подготовлена 21.04.2005 BFS.RU разработчики: Александр Иванов, Коновалов Андрей
|