@startuml abstract class Bot class TelegramBot class TwitterBot Bot <|-- TelegramBot Bot <|-- TwitterBot class Gateway class MetaMetaPersistence class MetaPersistence package nlp { class "rasa-ai" class "drools" class "Google Cloud Speech API" class "Google Cloud Natural Language" class "Microsoft Azure Spracherkennungs-API" class "Microsoft Azure Textanalyse-API" "Google Cloud Speech API" -> "Google Cloud Natural Language" "Microsoft Azure Spracherkennungs-API" -> "Microsoft Azure Textanalyse-API" } Gateway -- nlp Bot "1..*" -- Gateway Gateway -- MetaMetaPersistence class Registry Gateway "1" -- "1" Registry Registry -- MetaPersistence abstract class Service class MensaService Service <|-- MensaService Service <|-- WetterService Registry "1" -- "*" Service @enduml