Every object has a Name and ID property that must be unique within the scope of the parent collection. For example, two dimensions can have same name as long as each one resides in a different database.
A database is a scope. A cube is an object. Two cubes can have same name or ID as long as they belong to different databases.
Although you can specify it manually, the IDis typically auto-generated when the object is created. You should never change the ID once you have begun building a model. All object references throughout a model are based on the ID. Thus, changing an ID can easily result in model corruption.
DataSource and DataSourceView objects have notable exceptions to naming conventions. DataSource ID can be set to a single dot (.), which is not unique, as a reference to the current database. A second exception is DataSourceView, which adheres to the naming conventions defined forDataSet objects in the .NET Framework, where the Name is used as the identifier.