Schema Name vs Logical Name

When we are creating an entity field,  the Name we give is its schema name. After creating field the schema name also becomes the logical name. The values are same but with one difference, the casing. Example:

  • DisplayName: NewFieldName
  • Name: new_NewFieldName (schema name)
  • LogicalName: new_newfieldname

Where both names are used ?


  • early bounding (ServiceContext), crmsvutil
  • REST/oData
  • it will be used to create the database column


  • late bound programming model
  • JavaScript web resources
  • attribute name
  • SOAP

Personally I prefer to change Schema Name to lower case so it == logical name. Why?? When using SOAP or REST in JS there is no need to change attribute names in request



Have an own opinion?