# Schemas

This document describes the structure of an individual Schema.

# Metadata

The core meta data for each Schema is described by the structure below:

{
  id: "1",
  label: "Book Type",
  label_plural: "Book Types",
  identifier: "book_type",
  identifier_plural: "book_types",
  class_name: "BookType",
  class_name_plural: "BookTypes",
  camel_case: "bookType",
  camel_case_plural: "bookTypes",
  attributes: Attribute[],
  relations: Relation[]
}

# label

The label property is the human-readable, singular noun that describes the Schema. The label and label_plural properties are primarily used when generating user interfaces that are intuitive for end-users.

# identifier

The identifier property is the code-friendly, lowercase, underscored, singular noun that describes the Schema. The identifier and identifier_plural properties are primarily used when generating code that conforms to developer expectations.

# class_name

The class_name property is the code-friendly, title-cased, white-space free, singular noun that describes the Schema. The class_name and class_name_plural properties are primarily used when generating class definitions that conform to developer expectations.

# camel_case

The camel_case property is the code-friendly, camel-cased, white-space free, singular noun that describes the Schema. The camel_case and class_name_plural properties are primarily used when generating instance variables that conform to developer expectations.

# attributes

The attributes property is an array of nested Attribute instances.

# relations

The relations property is an array of nested Relation instances.

Last Updated: 6/24/2019, 3:45:47 AM