code: func newStructDef(apiDef *raml.APIDefinition, name, packageName, description string, properties map[string]interface{}) structDef {
  	// generate struct's fields from type properties
  	fields := make(map[string]fieldDef)
  	for k, v := range properties {
  		prop := raml.ToProperty(k, v)
  		fields[prop.Name] = newFieldDef(apiDef, name, prop, packageName)
  	}
  	return structDef{
  		Name:        strings.Title(commons.NormalizeIdentifier(name)),
  		PackageName: packageName,
  		Fields:      fields,
  		Description: commons.ParseDescription(description),
  	}
  }
docs: // create new struct definition