70 ieee power & energy magazine january/february 2016 UsagePoints 0..* Equipments 0..* CIM Canonical Model Terminals 0..* EnergyConsumer + customerCount : Integer + grounded : Boolean + p : ActivePower + pfixed : ActivePower + pfixedPct : Percent + q : ActivePower + qfixed : ActivePower + qfixed : ActivePower Terminals 0..* TopologicalNode 0..1 TopologicalNode Terminal + connected : Boolean + sequenceNumber : Integer + phases : PhaseCode Terminals 0..* ConductingEquipment 0..1 ConnectivityNode 0..1 ConnectivityNode ACLineSegment + b0ch : Susceptance + bch : Susceptance + g0ch : Conductance + gch : Conductance + r : Resistance + r0 : Resistance + x : Reactance + x0 : Reactance Conductor + length : Length ConductingEquipment Equipment + aggregate : Boolean + normallyInService : Boolean PowerSystemResource + mRID : String + name : String + description : String Switch + normalOpen : Boolean + open : Boolean + ratedCurrent : CurrentFlow + retained : Boolean + switchOnCount : Integer + switchOnDate : DateTime figure 1. A subset of the CIM canonical model. UsagePointLocation 0..* 0..1 UsagePointLocation + direction : String + geoInfoReference : String + type : String + mainAddress : StreetAddress + accessMethod : String + remark : String + siteAccessProfile : String UsagePoints UsagePoint + amiBillingReady : AmiBillingReadyKind + checkingBilling : Boolean + connectionState : UsagePointConnectedKind + estimatedLoad : CurrentFlow + grounded : Boolean + isSdp : Boolean + isVirtual : Boolean + minimalUsageExpected : Boolean + nominalServiceVoltage : Voltage + outageRegion : String + phaseCode : PhaseCode + ratedCurrent : CurrentFlow + ratedPower : ActrivePower + readCycle : String + serviceDeliveryRemark : String + servicePriority : String UsagePoint 0..1 EndDevices 0..* EndDevice + critical : Boolean + initialCondition : String + initialLossOfLife : PerCent + lotNumber : String + purchasePrice : Money + serialNumber : String + type : String + utcNumber : String + amrSystem : String + installCode : String + isPan : Boolean + isVirtual : Boolean + timeZoneOffset : Minutes