<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Information System for Recommendation List Formation of Clothes Style Image Selection According to User's Needs Based on NLP and Chatbots</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Anat Company</institution>
          ,
          <addr-line>Lviv</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>IT Step University</institution>
          ,
          <addr-line>Lviv</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
      </contrib-group>
      <fpage>0000</fpage>
      <lpage>0002</lpage>
      <abstract>
        <p>The work is devoted to the development of the information system for creating a list of recommendations for fashionable style of clothing meeting the users` needs using NLP and chat bots. It provides studying and practical use of chat bots as virtual assistants involving natural language processing. The purpose of this work is to develop software so that chat bot will be function on Telegram messenger base. During the implementation there were analyzed another chat bots that have similar functionality, their advantages and disadvantages. The server part of the system that process the oncoming data using Java programming language and Spring Framework is build. For development, IntelliJ IDEA as IDE is used. NLP also to the system using DialogFlow service so that helped to archive a high level of natural user language recognition that increased interactivity and communication is connected. Connection to Telegram messenger performs via Bot API. For processing data, there are used Hibernate as a database ORM and Jsoup as html parser.</p>
      </abstract>
      <kwd-group>
        <kwd>NLP</kwd>
        <kwd>chatbots</kwd>
        <kwd>content recommendation</kwd>
        <kwd>content analysis</kwd>
        <kwd>financial products</kwd>
        <kwd>processes</kwd>
        <kwd>services</kwd>
        <kwd>Telegram</kwd>
        <kwd>API</kwd>
        <kwd>Data Mining</kwd>
        <kwd>Machine Learning</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>In the modern world, the use of chat bots in everyday life is becoming increasingly
popular [1]. They allow the user to find useful information for him: weather forecast,
exchange rate, book a plane or train ticket, order a taxi, etc. [2]. Nowadays, no one
can say that chat bots can replace people, but can automate a huge amount of routine
operations, answering frequently asked questions or providing background
information [3]. In the course of the dialogue with the user; they offer the most relevant
information and consistently narrow the list option [4]. Applying natural language
processing, chat bots can interpret the data received in the user's language and using
dialogue systems, the data into meaningful information and show the response to the
request are decrypted [5]. Also in the application of machine learning, there is the
possibility of "training" the chat bot, in consequence of which, over time it will
recognize the greater amount of information as well as give a wider range of results [6].
Chat bots are empowered instantly provide the user with the information they need
[7]. This is a big plus for business, since there is no need for 24-hour support with the
people [8]. Two main functions that perform chat bots of online stores in buyers terms
[9]: looking for goods on request; showing products without targeted search is in the
form of catalogues, collections and other forms. The topicality of the work derives
from the wide popularity of instant messaging systems and the development of
alternative ways of interaction with Internet-shops [10]. It is also worth noting that, based
on general trends concerning the development of artificial intelligence technologies,
machine learning modern bots, including chat bots can take on more and more
functions. The purpose of the work is to demonstrate and analyze the functionality of the
chat-bot, built on the Telegram-messenger platform and with the additional use of
non-recognized natural language recognition services. This will allow you to explore
the business scope of chat bots and integrate them into online stores and specific
functionality. To achieve this goal, the following tasks are identified:
 Familiarization and analysis of functions and means of communication presenting
existing solutions [11];
 Researching and comparing existing chat bots on different messengers with similar
functionality and using natural language processing for user interaction [12];
 Construction and demonstration of a chat bot that is ready for use and interacts
with the necessary customized services [13].</p>
      <p>The object of research is the chat bot and the integration of natural language
processing into its functionality. The subject of research is the development, integration,
interaction of information systems with chat bots. Research methods are a way of
using chat bots in the field of clothing sales, construction of the active chat bot,
integrated with certain third-party services and platforms. The scientific novelty of this
work is in the construction of an information system for the development of chat-bots,
with the possibility of integrating natural language packs. The practical value of the
results of the work is in the popularity of the use of chat bots and their integration into
online stores in our time and the obvious lack of use of modern capabilities of
artificial intelligence.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Analysis of literary sources and subject field</title>
      <p>At first sight, it seems that the problems that are solved by using NLP are rather
trivial, although there is quite a large number of complexities in this area, linked both to
technical implementation and to the human factor [14]. For example, a billion people
speak English and each carrier uses it uniquely: there are different dialects, individual
communication features [15]. One of the main problems is the ambiguity of words,
expressions or phrases, for the correct interpretation of which a context is needed
[1621]. Often people in messages ignore the rules of grammar, or answer so short that it
is almost impossible to restore the structure of the message [22-24].</p>
      <p>Due to the large scale of contact centers used by hundreds of thousands of
companies around the world, a large number of routine operations increasingly being are
handed over to artificial intelligence: chat bots are used to answer frequently asked
questions (according to the FAQ, but with the understanding of language and user
requests) [25]. All this allows you to significantly reduce the cost of staff, as well as
increase the bandwidth of operators without increasing state. The usual world has
become even more comfortable when an assistant Alexa came up, who can turn on
your favorite music, find and tell news, order products home or taxi. This is the first
mass-market device in the US market that recognizes language at a high-quality level,
even if there is a strong external noise. Voice assistants, such as Google Assistant
from Google or Siri from Apple, interpret the voice message in a text and execute
commands upon request [26]. Topical chat bots do a number of things [27-34]:
 People spend a lot of time typing in messengers that quickly develops this segment
on the app market, they use them not only for friendly correspondence, but also for
the benefit of business development;
 Rapid development of technologies of artificial intelligence, machine learning
allows modern chat bots to maximally approximate their behavior to human;
 Modern chat bots rely not only on text but also on displaying media, links, and
forms, creating an atmosphere of application use.</p>
      <p>All of this allows you to use them for very different purposes, such as shopping
assistance, back services, news, etc. A good bot should not have everything; the best
solution when it is created to give it the ability to perform a certain action very well. You
do not have to try to please everyone, it is best to focus on specific functionality,
topics and audiences. Typically, chat bots are hybrid systems that combine machine
learning models, classic algorithms, and a set of rules. The structure of the chat bot in
Fig. 1 is depicted.</p>
    </sec>
    <sec id="sec-3">
      <title>Analysis of known problem solving tools</title>
      <p>Consider the following chat bots in the clothing e-commerce segment Nike StyleBot,
eBay ShopBot, H &amp; M bot for Kik, chatShopper, Masha.ai. Nike StyleBot in
Facebook Messenger gives users the ability to create outfits; they can create their own
style or sneakers. It is possible to get a great set of styles for sports, work and much
more. If the user likes the outfit, he can find out more on the official site Nike. The
disadvantage is that the bot focuses only on women, since all the pictures are only
female models for those looking for men's things; they can only use the official site
(Fig. 2).
 A large range of new styles;
 Design and navigation;
 Creation of your own sneakers.</p>
      <p>Disadvantages:
 The user will only associate with one brand;
 Clothes sets can only be picked up by women;
 The bot is only available on Facebook Messenger.
eBay ShopBot is a personal sales assistant whose purpose is to help the user find the
best deals regardless of whether he is looking for something specific or just looking at
new ideas (Fig. 3). Its feature is delivering the best eBay inventory to the user with a
focus on products, fast and free shipping and special offers. The advantages of the bot
include the fact that the user can use text, language or photos to tell what he is looking
for. Also, from the best sides you can select a user-friendly design. The disadvantage
is the connection to one service, as well as the presence of a chat bot on only one
platform.
H &amp; M Kik Bot is chat bot for Kik messenger (Fig. 4). It provides an opportunity to
find a set of clothing for a user with respect to his own preferences. Its features
include the availability of good communicative skills sufficient for the user to have the
impression that he communicates with the real person. Advantages:
 Convenient navigation;
 The ability to choose a style;
Disadvantages:
 Available in Kik, a narrowly distributed messenger;
 Low level of speech recognition.
chatShopper is Emma's personal assistant for finding fashionable fashion clothes in
Facebook Messenger (Fig. 5a). It was nominated for the position of one of the best
chat bots in 2016. The peculiarity of this bot is the high level of recognition of the
user's language, which increases the chance of conversion. Emma's personal assistant
is distinguished by the interactivity and the ability to conduct a dialogue with the user.</p>
      <p>Among the advantages is the possibility to search from various retailers (no
binding to a particular store), as well as the availability of convenient navigation.</p>
      <p>This chat bot has some minor disadvantages, including:
 Average level of speech recognition;
 Support only German and English;
 Only a few requests filtering functions.</p>
      <p>a)</p>
      <p>b)
Masha.ai is a personal text assistant for making purchases in more than 400 brands
(Fig. 5b). The feature of this chat bot is the use of AI. In addition to the fact that the
chat bot is present in Facebook Messenger, there is an individual chat site application,
as well as the ability to integrate into Alexa and Google Assistant. Advantages:
 Large number of choices;
 Convenient navigation;
 Interactivity;
 The possibility of narrow-directed search.</p>
      <p>Disadvantages:
 User is limited in communication;
 Low level of speech recognition.</p>
    </sec>
    <sec id="sec-4">
      <title>Functionality of the software system</title>
      <p>Functionality of system that you need to design:
1. Filling the user's speech recognition system with basic possible keywords (brand
name, color, size) that will be used for recognition;
2. Interactivity - helping the user to use the provided chat bot functionality;
3. The ability to recognize the user's language using natural language processing;
4. Providing a wide range of products to find the right amount of things, regardless
of the complexity of the search filter;
5. Interacting of the chat bot with the user with the help of small-talk;
6. Authentication authorization - the user may authorize the system and be
recognized in subsequent sessions;
7. Separated architecture for possible further integration of other messengers;
8. Availability of at least two online stores in the database as resources for finding
products that meet the requirements;
9. Creation of an admin-panel for managing the chat bot and configuration changes;
10. Providing an intuitive user interface;
11. Informing the user about relevant products through the notification system;
12. Application Program Interface (API) for communication with systems;
13. The use of artificial intelligence - the use of methods and algorithms that allow
the computer to make conclusions and proposals based on computing by special
methods and programs;
14. Processing of existing information in databases;
15. Datamining (Duplication of data) is ensuring the detection of data in previously
unknown, non-trivial, practically useful and accessible for interpretation of
knowledge in large arrays.
16. Machine Learning of the system during communication with the user;
17. Ensuring the possibility of processing requests with incomplete information and,
if necessary, making certain clarifications;
18. The possibility of a chat bot to process user requests that contain language or
typographical errors.
The most obvious area of natural language processing can be called machine
interpreters, chat bots and voice assistants. The chat bot will calmly handle the user's
requests, even with possible errors in the text, depending on the degree of learning with
the help of NLP. The difficulty of creating a chat bot correlates with the atypical
interaction of the user with it. Even considering the high-level NLP chat bots
architecture, one can conclude that the development of its own specialized chat bot may
require research and solving quite complex tasks. It depends largely on how the bot
perform complex and specialized tasks and how the user formulates them.
5</p>
    </sec>
    <sec id="sec-5">
      <title>System analysis and reasoning of the problem</title>
      <p>System analysis (SA) is aimed at solving complex problems. The problem arises
when there is a distinction between the desired and the actual that is, an abstract
category that reflects the understanding of people's motives in their activities. Problems
are generated and solved by people, and therefore the concept of "problem" has
human features of perception, which gives rise to the following difficulties:
 Uncertainty about understanding the problem;
 The complexity of problem solving in the long-term perspective;
 The difficulty of classifying problems and, as a consequence, the choice of
inadequate means of solving them;
 Distorted evaluation of problems (close, but small problems obscure large but
remote);
 Incorrect assessment of the significance of problems due to the narrow professional
aspect;
 Mixing the goals are achieved with the means to achieve them.</p>
      <p>The purpose of applying the SA to a particular problem is to increase the degree of
validity of the decision that is taken and to overcome the above difficulties.</p>
      <p>For SA, the following methodological principles are important:
 Organic unity of subjective and objective;
 The structure of the system, which determines the integrity and stability of the
characteristics of the system;
 Dynamism of the system;
 Interdisciplinary nature of systemic research;
 Organic unity of formal and informal.</p>
      <p>Information system is a collection of information resources, technical means, and
methods of information processing. The result of the work of the information system
are:
 Storage of information;
 Data processing;
 Issuance of information.</p>
      <p>The information model of the software error tracking system, which should become
the basis for the functioning of the system, must record the value of the characteristics
of the system and objects of observation. Because of this, the model should have the
following characteristics:
 Perform the decomposition of entities;
 Keep the states of the object relative to time;
 Remove the object from the priority state.</p>
      <p>At the first stage of the system creation, there should be a definition of the problem.</p>
      <p>It is necessary to correctly and accurately formulate problems. To this end, a large
problem is subjected to decomposition (breaking one problem into several smaller
ones). The objects of information include:
 Users;
 Developed systems;
 Control of defect states.</p>
      <p>The purpose of the system development is to create a chat bot and interactive
elements for the information system of the formation of the list of clothes according to
the user's request. All system tasks can be divided into the following groups:
 Filling in information about the user;
 Conversation with the user;
 Obtaining the necessary information from the user's language for the issuance of a
relevant result.</p>
      <p>When creating a new information system, attention should be paid to all aspects that
affect the realization of this task. In general, the following aspects can be
distinguished:
 Hardware support;
 Software;
 Custom aspects;
 Economic aspects.</p>
      <p>Each aspect must be thoroughly checked. This is necessary for the adequate and
proper functioning of the system. The work of each system should be aimed at achieving
its goal. Understanding the purpose helps to understand the essence of the systems
being studied. Formulating a goal is a complex logical operation that is implemented
within the SA. The arbitrariness in the process of allocating subsystems implemented
in the system can lead to the failure of a systematic study. First, for the system, you
need to create a configuration file that allows you to manage flexibly the entire
service, for example, to change the data to access the database. The next step should be
to select and connect the system to handle the natural language of the user and select
the messenger that serves as the ecosystem for the chat bot.</p>
      <p>In addition, we must not forget that any system should be convenient for our users,
because each system created should be convenient first for it. An important factor is
the efficiency and speed of the system, which is determined in the rapid development
of the search for the most complex and critical errors.
5.1</p>
    </sec>
    <sec id="sec-6">
      <title>Tree of Goals</title>
      <p>Tree of Goals represents a definite visual representation of the relationship and
sequence of goals representing the division of the mission and the main purpose of the
task by subdivision or individual actions (Fig. 6).
 Ensuring the availability of documentation will allow you to easily and
conveniently receive a prompt to the user in a particular situation related to the work or
configuration of the service.
 Ensuring the availability of a way to conveniently manage service capabilities in
this task involves creating an appropriate system that is easy to manage. The
convenient way provides for the possibility of quick access to the chat-bot, the
opportunity to take advantage of the features of the service at a time and the possibility
of using a user-friendly messenger.</p>
      <p>High-level language recognition target: Ensuring the availability of the service for
recognizing the user's natural language. The service should is filled with information
and "trained" in order for the system to give the user a relevant result. The purpose of
the adequacy of the service is one goal, which directly relates to the actual mechanism
of service. It is ensuring the uninterrupted operation of the service and expediency of
user interaction, with the system and will make this system competitive and useful in
use.
5.2</p>
    </sec>
    <sec id="sec-7">
      <title>Specifying the functioning of the system</title>
      <p>Data Flow Diagrams (DFDs) are the main means of modeling the functional
requirements of future software. With their help, these requirements are divided into
functional components (processes) and are presented as a network linked by data flows.
The main purpose of such tools is to demonstrate how each process converts its input
data on the output, as well as to identify the relationship between these processes.</p>
      <p>When using this model, the system is represented in the form of a hierarchy of data
flow diagrams that describe the asynchronous process of transforming information
from the moment it is introduced into the system before being issued to the user. At
each subsequent level of the hierarchy, the refinement of processes takes place until
the next process is recognized as elementary. Models of data flows were
independently proposed initially by E. Jordan (1975), then by C. Hayn and T. Sarson (1979).
Based on these models, the classical methodologies of structural analysis and
software design are based on the Jordan-de Mark and Guyana-Sarson software
respectively.</p>
      <p>The basis of the model are the notion of external nature, process, storage (data
storage) and data flow. External entity is a material object or an individual acting as
sources or receivers of information, such as customers, staff, etc.</p>
      <p>The process is the transformation of input data streams into outputs according to a
certain algorithm. Each process in the system has its own number and is associated
with the executor that makes the transformation. As in the case of functional
diagrams, physically computers can do conversion, by hand or by special devices. On the
upper levels of the hierarchy, when processes are not yet defined, instead of the
notion of "process" use the notion of "system" and "subsystem", which denote
respectively the system as a whole or its functionally completed part. Data warehouse is an
abstract device for storing information. The type of device and methods of placement,
deletion, and storage for such a device do not detail. Physically it can be a database, a
file, a table in RAM, a card file on paper, and the like. Data stream is the process of
transmitting some information from source to receiver. Physically, the process of
transmitting information can occur on cables running an application or program
system or manually involving devices or people outside the projected system.
Figure 7 depicts a context diagram of data streams that describes Sub target 4.2 from
the target tree, namely, "Ensuring the user's interaction with the system." From this
diagram, one can determine that a user communicates with the system through a chat
bot, fills in information about himself and sends search requests to the system (Fig. 8).</p>
    </sec>
    <sec id="sec-8">
      <title>Building a hierarchy of processes (functions, tasks)</title>
      <p>Process 4.1 is "Generate data for search" (input: "data from the query"; output: "data
for the search"). Process 4.2 is "Prepare Search Query" (input: "data to search";
output: "query"). Process 4.3 is "Send request and determine transaction status" (input:
"request"; output: "status" (generated response from the server)). Drive 2 is "Service
for the processing of natural language" (input: "user request"; output: "data from the
query" (generated data)). Drive 3 is "The system that generates a list of
recommendations" (input: "status"; initial data: "list" (formed list of recommendations)).</p>
      <p>Process 5.1 is "Process List" (input: "list of recommendations"; output: "list"). Process
5.2 is "Send the generated list to the user" (input: "list"; output: "result").</p>
      <p>During the implementation of this section, a comparison is made between the design
of the systems, the objectives tree was constructed, and a detailed description of the
system and its processes is made.</p>
    </sec>
    <sec id="sec-9">
      <title>Choice and justification of the means to solve the problem</title>
      <p>The most important goal of the system under development was to provide the user
with the desired information in a convenient way, using methods of processing natural
language. Therefore, the main issues for solving problems were:
1. Method of natural language processing;
2. How to communicate with the chat bot;
3. How to get information to display the results to the user.</p>
      <p>Method of natural language processing:
1. The user enters a message;
2. The system verifies whether the message satisfies the conditions for internal
processing;
3. If the internal processing failed, the program sends the request to the DialogFlow</p>
      <p>API;
4. The system receives the DialogFlow API response in the JSON format for further
output of the result.</p>
      <p>How to communicate with a chat engine:
1. Since the implementation of the bot is carried out in the telegram messenger,
respectively, the communication system will be conducted using the Telegram API;
2. Using the API, the system receives the message and sends the necessary data to the
next step;
3. The system receives the processing result and sends a message to the user.
Method of delivering information to display results to the user:
1. The system has a list of stores and clothing suppliers and other fashionable
products;
2. For each item in the list there is an algorithm implemented for obtaining results
with the support of the filter;
3. System services communicate with each other by sending a request, filtering and
receiving the result.</p>
      <p>After describing the main issues to solve the problems of the system implementation,
you can start choosing the technologies for development selected software
development tools.
7
7.1</p>
    </sec>
    <sec id="sec-10">
      <title>Specifications of selected software development tools</title>
    </sec>
    <sec id="sec-11">
      <title>Java programming language and Spring Boot framework</title>
      <p>Before starting to work on the project, the choice of programming language fell on
Java, considering that Telegram has already been created for this language API,
which has accelerated the development process. Java is an object-oriented
programming language with its own specification, as well as application development
technology. One of the biggest advantages of Java is the independence of the platform
(processor). The basis of Java technology is a byte code, that is, the program is not
stored in machine codes, but in a special code independent of the platforms. In order
for this code to be executed on a specific processor, there is a special virtual
javamachine JVM. It's just a special program that translates the byte code into the
machine code for a particular processor.</p>
      <p>Java Advantages:
 Multiplatform is byte code generated by the Java machine is interpreted by the
Java Virtual Machine (JVM), which allows you to use the program regardless of
the platform of a particular machine;
 Portability is architectural neutrality and lack of dependencies on the
implementation of aspects of specifications;
 Simplicity is in understanding the basic concepts of object-oriented programming,
the language will be easy to learn;
 Multithreading is the ability to create programs that will perform a large number of
tasks simultaneously.
 Dynamism is Java programming has greater dynamism, compared with others,
because it is designed to adapt to changing conditions.</p>
      <p>Spring is one of the most popular frameworks for creating applications in the Java
language. It is versatile and provides a solution to a large number of tasks encountered
by Java developers that create a specific information system. Spring can be viewed as
a collection of small frameworks in one framework that can work independently, but
they provide greater functionality when combined.</p>
      <p>Spring is based on the Inversion of Control (IoC) design template, the main idea of
which is to eliminate the dependencies of the components or classes of applications
from the specific implementations of auxiliary interfaces and delegate the authority to
manage the creation of the necessary implementations of the IoC container.</p>
      <p>Main advantages of IoC containers:
 dependency management;
 facilitating the reuse of classes and components;
 simplification of unit testing;
 writing more "clean" code.</p>
      <p>The most common type of Inversion of Control is Dependency injection. It helps to
provide the object with other objects that it needs, instead of creating them
independently. This approach is very useful for testing, since it allows you to model
dependencies or make stubs. Dependencies can be introduced in many ways, for
example using a constructor or setter-methods.</p>
      <p>Spring container is the foundation of the Spring Framework. It creates, connects,
configures and manages objects, during their entire life cycle from creation to
destruction. The Spring container uses an add-on injection to control the components that
make up the application. Objects created in the container are called Spring Beans.</p>
      <p>The container receives instructions on which objects to create, read, and configure
by reading the configuration metadata. Metadata can be presented as XML, file
properties, Java annotations or Java code. The Spring container uses Java classes and
configuration metadata to create a fully configured and executable system or application.
7.2</p>
    </sec>
    <sec id="sec-12">
      <title>Development environment of IntelliJ IDEA</title>
      <p>IntelliJ IDEA is a commercial integrated development environment for various
programming languages (Java, Python, Scala, PHP, etc.) from JetBrains. The system
comes in the form of a truncated version of the "Community Edition" and the
fullfeatured commercial version of "Ultimate Edition", for which active open source
project developers have the opportunity to get a free license. IntelliJ IDEA is one of the
most powerful and popular Integrated Development Environment (IDE) for Java.</p>
      <p>IntelliJ IDEA has several high-performance features to complete the Java code. Its
prediction algorithm can precisely assume that a programmer tries to enter, and
completes it for him, even if he does not know the exact name of a particular class,
member, or any other resource. Advantages of this development environment:
 IntelliJ IDEA really understands and understands deeply the written code, as well
as the context of the program;
 smart code completion - supports the completion of the context code, the ability to
list the most appropriate characters used in the current context;
 detection of duplicates - finds duplicate code snippets on the fly and gives
notifications / suggestions to the user;
 Inspections and quick fixes - every time the environment detects an error, it reports
the user.</p>
      <p>IntelliJ IDEA is developed around the principle that developers should be given the
opportunity to write code with as little distraction, so a large number of auxiliary tools
are integrated into the environment. This toolkit includes version control (Git, SVN,
etc.), project development tools (Maven, Gradle, Ant, etc.), testing tools, decompiler,
terminal, database communication tools, application servers (Tomcat, WebLogic,
GlassFish).
7.3</p>
    </sec>
    <sec id="sec-13">
      <title>Tool for natural language processing DialogFlow</title>
      <p>Dialogflow (formerly Api.ai, Speaktoit) is a technology of human-computer
interaction based on spoken languages. The company is known for creating a virtual
assistant for smartphones Android, iOS and Windows Phone, which performs tasks and
answers the questions of users in the natural language. Voice and spoken interfaces
created with Dialogflow work with a wide range of devices, including phones, cars
and other smart devices. It supports 14 languages, including Brazilian Portuguese,
Chinese, English, Dutch, French, German, Italian, Japanese, Korean, Portuguese,
Russian, Spanish and Ukrainian. Dialogflow supports a range of services related to
the entertainment and hospitality industry. Dialogflow also includes an analysis tool
that can measure interaction or session metrics, such as usage patterns, delay issues,
etc.
The conditions for the organization of one-to-many and many-to-many relationship
between classes are supported. Hibernate supports displaying the types of
eigenvalues. This makes possible the following scenarios:
 redefining the type in the SQL table by default when comparing a column with a
property;
 mapping a separate property into several columns.
7.5</p>
    </sec>
    <sec id="sec-14">
      <title>Telegram API</title>
      <p>Telegram has fully opened the client code. The Telegram architecture implies that
both Bot and API have practically the same methods
https://core.telegram.org/methods. In fact, Telegram represents not just a chat
messenger, but also a social platform, access to which is open to various applications.
They can provide additional privileges to users, instead using a ready-made network
of users and a server for delivering messages. Also in the open space, there is a
project to facilitate the use of the Telegram API using the Java language
https://github.com/rubenlagus/TelegramBots. This library allows the developer to
easily use all available chat management methods in Telegram Messenger.
Used tools for developing a web-based information system for chat rooms using NLP:
 programming language - Java using the Spring framework;
 development environment - IntelliJ IDEA;
 system for natural language recognition - DialogFlow;
 database management system - MySQL using rendering using MySQL
Workbench;
 connection of the system with a chat bot - Telegram API.
8
8.1</p>
    </sec>
    <sec id="sec-15">
      <title>Software to solve the problem</title>
    </sec>
    <sec id="sec-16">
      <title>Description of the created software</title>
      <p>The purpose of the created software product is the implementation of a web
application that will receive messages from the chat bot and depending on the content of the
request to give the user the desired result. The developed program for the formation of
the list of recommendations fashion image of clothing is called CloBot. The bot itself
is not part of the system created; it works on the Telegram side and only sends queries
to the web application. The system is designed to diversify the purchase of clothing
on the Internet. As already mentioned, the chat bot itself can not replace the purpose
of an online store, but can diversify the way of communication with the client, which
can lead to increased sales and increase interactivity. The program consists of three
parts:
 communication with the web-based chat-bot;
 communication of the web application with the system of recognition of natural
language;
 the system of formation of the result.</p>
      <p>This program does its work only with one type of user - the user of the chat-bot, the
person who started the chat. User functionality:
 starts a conversation with the bot;
 sends a message;
 when successful processing of messages, receives a meaningful result in response;
 establishes information about himself;
 view items that are issued by the bot in response to requests.</p>
      <p>Fig. 13. System architecture
When creating a Web application, the interface interfaces and their implementation
were carried out in order to further cover the Unit-tests. Since the project created is
Maven-specific, the following libraries were Spring: Web, AOP, Data JPA.
Additionally, auxiliary libraries and utilities were added, a complete list of which can be seen
in Fig. 14.
Maven is a compilation automation tool that is used mainly for Java projects.</p>
      <p>Maven addresses two aspects of software development: first, he describes how
software is created, and, secondly, describes his dependencies. Unlike previous tools,
such as Apache Ant, it uses the conditions for the build procedure, and only
exceptions should be recorded. The XML file (pom.xml) describes the project being built;
its dependence on other external modules and components, the order of compilation,
directories and necessary plug-ins. Maven dynamically loads Java libraries and
Maven modules from one or more repositories, such as Maven's central repository, and
saves them in the local cache. In this project, there is no need for a large database,
since most of the information about the user is kept directly in the messengers. User
account data is stored in DialogFlow, to avoid more confusion, only one table was
created - user preferences using Hibernate, the model class can be seen in Fig. 15a.
Due to the connection of the database, it was necessary to further describe the
configuration of the Spring Boot framework as on Fig. 15b.</p>
      <p>Thanks to this configuration, the web application receives full access to the
MySQL database, and the spring.jpa.hibernate.ddl-auto = update property emphasizes
that when the program is launched, a database will be created from existing models.
Here is how the UserSettings table looks like by posting an object-relational map:
a)</p>
      <p>b)
Telegram's bots look like ordinary users with the only difference that their names
have the ending "Bot," and the user can start a dialogue with them with the / start
command. Since the web application uses Spring Boot, a
ClothesbotServiceApplication class is created that will run the program. Launching the program is
comprehensive: the context is raised, filled with Java Beans, the database is created and all the
services and necessary resources are debugged on embedded tomcat server, which is
embedded in the framework.
a)</p>
      <p>b)
Fig. 17. a) A created chat bot and b) class ClothesbotServiceApplication with the main method
The ClothesbotServiceApplication initializes the BotContext bin with the
@Autowired annotation, the contents of this class are shown in Fig. 18, it provides
the creation of a chat bot in the context. Now if you have a chat bot, you need to
initialize it in the code of the program. Spring supports the ability to create an entire
component - this means that the object responsible for the bot operation will be
initialized only once during the lifetime of the web application. This will allow you to
receive messages without interruption from all users of the system.
a)</p>
      <p>b)</p>
      <p>Fig. 18. a) BotContext class and b) basic initialization of the chat-bot class
To transfer data between services, it is necessary to announce several POJO (Plain
Old Java Object). Including:
 • Item is information about the resultant item;
 • Query is information about the user's request;
 • UserSex is the listed data type, used to determine user statistics, in UserSettings.</p>
      <p>Fig. 19. Declared POJO classes
Before you start publishing a particular result to a user, you need to do two things: run
the system to process queries and write a service to find the result.</p>
      <p>The DialogFlow system was chosen for query processing, it allows you to parse the
request and find out if it has the necessary information.</p>
      <p>Dialogflow uses intentions to categorize user intentions. Intents have Training
phrases, which are examples of what the user can say to the agent. For example, a
user might say "Adidas shoes", "I need a pair of Adidas shoes", or just say "Adidas
shoes". All these inquiries are unique, but have the same intention: to find the Adidas
sneakers.
Parameters, such as size, which describe the size of the sought-after clothing or shoes,
are added also to the intention. Parameters are important and relevant words or
phrases in the user's request that are extracted from it so that the agent can provide the
appropriate response. Now you need to add some training phrases. Dialogflow uses
training phrases as examples for a Machine Learning model to extract information
from inquiries using intents. The Machine Training model checks the request for each
agent's intention, gives each rating a rating, and selects the int for the highest score. If
the highest scoring score has a very low score, then the appropriate backup is
selected. To ensure better accuracy of phrases recognition, it is necessary to increase the list
of training phrases. The initial state of the system with a certain set of training phrases
is shown in Fig. 21.
DialogFlow also describes each parameter, which is called entity. These objects allow
you to display synonyms to the main value. For example, to name the brand 'new
balance' the user can write 'new balance' or 'nb', this is what is described at this stage.
The system will contact DialogFlow using the API for which the client library is
written in Java. You must take the service access key and configure the system to send
queries to the DialogFlow server.
Connection to the DialogFlow service is described in the DialogFlowConnector class.
The connection to the service opens to get started, as shown in Fig. 24.</p>
      <p>Fig. 24. Open a connection to the service
Already during work, the program uses a connection to get the result as a Query
object described above.</p>
      <p>Fig. 25. Sending a request to the DialogFlow side and getting the result
The system has two resources connected to the clothing that might be of interest to
users - Adidas and ASOS clothing stores. Due to the fact that ASOS has a large
number of products of different brands, it is possible to provide the user with a wide
choice.</p>
      <p>Communication with these stores takes place in the AsosItemService and
AdidasItemService classes, depending on the user's request, the
getItemsAccordingToUserSettings method calls one of these classes to get a list of things.</p>
      <p>Using jsoup, an html-page is processed from which the necessary data is extracted
to be displayed in the messenger chat-bot.</p>
    </sec>
    <sec id="sec-17">
      <title>Analysis of the control sample</title>
      <p>To start working with a bot in Telegram, you need to find it by the name @clothzbot.
The correspondence begins with the / start command, on which the user receives bot
information and the following instructions to get started.
After the bot has received the necessary information about the user, it is possible to
make a specific request.
If the user fails to request or it is not possible to remove any information from his
message, he will receive the message as pictured in Fig. 29.
First of all, the user needs to install Telegram on any available device: mobile phone
or personal computer. Then in the search box you must enter the name of the chat bot
- @clothzbot and select the bot named CloBot from the list as shown in Fig. 30.
In the chat that opens the chat starts with the / start command. The user provides the
bot with information about himself and can continue to send requests for example:
 I'm looking for black nike shoes.
 I need Air Jordan t-short size M.</p>
    </sec>
    <sec id="sec-18">
      <title>Conclusions</title>
      <p>In this work the basic functions for the information system of forming the list of
recommendations of the fashion style clothes according to the needs of the user using the
NLP and chat bots are developed. The debuted software provides users with another
way to search and select branded things in their own messenger, which in some cases
can help increase sales to businesses as additional verticals.</p>
      <p>Characteristics of the created system:
 An application that operates around the clock, if it is running on the server;
 Narrow selection of results;
 The ability to study the system for better recognition of phrases.</p>
      <p>The system in the Java programming language is created. The use of natural language
processing has increased the level of recognition of the user's language. The
architecture of the system is constructed in such a way that the developer in the future can
expand the functionality and create test cases. Expansion options include the addition
of support for a new messenger such as Facebook Messenger or Viber - it is enough
to describe the functionality using the APIs available for this. It is also possible to
expand the range by adding support for new online stores and brands. This system is
functionally complete - it can perform the tasks and can have practical application. In
the future, the system can be improved and expanded to realize a larger range of tasks.</p>
      <p>
        However, the chat bot is smarter and their capabilities grow, while online chat
shops are usually an add-on that performs certain functions. There are no full-fledged
online chats, which represent American or European companies. Although in the
Chinese market, most entrepreneurs are engaged in Internet sales through the application
for messaging WeChat exactly where the common chat bots are. The reason that chat
bots can not replace sites or add-ons for online stores is the ability to design - some
important functions are difficult to adequately migrate to the chat.
grate and generate content considering the cryptocurrent needs of users. In:
EasternEuropean Journal of Enterprise Technologies 1(
        <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13 ref14 ref15 ref16 ref17 ref18 ref19 ref2 ref20 ref21 ref22 ref23 ref24 ref3 ref4 ref5 ref6 ref7 ref8 ref9">2-97</xref>
        ), 18-39 (2019)
25. Lytvyn, V., Kuchkovskiy, V., Vysotska, V., Markiv, O., Pabyrivskyy, V.: Architecture of
system for content integration and formation based on cryptographic consumer needs. In:
Computer Sciences and Information Technologies, CSIT, 391-395 (2018)
26. Lytvyn, V., Vysotska, V., Demchuk, A., Demkiv, I., Ukhanska, O., Hladun, V.,
Kovalchuk, R., Petruchenko, O., Dzyubyk, L., Sokulska, N.: Design of the architecture of an
intelligent system for distributing commercial content in the internet space based on
SEOtechnologies, neural networks, and Machine Learning. In: Eastern-European Journal of
Enterprise Technologies, 2(
        <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13 ref14 ref15 ref16 ref17 ref18 ref19 ref2 ref20 ref21 ref22 ref23 ref24 ref3 ref4 ref5 ref6 ref7 ref8 ref9">2-98</xref>
        ), 15-34. (2019)
27. Veres, O., Rishnyak, I., Rishniak, H.: Application of Methods of Machine Learning for the
Recognition of Mathematical Expressions. In: CEUR Workshop Proceedings, Vol- 2362,
378-389. (2019)
28. Lytvyn, V., Vysotska, V., Rusyn, B., Pohreliuk, L., Berezin, P., Naum O.: Textual Content
Categorizing Technology Development Based on Ontology. In: CEUR Workshop
Proceedings, Vol-2386, 234-254. (2019)
29. Lytvyn, V., Vysotska, V., Dosyn, D., Lozynska, O., Oborska, O.: Methods of Building
Intelligent Decision Support Systems Based on Adaptive Ontology. In: International
Conference on Data Stream Mining and Processing, DSMP 2018, 145-150 (2018)
30. Basyuk, T.: The main reasons of attendance falling of internet resource. In: Proc. of the
Xth Int. Conf. Computer Science and Information Technologies, CSIT’2015, 91-93. (2015).
31. Lytvyn, V., Vysotska, V., Rzheuskyi, A.: Technology for the Psychological Portraits
Formation of Social Networks Users for the IT Specialists Recruitment Based on Big Five,
NLP and Big Data Analysis. In: CEUR Workshop Proceedings, 2392, 147-171. (2019)
32. Vysotska, V., Burov, Y., Lytvyn, V., Oleshek, O.: Automated Monitoring of Changes in
Web Resources. In: Lecture Notes in Computational Intelligence and Decision Making,
1020, 348–363. (2020)
33. Demchuk, A., Lytvyn, V., Vysotska, V., Dilai, M.: Methods and Means of Web Content
Personalization for Commercial Information Products Distribution. In: Lecture Notes in
Computational Intelligence and Decision Making, 1020, 332–347. (2020)
34. Vysotska, V., Mykhailyshyn, V., Rzheuskyi, A., Semianchuk, S.: System Development for
Video Stream Data Analyzing. In: In: Lecture Notes in Computational Intelligence and
Decision Making, 1020, 315-331. (2020)
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Iturrioz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Azpeitia</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Díaz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Generalizing the like button: empowering websites with monitoring capabilities</article-title>
          .
          <source>In: Proceedings of the 29th Annual ACM Symposium on Applied Computing</source>
          ,
          <volume>743</volume>
          -
          <fpage>750</fpage>
          . (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Maggi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robertson</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kruegel</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vigna</surname>
          </string-name>
          , G.:
          <article-title>Protecting a moving target: Addressing web application concept drift</article-title>
          .
          <source>In: International Workshop on Recent Advances in Intrusion Detection</source>
          , Springer, Berlin, Heidelberg,
          <fpage>21</fpage>
          -
          <lpage>40</lpage>
          . (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>3. Spring Boot Reference Guide / Spring - 2017. https://docs.spring.io/springboot/docs/current/reference/htmlsingle/</mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Craig</surname>
          </string-name>
          Walls - Spring in Action,
          <source>Fourth Edition</source>
          ,
          <year>2017</year>
          624 p.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Pawlak</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          :
          <article-title>Rough sets: Theoretical aspects of reasoning about data</article-title>
          .
          <source>In: Springer Science &amp; Business Media</source>
          ,
          <volume>9</volume>
          . (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Eckel</surname>
          </string-name>
          , Bruce. Thinking in Java / Bruce Eckel.-4th ed.,
          <year>2006</year>
          1079 p.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Taming</given-names>
            <surname>Text</surname>
          </string-name>
          : How to Find, Organise, and Manipulate it / Andrew L. Farris, Grant S. Ingersoll, Thomas S. Morton;
          <year>2013</year>
          , 320 p.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Christensen</surname>
            ,
            <given-names>J. H.</given-names>
          </string-name>
          :
          <article-title>Using RESTful web-services and cloud computing to create next generation mobile applications</article-title>
          .
          <source>In: the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications</source>
          ,
          <volume>627</volume>
          -
          <fpage>634</fpage>
          . (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Neugschwandtner</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Neugschwandtner</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kastner</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Web services in building automation: Mapping knx to obix</article-title>
          .
          <source>In: Int. Conf. on Industrial Informatics</source>
          ,
          <fpage>87</fpage>
          -
          <lpage>92</lpage>
          . (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Tkachenko</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Izonin</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kryvinska</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chopyak</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lotoshynska</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Danylyuk</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Piecewise-linear Approach for Medical Insurance Costs Prediction using SGTM NeuralLike Structure</article-title>
          .
          <source>In: CEUR Workshop Proceedings</source>
          ,
          <fpage>170</fpage>
          -
          <lpage>179</lpage>
          . (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Tepla</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Izonin</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Duriagina</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tkachenko</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , Trostianchyn, А.,
          <string-name>
            <surname>Lemishka</surname>
          </string-name>
          , І.,
          <string-name>
            <surname>Kulyk</surname>
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kovbasyuk</surname>
          </string-name>
          , Т.:
          <article-title>Alloys selection based on the supervised learning technique for design of biocompatible medical materials</article-title>
          .
          <source>In: Archives of Materials Science and Engineering</source>
          ,
          <volume>93</volume>
          /1,
          <fpage>32</fpage>
          -
          <lpage>40</lpage>
          . (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burov</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gozhyj</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Makara</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>The consolidated information web-resource about pharmacy networks in city</article-title>
          .
          <source>In: CEUR Workshop Proceedings</source>
          ,
          <fpage>239</fpage>
          -
          <lpage>255</lpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Zdebskyi</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peleshchak</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peleshchak</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Demchuk</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krylyshyn</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>An Application Development for Recognizing of View in Order to Control the Mouse Pointer</article-title>
          .
          <source>In: CEUR Workshop Proceedings</source>
          , Vol-
          <volume>2386</volume>
          ,
          <fpage>55</fpage>
          -
          <lpage>74</lpage>
          . (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Rusyn</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Emmerich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pohreliuk</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>The Virtual Library System Design and Development</article-title>
          ,
          <source>Advances in Intelligent Systems and Computing</source>
          ,
          <volume>871</volume>
          ,
          <fpage>328</fpage>
          -
          <lpage>349</lpage>
          (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Rusyn</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lutsyk</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lysak</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lukeniuk</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pohreliuk</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Lossless Image Compression in the Remote Sensing Applications</article-title>
          .
          <source>In: Int. Conf. on Data Stream Mining &amp; Processing (DSMP)</source>
          ,
          <fpage>195</fpage>
          -
          <lpage>198</lpage>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Emmerich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yevseyeva</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fernandes</surname>
            ,
            <given-names>V. B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dosyn</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Preface: Modern Machine Learning Technologies and Data Science (MoMLeT&amp;DS2019)</article-title>
          .
          <source>In: CEUR Workshop Proceedings</source>
          , Vol-
          <volume>2386</volume>
          . (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Rusyn</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pohreliuk</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Model and architecture for virtual library information system</article-title>
          .
          <source>In: Computer Sciences and Information Technologies</source>
          , CSIT,
          <fpage>37</fpage>
          -
          <lpage>41</lpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burov</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Demchuk</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Defining Author's Style for Plagiarism Detection in Academic Environment</article-title>
          ,
          <source>Proceedings of the 2018 IEEE 2nd International Conference on Data Stream Mining and Processing</source>
          ,
          <string-name>
            <surname>DSMP</surname>
          </string-name>
          <year>2018</year>
          ,
          <volume>128</volume>
          -
          <fpage>133</fpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peleshchak</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peleshchak</surname>
          </string-name>
          , R.:
          <article-title>Satellite spectral information recognition based on the synthesis of modified dynamic neural networks and holographic data processing techniques</article-title>
          .
          <source>In: International Scientific and Technical Conference on Computer Sciences and Information Technologies (CSIT)</source>
          ,
          <fpage>330</fpage>
          -
          <lpage>334</lpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Su</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sachenko</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dosyn</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Model of Touristic Information Resources Integration According to User Needs</article-title>
          .
          <source>In: International Scientific and Technical Conference on Computer Sciences and Information Technologies</source>
          ,
          <fpage>113</fpage>
          -
          <lpage>116</lpage>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sharonova</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hamon</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cherednichenko</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grabar</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>KowalskaStyczen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Preface: Computational Linguistics and Intelligent Systems (COLINS-</article-title>
          <year>2019</year>
          ).
          <source>In: CEUR Workshop Proceedings</source>
          , Vol-
          <volume>2362</volume>
          . (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Burov</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kravets</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Ontological Approach to Plot Analysis and Modeling</article-title>
          .
          <source>In: CEUR Workshop Proceedings</source>
          , Vol-
          <volume>2362</volume>
          ,
          <fpage>22</fpage>
          -
          <lpage>31</lpage>
          . (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burov</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Berezin</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Emmerich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Basto</surname>
          </string-name>
          Fernandes V.:
          <article-title>Development of Information System for Textual Content Categorizing Based on Ontology</article-title>
          .
          <source>In: CEUR Workshop Proceedings</source>
          , Vol-
          <volume>2362</volume>
          ,
          <fpage>53</fpage>
          -
          <lpage>70</lpage>
          . (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Lytvyn</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vysotska</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuchkovskiy</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bobyk</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Malanchuk</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ryshkovets</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pelekh</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brodyak</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bobrivetc</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Panasyuk</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Development of the system to inte-</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>