Modelling bot

View project on GitHub


Welcome to Modelling Bot Help, the bot’s name is Socio and you can work with it in Telegram and Twitter. First some tips to work with Socio:

Tool demo (Meta-modelling)

Project Planner Demo (Modelling)

Using our approach, we generate a Telegram chatbot called Project Planner to instantiate a project model using Natural Language. In this video, we show a brief interaction of two users with the bot.

How it works on Telegram

In Telegram you can add the bot in a group or talk with it in a single chat. Now let’s see how you must work with Socio. Telegram’s bots work with commands. A command starts with /. You can send only the command and the bot will ask you for the arguments if it is necesary, or you can send the command and arguments together.

First you must select a Project (/setproject) for a chat or make a new project (/newproject). Then you can write your sentences to create the model. In case you are in a group, the bot only can read mesages with a command, so you have the talk command (/talk) to talk with Socio.

You also have:

  • /projects: send you a photo with a list of all projects.
  • /get: send you a file with the model in ecore format.
  • /history: show you a picture with the project history
  • /undo: undo the last message
  • /redo: redo the last undo
  • /show: show you the project state in that moment.
  • /validate: validate the model.


  1. Write correctly: Socio may not understand you well if you make mistakes.
  2. If Socio can’t understand some noun you can put it with “” or with determinants.
  3. Usually Socio searchs synonyms and if an element of the model matches with the noun or some synonyms, it performs the actions on that element. In most cases, Socio doesn’t do that you want to do for this reason. In these cases, you can use the add command, that doesn’t search synonyms.
  4. If Socio didn’t understand well some sentences, you can undo the actions and try to say it with other sentence or divided.


Now let’s look the sentences you can use and how.

1. Add / Create / Make <Object>

These sentences add new objects to the models. In this case, Socio doesn’t search synonyms.

Create person.

Add work in person.

Add numeric age in person.

2. Remove / Erase <Object>

Erase numeric age from person.

Remove work from person.

Remove person.

3. <Object> to be <Object>

Packages can be bulky, heavy or fragile.

Students and teachers are persons.

Name of person is a text.
Person's name is a text.

The wife of a man is a woman.

4. <Object> have / be characterized by / be identified by / be recognized by <Object>

Bulky packages are characterized by their width, length and height.

Students have a numeric identifier.

Medicines have an active ingredient.

Person may has a work

5. <Object> contain / be made of / be made up of / be made from / be composed / include <Object>

The house is made of rooms.

Students contains a numeric identifier.

6. <Object> <verb> <Object>

Carriers can handle deliveries.

The student passed the exams.

The cheque is sent to the bank.