Начало Новости Технологии и ноу-хау  Дайджест Проекты Новосибирский филиал Персоналии Публикации 


Начало
Новости
Технологии
Дайджест
Проекты
   Alex
   AURA
   InBASE
   InDOC
   INTEGRA.NM
   SemP-T
   ТАО
   Time-EX
   Unicalc
   Частотный словарь
   Экономика
НC филиал
Персоналии
Публикации




Alex
Примеры применения

Прайс-листы.

С помощью технологии Alex возможно решение такой задачи: занесение в базу данных цен на товары определенных категорий из прайс-листов на Web-страницах. Настройка при этом заключается в создании банка шаблонов, отражающего строение типичных прайс-листов. Вот фрагмент прайс-листа, содержащий цифровые фотоаппараты:

НазваниеЦена
Olympus C-2000zoom870
Olympus C-1400XL780
Agfa ePhoto CL50700
Agfa ePhoto CL30470
Agfa ePhoto 1680730
Canon PowerShot A50440

На первый взгляд, прайс-лист устроен довольно просто: таблица, в одной колонке которой - название товара, в другой - цена. Какие шаблоны нужны для того, чтобы прайс-лист в формате HTML можно было опознать как прайс-лист и занести в базу данных? Прежде всего, необходимы шаблоны [Товар] и [Цена]. И если [Цена] может быть устроена довольно просто:

 [Цена] =
[число]
где "число" - это предопределенный системный шаблон,

то название товара - более сложная конструкция, которая может включать категорию товара ("цифровой фотоаппарат"), название фирмы-производителя ("Agfa"), марку товара ("ePhoto 1680"), а часто - и некоторые характеристики товара.

Итак, определим название товара так:

 [Товар] =
([Категория]) ([Производитель]) [Марка] ([Характеристики])

Круглые скобки обозначают опциональность элементов шаблона.
Строка прайс-листа может иметь следующий вид:

 [Прайс-строка] =
[Товар] [Разделитель] [Цена] .

где [Разделитель] - это вспомогательный шаблон, который позволяет учитывать различные способы отделения одного поля от другого, а . - произвольный контекст.
Наконец, сам прайс-лист - это множество строк, первая строка - заголовок:

 [Прайс-лист] =
[Первая строка] [Прайс-строка]=

Здесь = - это признак повторения произвольное число раз.
Первую строку можно определить так:

[Первая строка] =
[Заголовок товара] [Разделитель] [Заголовок цены] (.)

Шаблоны [Производитель], [Категория] и т.д. заполняются уже названиями конкретных производителей, категорий. Определив таким образом всего 12 шаблонов, связанных со структурой прайс-листа, и наполняя шаблоны нижнего уровня, мы можем найти все традиционные прайс-листы, независимо от их стиля и способа кодирования в HTML, и занести их в базу данных уже в нормализованном виде. Такой подход аналогичен восприятию человека - человек выделяет базовые структурные элементы, абстрагируясь от способов реализации этой структуры.

Выше мы рассмотрели довольно простой случай. Однако на практике встречаются и такие строки прайса:

Compaq Armada M700 470006-459 PIII-850/20GB/128MB/14.1" TFT/DVD/LAN/W98

Здесь в одной строке приведены все значимые характеристики товара (ноутбука). Для того, чтобы эти свойства выделить в отдельные поля, потребуется чуть больше работы (порядка 20 шаблонов). Вот пример устройства шаблона Размер экрана:

[Размер экрана] =
[число]''
[число]"
[число](_)tft

После создания таких шаблонов каждой строке в прайсе мы получим заполненной такую структуру:

CD-приводDVD
Диск20
МаркаArmada
МодификацияM700
ОСW98
Память128
ПроизводительCompaq
Размер экрана14.1
Сетевая картаЕсть
Тип процессораPIII
Частота процессора850

Таким образом, прайс-лист может быть преобразован в таблицу с параметрами товаров. Создание банка шаблонов для качественного покрытия данной категории товаров (ноутбуки) занимает несколько часов в визуальной оболочке Алекс.


Alex
  © 2001 – 2005, РосНИИ ИИ. Все права защищены. © 2001 – 2005, RRIAI. All rights reserved.  
  © 2003 – 2008, ЗАО "ИнтеллиТек". Все права защищены. © 2003 – 2008, IntelliTek, J.-S.C. All rights reserved.