270 likes | 451 Views
CETSC-EMIF 工作组工作总结. EMIF 工作组 2004年3月24日. 工作目标 通过借鉴、调研、讨论、分析、试用,建立体现我国教育管理需求的教育软件互操作标准 时间 2003年8月——2004年3月 形式 全体成员正式会议 部分成员非正式讨论 工作组论坛 工作成果 EMIF1.1 工作草案(2003年8月) EMIF1.1 第一个修改草案(2003年10月) EMIF1.1 第二个修改草案(2003年11月) EMIF1.1 第三个修改草案(2004年2月). 一、工作内容概述. 1.1 EMIF 工作组企业成员. Intel( 中国)公司
E N D
CETSC-EMIF工作组工作总结 EMIF工作组 2004年3月24日
工作目标 通过借鉴、调研、讨论、分析、试用,建立体现我国教育管理需求的教育软件互操作标准 时间 2003年8月——2004年3月 形式 全体成员正式会议 部分成员非正式讨论 工作组论坛 工作成果 EMIF1.1工作草案(2003年8月) EMIF1.1第一个修改草案(2003年10月) EMIF1.1第二个修改草案(2003年11月) EMIF1.1第三个修改草案(2004年2月) 一、工作内容概述
1.1 EMIF工作组企业成员 • Intel(中国)公司 • 浙大网络公司 • 常州易维尔公司 • 武汉创星伟业公司 • 联想集团 • 北京中教育星公司 • 北京希尔公司 • 北京腾图文教电子发展有限公司 • 北京校际通信息技术有限公司 • 其他
第一次会议(2003年8月29日,北京西郊宾馆) 确定工作组的工作目标和工作内容 提交EMIF1.1工作草案 第二次会议(2003年9月15日,北京大学) 讨论EMIF体系结构相关问题 推出EMIF1.1第一个修改草案 第三次会议(2003年11月26日,北京大学) 讨论EMIF与SIF的专利权和著作权关系 讨论EMIF加密和数字签名方案 讨论EMIF数据规范相关问题 推出EMIF1.1第二个修改草案 1.2 正式会议
建立工作组论坛 http://162.105.142.5/gse_forum/list.asp?boardid=42 非正式讨论 与Intel(中国)公司 与中教育星公司 与其他公司 推出EMIF1.1第三个修改草案 1.3 非正式会议
经过三次重大讨论、修改,EMIF1.1已经成为比较稳定的版本经过三次重大讨论、修改,EMIF1.1已经成为比较稳定的版本 更灵活,能广泛兼容各种互操作情形和各类教育软件产品 更实用,易于开发商开发实现 更开放,允许用户自扩展互操作内容(数据对象) 更具本土特征,体现我国教育信息管理的需求特征 参加EMIF工作组的多家开发商已开发实现EMIF1.1的符合性教育软件产品 二、工作成果概述
单区域结构模型 人事管理系统 + 代理 学籍管理系统 + 代理 学科网站 + 代理 成绩管理系统 + 代理 ZIS 其他应用软件 + 代理 图书馆系统 + 代理 信息平台 + 代理 办公管理系统 + 代理 资源库系统 + 代理 网络教学平台 + 代理 2.1 EMIF1.1体系结构
数据交换模型 数据查询:请求—应答模型 数据更新:发布—预约模型 人事管理系统 代理 学籍管理系统 代理 ③ ⑦ 发布-预约流程 ④ ① 代理 ① ZIS 图书馆管理系统 请求-应答流程 ⑤ ⑧ ① ① ② ⑥ 代理 成绩管理系统 ①注册和提供 ②发送请求报文 ③转发请求报文 ④发送应答报文 ⑤转发应答报文 ⑥发送预约报文 ⑦发送事件报文 ⑧转发事件报文 2.1 EMIF1.1体系结构
异步通信模型 EMIF要求代理之间的通信本质上采用异步通信,即代理之间完成一次通信需要经过两次报文循环 异步通信可以保证通信稳定性 EMIF_Request EMIF_Request ZIS 代理B 代理A EMIF_Ack EMIF_Ack 2.1 EMIF1.1体系结构
安全模型 身份验证 Digital Certificate & XML-Signature 加密 XML-Encryption 存取控制 控制代理对每一数据对象的操作权限(请求、应答、预约、发布) ZIS端实现 2.1 EMIF1.1体系结构
支持同一数据对象的多提供者 支持在典型EMIF区域中,同一类数据对象(如:P学生基本信息)存在多个提供者 当存在多个提供者时,针对同一个数据对象的EMIF_Request,对应着所有提供者的EMIF_Response的集合 2.1 EMIF1.1体系结构
支持推、拉两种报文传递模式 推:ZIS主动向代理建立连接并传递报文 拉:代理首先向ZIS建立连接,发出EMIF_GetMessage命令,然后ZIS在连接中将报文传递给代理 采用哪一种模式由代理向ZIS注册时指定 两种模式本身无优劣之分,关键是代理和ZIS应按照一致的模式通信 2.1 EMIF1.1体系结构
要求EMIF HTTP为基本传输层协议 EMIF允许代理与ZIS之间使用任何传输协议,EMIF HTTP为默认协议 当发现其他传输协议不能完成通信时,应使用EMIF HTTP重新建立连接 EMIF HTTP是HTTP1.1(RFC2616)的子集 支持Post method 支持200-OK Response 支持Keep-alive Connection 不支持Transfer Encoding 不支持Data Chunking 不支持Connection:Upgrade 2.1 EMIF1.1体系结构
要求代理端解决死锁问题 死锁(deadlock):报文在队列中被按序逐一处理,某时刻当某个报文的处理必须依赖于其后续某个报文首先被处理而报文队列又不允许时,即发生死锁 选择性报文阻塞(Selective Message Blocking,SMB) 代理以锁定方式保留当前不能立即处理的报文 锁定其他同类报文(仅当被锁报文为EMIF_Event时) 向ZIS发送EMIF_Request以获取所需信息 处理ZIS反馈的EMIF_Response 处理原锁定报文 解锁所有锁定报文 要求SMB机制在代理端实现 2.1 EMIF1.1体系结构
命名和标识 代理和ZIS应具有区域内唯一的标识 命名规则 组成:英文字母(A-Z,a-z,大小写敏感) 数字(0-9) 下滑线(_) 连接符(-) 实点(.) 长度:不超过255个字符长度 含义:应能够表明应用程序所服务的区域,如 Library.Agent.BNU 2.1 EMIF1.1体系结构
代理的符合性要求 向ZIS注册 向ZIS提供数据对象 向ZIS发布数据对象更新事件 应答EMIF_Request 支持EMIF-Encrption和EMIF-Signature 支持SMB机制 2.1 EMIF1.1体系结构
ZIS的符合性要求 注册代理 管理提供者信息 管理预约者信息 管理存取控制列表 提供EMIF_ZoneStatus对象 支持推、拉模式 支持数剧对象的多提供者机制 支持EMIF-Encrption和EMIF-Signature 2.1 EMIF1.1体系结构
报文类别 EMIF_Ack:用于通知是否已成功接收或处理报文 EMIF_Event:用于发布数据对象更新事件 EMIF_Provide:用于提供数据对象 EMIF_Register:用于注册代理 EMIF_Request:用于获取数据对象 EMIF_Response:用于应答对数据对象的请求 EMIF_Subscribe:用于预约数据对象更新事件 EMIF_SystemControl:用于控制数据流动 EMIF_Unprovide:用于取消对数据对象的提供 EMIF_Unregister:用于取消注册 EMIF_Unsubscribe:用于取消对数据对象更新事件的预约 2.2 EMIF1.1报文规范
描述:使用XML语言 格式:基于XML Schema的EMIF-Schema 名字空间:xmlns="http://www.celtsc.edu.cn/emif/messages" 编码:UTF-8字符集 验证:XML Schema和DTD 安全:根据W3C的两个推荐规范定义EMIF-Encryption和EMIF-Signature W3C: XML Encryption Syntax and Processing (2002) W3C: XML-Signature Syntax and Processing (2002) EMIF: <EncryptedData xmlns="http://www.celtsc.edu.cn/emif/xmlenc#"> EMIF: <Signature xmlns="http://www.celtsc.edu.cn/emif/xmlsig#"> 报文处理协议 2.2 EMIF1.1报文规范
内容:引用教育部颁布的两部数据规范的内容,采用EMIF的描述格式内容:引用教育部颁布的两部数据规范的内容,采用EMIF的描述格式 教育管理信息化标准 第1部分:学校管理信息标准(2002) CELTSC-41 基础教育教学资源元数据规范(2002) 格式:基于XML Schema的EMIF-Schema 元素约束性:Mandatory类型的元素减到最小 其他 统一数据对象命名规则 统一日期格式:YYYY-MM-DD 统一使用GUID标识数据对象 2.2 EMIF1.1数据规范
EMIF体系结构和EMIF报文规范在应用中证明可行、实用、稳定EMIF体系结构和EMIF报文规范在应用中证明可行、实用、稳定 EMIF数据规范在引用“基础教育教学资源元数据规范”时遇到数据表示的问题 XML标签的大小写问题 XML元素的多个值域问题 注:以下将“基础教育教学资源元数据规范”简称为“CETSC-41规范” 三、若干遗存问题
问题来源 CETSC-41规范采用全字母小写方式书写XML元素标签,如:<tableofcontents> EMIF规范在引用CETSC-41规范时改用首字母大写方式书写XML元素标签,如:<TableOfContents> 标签大小写不一致将导致:按照EMIF规范生成的资源描述文档与按照CETSC-41规范生成的资源描述文档无法实现互操作,这将影响EMIF规范的应用范围 我们建议:统一采用首字母大写方式书写XML文档 首字母大写符合XML元素描述的国际惯用法,而小写则非 与EMIF规范的行文用法一致:EMIF报文规范和数据规范均采用首字母大写方式描述XML文档 3.1 XML标签的大小写问题
问题来源 CETSC-41规范在定义元素时经常给出多个值域(值域在CETSC-41规范中称为“编目方案”) 如:学科的编目方案 LCSH(美国国会图书馆主题词表) MESH(医学主题词表) DDC(杜威十进分类法) LCC(美国国会图书馆分类法) UDC(国际十进分类法) 按国家课程标准定义的学习领域与课程 如:空间(Spatial)的编目方案 DCMI Point、ISO 3166、DCMI Box、TGN 3.2 XML元素的多个值域问题
CETSC-41规范在定义多个值域的同时却没有给出值域适用范围CETSC-41规范在定义多个值域的同时却没有给出值域适用范围 多个值域并存而不给出适用范围将导致:同样按照CETSC-41规范描述资源的属性,但不同的开发商可能根据不同的值域取值,因此必将导致互操作失败 我们建议:两种备用方案,可采用其一 3.2 XML元素的多个值域问题
方案一:增加一个属性来指明所采用值域(如:scheme)方案一:增加一个属性来指明所采用值域(如:scheme) <Spatial scheme=”DCMI Point”> <Point> <east>…</east> <north>…</north> <Point> </Spatial> 方案二:强制约定一种值域,舍弃其他 <Spatial> <Point> <east>…</east> <north>…</north> <Point> </Spatial> 3.2 XML元素的多个值域问题
EMIF工作组工作内容概述 EMIF工作组工作成果概述 EMIF1.1的若干遗存问题 四、总结