Skip to main content
Skip table of contents

Application layers and the Model Description Language


Model layers

We break enterprise applications design and implementation into the following layers:

  • Presentation
  • Business Model
  • Persistence
  • Security
  • Integration
  • Resources
  • Deployment

Model Description Language


Designs are declared in Models with the Model Description Language. It works well with source code control and large teams since it is just XML. It includes concepts for business logic, integration, persistence, presentation, security, testing, and deployment designs. The language is declarative - accelerating development by describing what the application will do, rather than how - and it fully documents the system design while reflecting exactly what is in production.

XML
<Class description="Agents are best described as NLU (Natural Language Understanding) modules determining intent and entities.">
   <Attributes>
      <Attribute name="name" type="string"/>
      <Attribute name="description" type="string"/>
      <Attribute name="type" type="string"/>
      <Attribute name="icon" type="string"/>
      <Attribute collection="true" name="intents" reverse="agent" type="bot:Intent"/>
      <Attribute name="clientToken" type="string" value="(@ nlpStrategy clientToken)"/>
      <Attribute name="devToken" type="string" value="(@ nlpStrategy developerToken)&#10;"/>
      <Attribute collection="true" name="conversations" reverse="agent" type="bot:Conversation"/>
      <Attribute name="nlpStrategy" reverse="agent" type="bot:NLP"/>
      <Attribute collection="true" name="sources" reverse="agent" type="bot:Source"/>
   </Attributes>
</Class>

A sample declaration of a Class element


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.