写点什么

通用信息模型,助你构建丰富语义的服务

  • 2010-09-14
  • 本文字数:947 字

    阅读完需:约 3 分钟

成功实施 SOA 的必备要素之一是服务消息在语义上的互操作性。通常,为实现这一点,服务消息 / 接口应该基于行业相关的通用信息模型(Common Information Model,简称 CIM)。因为 CIM 是抽象的,所以绝大多数情况下都需要对 CIM 进行扩展,其原因有很多,可能是出于整合的目的而加入某些附加的数据,也可能需要加入某些元素,让其承载服务组件的某些业务逻辑。Gandhi Sivakumar 和 Ram Viswanathan 在 DeveloperWorks 的一篇新文章中介绍了 3 个典型的 CIM 层,并界定了它们各自的特性。

两位作者认为,核心 CIM 层是基础,它

……包括原始发布的行业模型,比如电信管理论坛为电信行业定义的共享信息数据模型(SID)和 IBM 为金融行业定义的 IBM 金融服务模型(又称 IFW),它们包含一些抽象实体,它们的属性和关系。

这一层通常是预定义的,但是可以稍微对其进行客户化,如添加一些缺失的数据定义、关系和唯一命名标识等。这一层一般有其独立的命名空间,这样服务规范生成工具就可将它作为一个独立的基础层来维护,从而与其他 CIM 层相分离。

弱化 CIM 层是对核心 CIM 层的扩展,它:

……包括一些扩展的 CIM 实体,这些实体能够传达纯粹的业务语义……通常,除非在业务的角度有其他的方法保证这些元素的存在,并能进一步通过抽象术语来表示它们,不然,建模工具一定要为它们的声明实现可视化,以使它们可出现在服务接口中。

弱化 CIM 层是核心 CIM 层的扩展,它提供了更多的属性、对象、关系和接口。该层包含了大量的实现服务所需但在核心 CIM 中找不到的那些与业务相关的实体。一般来说,这一层是最动态的,而且随着服务中要求增加越来越多的功能,它也在不断地发展。

最后,最弱化 CIM 层

……包括纯粹为整合的目标所需的对象、属性、接口和方法。譬如,与实体相关的消息头、控制结果和连接服务操作以及弱化 / 核心 CIM 层所需的实体。需注意的是该层必须与弱化 CIM 和核心 CIM 层共存,而这两层又是通过服务操作连接起来。

此层的目的纯粹是提供为实现整合及控制功能所需的那些实体。

本文为在 SOA 实施中采用行业特定的 CIM 模型带来了一个良好定义的多层次的方法。文中提到的明确分离的核心、服务相关和整合相关的扩展,有利于更好地维护 SOA 的语义模型。

查看英文原文: Using the Common Information Model for Building Semantic Services

2010-09-14 03:332029
用户头像

发布了 184 篇内容, 共 84.8 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

教学相长,物联网赋能教育数字化!

IoT云工坊

人工智能 物联网 智慧校园 智慧教室 智慧操场

《原则》(十一)

Changing Lin

6月日更

并发编程-AQS介绍和原理分析(上)

追风少年

并发编程 AQS

字节跳动Java岗6月9号一面经验分享

北游学Java

Java 字节跳动 面试

5分钟速读之Rust权威指南(二十一)闭包

wzx

rust

员工提出离职就消极怠工怎么办?

石云升

员工离职 职场经验 管理经验 6月日更

周小川:一些加密货币已经不太可能再回到支付领域

CECBC

从零开始学习3D可视化之场景层级(2)

ThingJS数字孪生引擎

大前端 可视化 数字孪生

股价预测的基本思路(1)

Qien Z.

6月日更 量化投资 股价预测

阿里大佬离职带出内网专属“高并发系统设计”学习笔记

Java架构师迁哥

【FlinkSQL】Flink SQL Query(三)- Join

Alex🐒

flink 翻译 FlinkSQL flink1.13

极狐(GitLab)开课了!实践进阶五步走,助你成为DevOps专家

极狐GitLab

DevOps

亮相智源大会,字节跳动自研同传系统的技术实现

字节跳动技术团队

【案例】星环科技助力华夏基金大数据平台建设

星环科技

本来无一物,何处惹尘埃|靠谱点评

无量靠谱

Boss直聘转发超90W次,Java面试突击手册 火遍全网,却遭封杀

Java架构师迁哥

百分点科技助力中国环境监测总站“生态环境质量会商平台”上线

百分点大数据团队

洞察 | 企业数字化转型费用高昂?低代码“骨折”给你!

优秀

低代码

【得物技术】浅尝UI自动化之Airtest实践

得物技术

自动化 测试 UI 自动化测试 测试落地

Linux系统日常定位常用指令

正向成长

linux命令

花了60天的时间肝出了这些spring,jvm,并发编程等学习笔记,春暖花开再战大厂!

Java架构师迁哥

WWDC21: Swift 5.5 新特性解读

阿里巴巴大淘宝技术

swift WWDC21

高并发场景创建JedisPool有哪些注意事项?

BUG侦探

并发 Jedis commons-pool

Webpack 简介

编程三昧

JavaScript 大前端 Node webpack 构建工具

网络攻防学习笔记 Day41

穿过生命散发芬芳

网络攻防 6月日更

又到一年“粽子节”,快来测测你包的粽子颜值几分

华为云开发者联盟

端午节 华为云 modelarts 粽子

百分点数据科学实验室:烟草行业市场信息采集数据质量评估体系研究探索

百分点大数据团队

C++内存访问错误检测

正向成长

内存泄露 内存溢出 Asan

干货|一款实用iOS云真机的技术架构是如何搭建的?

ios

书山有路,学海无涯|靠谱点评

无量靠谱

公安合成作战指挥系统解决方案,警务实战指挥系统

通用信息模型,助你构建丰富语义的服务_SOA_Boris Lublinsky_InfoQ精选文章