Under Review
over 2 years ago

Define EC schema naming best practice

Idea

In my opinion there should be an official recommendation / best practice information how custom EC schema should be named. It can be also applied to Item Types when created as a part of developed applications.

Justification

I have thought about this idea based on this discussion how to store application specific data in DGN file and/or model and I will use it as an example and explanation why I think some level of standardization would be nice:

EC schemas (both custom and fixed in a form of Item Types) provide plenty of advantages, e.g no "developer's ID" is required to store the data (as mandatory for any other option like direct work with XAttributes) and the data is supported by MicroStation automatically (EC query, reports etc.). From this reason, probably more and more EC schemas will be stored in DGN files and using the mentioned discussion there will be increasing threat of schema names collision ... how many developers will use something like "AppSetting"? ;-)

Solution

In my opinion (Java) namespaces structure is the good example how schemas should be named, so to always start with company name (Bentley uses it with many own EC schemas) and to use e.g. application name for other levels. Something like <company>_<application>_<module>_<data structure> ... e.g. (for not existing application ;-) LabTech_ProductivitySuite_ModelCrasher_AppSetting.

I know Bentley don't like to define rules and best practices how API should be used and applications should be developed and structured, but in my opinion it can remove some obstacles in future and help to make MicroStation applications ecosystem better organized nad structured.

With regards,

  Jan