В настоящее время мы разрабатываем проект в .NET, который включает анализ документов XML на основе набора пользовательских правил.Вот пример:
<Person>
<Name>Bob</Name>
<Cars>
<Car Type="SUV" Color="Black"/>
<Car Type="Sports" Color="Red"/>
<Cars/>
</Person>
Правила EG: если имя человека = "Боб" и у него 2 машины, то ... если у человека как минимум один внедорожник и хотя бы один спортивный автомобиль, то ...
Мы собираемся создать мастера «построителя правил», который проведет пользователей по процессу создания правила.В дополнение к этому, одно из других осложнений заключается в том, что схема документов XML будет зависеть от потребностей клиентов, поэтому нам необходим быстрый способ адаптации к новым схемам.Кто-нибудь может дать некоторое представление о том, какие базовые технологии могут лучше всего этого достичь?Вот пара моментов, которые мы рассмотрели:
- Динамический Linq to XML
- Измельчение XML в таблицы SQL и создание динамических операторов SQL
- Создание некоторого типа настраиваемого DSL(Iron Python, Boo и т. Д.)
Наибольшую обеспокоенность вызывают способность реализовывать правила на лету, скорость и легкость / гибкость в написании правил.
Идеи?