Abstract
В работе рассматривается одна из основных задач при разработке интерпретатора для инструментария BlockSet – проектирование синтеза SQL запросов на основе метамодели, а так программного обеспечения для его применения. Авторами рассмотрен как инструментарий в целом, так и роль самого алгоритма в его контексте. Подробно рассмотрены периферийные инструменты для управления алгоритмом в разках языка BML. Продемонстрированы этапы его формирования и технические тонкости реализации. Помимо прямого алгоритма так же рассмотрен обратный алгоритм генерации запроса для поиска факторов частных событий, который необходим при реализации ресурса на основе событийно-ориентированного подхода. Для наглядности разобран пример обработки события появления “сообщения”, в результате которого необходимо определять id “пользователей” -- отправителя и получателя, которых нужно уведомить о появлении указанного “сообщения”. Подведены выводы, демонстрирующие, результаты проделанной работы. The paper examines one of the main tasks in developing an interpreter for the BlockSet toolkit - designing the synthesis of SQL queries based on the metamodel, as well as software for its use. The authors examined both the toolkit as a whole and the role of the algorithm itself in its context. Peripheral tools for managing the algorithm in the BML language are discussed in detail. The stages of its formation and technical details of implementation are demonstrated. In addition to the direct algorithm, a reverse algorithm for generating a query to search for factors of private events, which is necessary when implementing a resource based on an event-oriented approach, is also considered. For clarity, an example of processing the “message” event has been analyzed, as a result of which it is necessary to determine the id of “users” - the sender and the recipient, who need to be notified about the appearance of the specified “message”. Conclusions are drawn demonstrating the results of the work done.
Published Version (
Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have