我想了解关于公用信息模型的知识，请写一篇详细的介绍
公用信息模型是指计算机工业中用来定义设备和应用方式的一种标准，以便于系统管理员和管理程序可以用相同的方式控制来自不同厂商和来源的设备和应用程序。例如，一个购买来自不同公司不同种类存储设备的公司可以看到每台设备同种信息（例如：设备名称和型号、序列号、容量、网络地址以及和其他设备或应用程序的关系）或者可以从一个程序获取信息。
CIM利用XML。硬件和软件制造商选择XML信息结构中的一种来支持他们产品的CIM信息。CIM由一个叫DMTF的工业小组发明，是基于网络的企业管理的一部分。CIM希望比现在应用的早期模型——简单网络管理协议（SNMP）和桌面管理接口（DMI）更具综合性。利用CIM，可以探索问题的来源和状况。#### 公用信息模型的建立及发展

公用信息模型(CIM)定义了电力系统模型的基本数据结构，描绘典型情况下EMS信息模型中所包含的电力系统中所有的主要对象。该模型包含这些对象的公用类及其属性，以及它们之间的关系。
CIM用面向对象的建模技术定义，CIM规范使用UML(统一建模语言)来表达。由于UML易于使用、可视化、可扩展性强等，用它来描述的CIM很容易进行更新升级和编制相应的规范文档，为进一步设计系统提供了方便，提高了效率。
在CIM的概念提出后，逐渐得到各供货商的认同。但仍存在一个问题，即CIM是个抽象的模型，它既不是一个模型数据库规范，也不是一种交换形式。在此期间，XML(可扩展标记语言)蓬勃发展起来。#### 公用信息模型中的拓扑模型

网络的拓扑模型是所有网络分析应用的基础，包括静态模型和动态模型，静态拓扑模型就是所谓的节点一开关模型，描述了网络中的节点和连接节点的实际状况;动态模型是考虑了开关的开闭动作后形成的母线一支路模型，是将开关两端的节点合并后形成的。实际上，在网络分析应用中，完全将开关的两端进行合并会造成一些信息丢失(如动态分析中可能需要考虑保护的动作，将断路器去掉后这部分动态就无法表示)，但若采用完整的静态模型又太过复杂，因此更好的模型是保留那些在运行期问可能开断的开关设备，如断路器(breaker)、熔断器(fuse)和负荷开关(loadbreakswitch)等，而合并那些不能带电操作的设备，如隔离开关(disconnectox)、跨接线(jumper)等。CIM中拓扑模型涉及的类如图所示。
1、端子类(Terminal):代表物理的导电设备连接到电力系统中的1个连接端子，1个端子一定属于1个具体的导电设备。同时，由于端子属于连接到运行系统中的设备，因此原则上它应连接到1个连接节点上(标准规定1个端子可以不连接到任何连接节点，而连接节点也可以不包含任何端子，这都意味着这个端子或连接节点没有存在的价值)。
2、连接节点类(ConnectivityNode):代表-组端子的聚合，实际上就是节点一开关模型中的节点，标准规定它可以包含0或多个端子。
3、导电设备类(ConductingEquipment):是对所有导电设备的抽象，可通过端子连接到电力系统中。按照标准的说明，导电设备具有0到n个端子，但标准中给出的导电设备只有3种可能:0(代表设备没有接入系统)、2(交流线段、直流线段、跨接线、熔断器、断路器、隔离开关、负荷开关，实际上整流逆变器也应该是两端子的导电设备)、1(除含有0和2端子的导电设备和补偿器以外的所有其它导电设备)。其中补偿器是一个特例，其端子数可以是1(处于并联补偿模式时)或2(处于串联补偿模式时)，由于补偿器本身有一个属性(compensatorType)对其补偿模式进行了规范，因此不会给分析过程带来麻烦。由于导电设备是抽象类，因此在网络分析中不直接使用该类，而是使用它的子类。
4、拓扑节点类(TopologicalNode):是对连接节点整合后产生的动态节点，实际上对应于母线一支路模型中的母线(如果没有忽略所有开关，也可能对应一些汇流端)。原则上1个拓扑节点至少应该包含1个连接节点(标准中规定1个拓扑节点可以不包含连接节点，但却没有给出其对应情况的说明)，而在动态拓扑模型中，1个连接节点则一定属于1个拓扑节点。
5、拓扑岛类(Topologicallsland):对应于实际运行的电气岛，由1组具有电气连接的拓扑节点构成，在网络分析中不使用该类也不会带来大的问题。