IEEE CIM Article 5 Data Structure / Schema / Semantic Model The CIM canonical model includes a very large number of classes and each class has associations describing relationships with other classes. Most classes also have attributes describing characteristics of the class. Any given work flow or data exchange will use only a fraction of the classes, associations and attributes defined in the CIM. Profiles are defined to define the specific subset of classes, associations and attributes from the CIM that are used for a particular data exchange. Because the information included in a profile is based on the CIM canonical model the meaning of the information is clearly understood. For instance, any profile that includes the class and attribute defining the resistance of an AC transmission line (attribute “r” of the “ACLineSegment” class) will have the same understanding of the data being exchanged. The CIM UML model uses a type system that also helps to ensure a clear understanding of the attributes. CIM data types are defined for common electrical quantities such as “ActivePower,” “AngleRadians,” “Resistance,” and “Susceptance.” For instance, attribute “r” of the “ACLineSegment” class uses the CIM data type “Resistance”. In most cases a data exchange will need to reference data objects previously exchanged. For instance the results of a power flow will reference the individual pieces of equipment from a network model that was previously exchanged. When changes are made to a network model an incremental update can be exchanged that will reference the objects that have been added, modified or deleted. Data objects that may need to be referenced have to be kept persistent by the receiver of the data and they must have unique, persistent identification. In CIM the class IdentifiedObject has been defined specifically as a superclass for any class that needs to be persistent after it is initially exchanged. The master resource identifier attribute, “mRID,” of IdentifiedObject is included in the CIM to provide a common method for persistent, unique identification. When used in a data exchange the “mRID” is required to be unique within the context of the exchange. Global uniqueness is achieved by using a Universally Unique Identifiers (UUIDs), which is strongly recommended, but not required. In an ideal data exchange UUIDs would be used as the mRIDs to uniquely identify all objects, but this cannot always be achieved when working with existing applications that already have other established methods of unique identification. In this case CIM naming attributes and classes such as the “name” attribute on “IdentifiedObject” or the alternate name classes “Name,” “NameType,” and “NameTypeAuthority” can be leveraged.