第三大支柱IFD - 确定交换的信息和你要的信息是同一个东西

IFD的全称是International Framework for Dictionaries,中文可以叫“国际字典框架”,和前两者IFC/IDM一样,作为BIM用户,能记住IFD的名字和记住IFD是字典就行了。

用BIM创建和管理信息,通过IFC和IDM实现信息在不同项目成员和不同软件产品之间的交换,从而使BIM价值最大化。这样一个过程干嘛要用字典呢?怎么又出来一个IFD呢?

1、IFD产生的背景

前面我们介绍了IFC是一个包含各种建设项目设计、施工、运营各个阶段所需要的全部信息的一种基于对象的、公开的标准文件交换格式,我们简单地将其比喻为一个什么药都有的药铺,甭管治什么病,药都在这儿;而IDM则为某个特定项目的某一个或几个工作流程确定具体需要交换什么信息,我们也简单地把它比喻成一个针对某个病人或某种疾病取药的方子。

当然通过IDM开药方的就是项目不同阶段的各类项目成员,为了完成各自负责的与该项目有关的工作,需要从上游成员那儿借助IFC标准通过信息交换获取一组必须的信息作为输入,完成工作以后生成、修改、完善了一组新的信息作为输出,通过IFC进行信息交换为下游成员们的工作服务。

在全球化的今天,一个建设项目的参与方(业主、建筑师、工程师、总包、分包、预制商、供货商、运营、维护、更新、改建、扩建、拆除等)来自不同国家、不同地区、不同语言、不同文化背景的情况司空见惯,已经不算是什么特例了。

IFD的官方资料有一个这样的例子,在普通的语言字典里面,挪威语的“dor”被翻译成英语里面的“door”,都是“门”的意思,这样做作为非技术的语言交流没有任何问题。但是实际上挪威语里的“dor”是“门框”的意思,应该对应英语的“door set”,而英语里面的“door”指的是“门扇”,对应挪威语的“dorblad”,如下图所示:

其实即使就在一个国家里面,使用同一种文字,也有这种问题存在,“天花”又叫“吊顶”,“榔头”也是“锤子”,“角钢”还作“角铁”,这就是自然语言的特点。

这个作为自然语言来说不是问题的问题,在进行建设项目信息交换(其他用途的信息交换也一样)的时候就成了一个大问题,就可能会出现您要的信息是“A”,结果通过交换您得到的信息是“B”的情况。

解决这个问题的答案就是IFD。

2、IFD如何解决这个问题

IFD采用了概念和名称或描述分开的做法,引入类似人类身份证号码的GUID(Global Unique Identifier 全球唯一标识)来给每一个概念定义一个全球唯一的标识码,不同国家、地区、语言的名称和描述与这个GUID进行对应,保证每一个人通过信息交换得到的信息和他想要的那个信息一致。

IFD中的概念独立于时间和用途,例如我们以窗为例,从不同的信息来源研究窗的概念,我们发现每一个信息来源都只讲到有关窗的一部分信息,下图中我们用不同的色块表示窗的不同性质,有些性质在不同的信息来源中可以共享,有些则不一样:

IFD记录和汇集所有不同信息来源关于窗的性质,从而形成了一个包含所有可能窗的性质的一个最一般意义上的“窗”的概念,同时记录每一种窗的性质的初始信息来源,一个跟窗有关的最完整的“字典”就形成了。

BIM和IFC、IDM、IFD三者之间的关系

BIM价值的最大化实现需要依赖于不同项目成员和应用软件之间的信息自由流动,从而使每一位项目成员在他的专业工作需要的时候都能够从上游成员已经收集的信息中及时得到他需要的具有质量保证的信息,同时该项目成员收集或更新的信息也遵守所有上游成员同样的信息管理和共享规则,使其后的下游成员仍然能够在适当的时候得到适当的信息。

一个建设项目生命周期内的参与方和需要使用的软件产品数量从数十、数百到甚至更多,要支持这么多参与方、这么多应用软件在项目整个生命周期内的信息交换,必须借助于一个中立的、公开的信息交换标准,这个信息交换标准格式就是IFC。

IFC包含了所有建设项目整个生命周期内一切项目成员及其应用软件需要用到的信息,而在实际工作环境中每一个人面对的只是其中某一个特定的项目(例如一个城市综合体),每个项目成员只负责其中的某一项或几项工作(例如建筑设计),他需要通过信息交换得到完成他的工作所需要的信息,同时把他在工作中收集或更新的信息通过信息交换给其他需要的项目成员使用,这个用来定义某个指定项目以及项目阶段、某个特定项目成员、某个特定业务流程所需要交换的信息以及由该流程产生的信息的东西就是IDM。

