Design a Schema

Workbase allows the visualisation and design of a grakn schema.

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_btn.png)[body:end] [footer:start]We can access the schema designer by clicking the top left **schema desinger** icon.[footer:end] [slide:end]

Define New Entity Type

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-entity-btn.png)[body:end] [footer:start]We can use the left bar to define new entity type.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-entity-name-supertype.png)[body:end] [footer:start]We can specify the name of the entity and the super type.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-entity-has.png)[body:end] [footer:start]We can specifiy the attributes that the entity can have, given that the attribute type has already been defined.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-entity-plays.png)[body:end] [footer:start]We can specify the roles the entity type can play, given that the relationship for those roles have been defined.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-entity-submit.png)[body:end] [footer:start] Create the type by clikcing on **Submit**. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-entity-result.png)[body:end] [footer:start] [footer:end] [slide:end]

Define New Attribute Type

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-attribute-btn.png)[body:end] [footer:start]We can use the left bar to deine new attribute type.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-attribute-name-datatype.png)[body:end] [footer:start]We can specify the name of the attribute and the data type.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-attribute-has.png)[body:end] [footer:start]We can specifiy the attributes that the attribute can have, given that the attribute type has already been defined. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-attribute-plays.png)[body:end] [footer:start]We can specify the roles the attribute type can play, given that the relationship for those roles have been defined. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-attribute-submit.png)[body:end] [footer:start] Create the type by clikcing on **Submit**. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-attribute-result.png)[body:end] [footer:start] [footer:end] [slide:end]

Define New Relationship Type

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-relation-btn.png)[body:end] [footer:start]We can use the left bar to deine new relationship type.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-relation-name-supertype.png)[body:end] [footer:start]We can specify the name of the relationship, the super type and the role players.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-relation-has.png)[body:end] [footer:start]We can specifiy the attributes that the relationship can have, given that the attribute type has already been defined. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-relation-plays.png)[body:end] [footer:start]We can specify the roles the relationship type can play, given that the relationship for those roles have been defined. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-relation-submit.png)[body:end] [footer:start] Create the type by clikcing on **Submit**. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_define-relation-result.png)[body:end] [footer:start] [footer:end] [slide:end]

Manage Attribute Types

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_attribute-panel.png)[body:end] [footer:start]We may add an exisiting attribute type to a schema concept type by selecting it and clicking on **Add Attribute Types** in the right bar.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_attribute-select.png)[body:end] [footer:start]Select the attribute we want to add.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_attribute-add.png)[body:end] [footer:start]Click **Add**. [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_attribute-added.png)[body:end] [footer:start] [footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_attribute-remove.png)[body:end] [footer:start]We can remove an attribute by clicking on the **trash** icon next to the attribute. [footer:end] [slide:end]

Display Settings

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_settings-tab.png)[body:end] [footer:start]Navigate to the **Display Settings** by clicking on the **gear** icon.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_settings-display-panel.png)[body:end] [footer:start]We can toggle schema concept types to show or hide them.[footer:end] [slide:end] [slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_settings-display-toggled.png)[body:end] [footer:start] [footer:end] [slide:end]

Delete

[slide:start] [body:start]![schema designer](/docs/images/workbase/1.1.1/schema_delete.png)[body:end] [footer:start]We may delete an existing schema concept type by right-clicking on the node and clicking **Delete**.[footer:end] [slide:end]