谈到IDM,还有一个IDM的孪生兄弟MVD(Model View Definition 模型视图定义)需要特别说明一下,因为MVD是为IFC标准和软件开发人员用来在IFC模式中实现IDM定义的信息交换要求的,作为BIM用户通常不需要涉及到这部分内容,因此在本系列文章中对MVD并没有做任何介绍,作为BIM用户来说,你只要知道MVD是研发人员把IDM的人类语言转化成IFC的机器语言加以实现的手段就行了。

由于自然语言的多样性和多义性,为了保证来自不同国家、地区、语言和文化背景的信息提供者和信息请求者对同一个概念有完全一致的理解,IFD给每一个概念和术语都赋予了一个全球唯一标识码GUID,这样可以使得IFC里面的每一个信息都有一个唯一的标识与之相连,只要提供了需要交换信息的GUID,得到的信息就是唯一的,至于不同背景的的项目成员用什么语言和名词描述或命名这个信息就变得无关紧要了。

IFC/IDM/IFD构成了建设项目信息交换的三个基本支撑,因此也就自然而然地成为了BIM价值得以最大化实现的三大支柱,如图所示:

[BIM]BIM中IFD介绍的更多相关文章

  1. [BIM]BIM中IDM介绍

    参考:http://blog.fang.com/25866228/10613454/articledetail.htm IDM的全称是Information Delivery Manual,信息交付手 ...

  2. ios中框架介绍

    ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...

  3. Burp Suite Intruder中爆破模式介绍

    Burp Suite Intruder中爆破模式介绍 - Introduction to Burst Mode in Burp Suite Intruder 1.sniper模式  使用单一的Payl ...

  4. Django中ORM介绍和字段及字段参数 Object Relational Mapping(ORM)

    Django中ORM介绍和字段及字段参数   Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简 ...

  5. [转]C# 互操作性入门系列(一):C#中互操作性介绍

    传送门 C#互操作系列文章: C# 互操作性入门系列(一):C#中互操作性介绍 C# 互操作性入门系列(二):使用平台调用调用Win32 函数 C# 互操作性入门系列(三):平台调用中的数据封送处理 ...

  6. 6月20日 Django中ORM介绍和字段、字段参数、相关操作

    一.Django中ORM介绍和字段及字段参数 二.Django ORM 常用字段和参数 三.Django ORM执行原生SQL.在Python脚本中调用Django环境.Django终端打印SQL语句 ...

  7. [BIM]BIM中IFC介绍

    ifc是干什么的,看下图 ifc架构图 下文转自:http://www.bimcn.org/cjwt/201506053789.html IFC目前是国际通用的BIM标准,现在很多BIM软件都采用其作 ...

  8. BIM数据格式中IFC的标准及格式

    传统工程数据往往零散且片段的储存在各个不同的地方,数据格式也有各种不同的形式互相搭配,最常见的有图形(施工图.大样图.断面图.流程图等).文字(各种说明文件).数字(各种统计.数量或价格数据),这些数 ...

  9. bim模型中所有IfcWallStandardCase构件

    ifc中的IfcWallStandardCase构件 //执行吊装 void startHoisting() { osg::Vec3f vec3f1 = index_node1->getBoun ...

随机推荐

  1. Unable to get setting value Parameter name: profileName

    Today when I am building my application, everything works well but when I try to run Azure Worker Ro ...

  2. canvas学习之圆周运动

    html部分 ...... <body> <canvas id="myCanvas" width="400" height="400 ...

  3. 线段树 Interval Tree

    一.线段树 线段树既是线段也是树,并且是一棵二叉树,每个结点是一条线段,每条线段的左右儿子线段分别是该线段的左半和右半区间,递归定义之后就是一棵线段树. 例题:给定N条线段,{[2, 5], [4, ...

  4. zip格式jdk在Linux环境下的安装过程

    1下载jdk [root@localhost opt]# cd soft_bak/[root@localhost soft_bak]# lsjdk1.7.0_25.zip postgresql-9.4 ...

  5. 基于Qt实现的截图小程序

    在最近做的行人检测项目中,由于需要训练分类器,而分类器的训练又需要有一个一定长宽的样本.为了方便样本的采集,因此实现了这样的一个截图程序.该程序的主要功能是加载视频到程序中,程序可以对视频进行播放.暂 ...

  6. csuoj 1113: Updating a Dictionary

    http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1113 1113: Updating a Dictionary Time Limit: 1 Sec  ...

  7. [原创]java WEB学习笔记91:Hibernate学习之路-- -HQL 迫切左外连接,左外连接,迫切内连接,内连接,关联级别运行时的检索策略 比较。理论,在于理解

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  8. [原创]java WEB学习笔记70:Struts2 学习之路-- struts2拦截器源码分析,运行流程

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  9. C++初学者 const使用详解

     关于C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,参考了康建东兄的const使用详解一文,对其中进行了一些补充,写下了本文. 1. const常量 如: cons ...

  10. ZOJ 3645 BiliBili(高斯消元)

    Shirai Kuroko is a Senior One student. Almost everyone in Academy City have super powers, and Kuroko ...