信息家电接口定义语言探究

信息家电接口定义语言探究

ID:5601107

大小:27.00 KB

页数:5页

时间:2017-12-19

信息家电接口定义语言探究_第1页
信息家电接口定义语言探究_第2页
信息家电接口定义语言探究_第3页
信息家电接口定义语言探究_第4页
信息家电接口定义语言探究_第5页
资源描述:

《信息家电接口定义语言探究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、信息家电接口定义语言探究  摘要:该文介绍了采用面向对象方法描述信息家电设备的信息家电接口定义语言IAIDL,然后采用XML描述信息家电IAIDL文档并制定了IAIDL语言规范,并在android系统上实现了IAIDL解析器。关键词:信息家电;信息家电接口定义语言IAIDL;IAIDL解析器中图分类号:TP311文献标识码:A文章编号:1009-3044(2014)04-0864-03现今社会各种小型移动智能设备越来越普及,例如智能手机,平板电脑,个人数字助理(PDAs)等。可见用移动设备远程控制信息家电将是未来智能家居系统的发展方向。之前很多研究工作都是将重点放在信息

2、家电的万能遥控器界面的研究上:斯坦福的ICrafter就是一个分布式信息家电接口的万能遥控器的框架;UIA则使用基于XML语言的MoDAL,该MoDAL可利用XML描述来动态创建用户接口界面;卡耐基梅隆大学近年来的研究也是集中在万能遥控器的动态生成方面[1]。而本文将从现在发展趋势良好的android手机系统出发,提出了信息家电接口定义语言IAIDL,对该语言设计了统一的格式规范,同时对基于安卓的XML解析技术进行了研究。51IAIDL语言与其功能信息家电接口定义语言(IAIDL,InformationApplianceInterfaceDefinitionLangua

3、ge)是一种用来定义家庭网络中信息家电属性与功能的描述语言[2]。通过IAIDL语言的运用,当一种按照信息家电描述语言格式定义的新信息家电设备接入系统时,该设备能够自动地向家庭网关进行注册,所有在线的远程信息家电遥控器能自动发现新信息家电设备的功能接口,从而实现新信息家电设备的动态接入。为了实现家电之间的相互协作,各个信息家电(IA)向其他家电和用户通过IAIDL文档宣告自己所具有的功能和属性,该IAIDL文档通过IAIDL编译器之后将中间文档存储到网关上,以提供给万能遥控器进行访问从而实现对各个家电的控制。2IAIDL格式规范可扩展标记语言(ExtensibleMar

4、kupLanguage,XML)的设计目标[3],强调在互联网上的简单性,普遍性和实用性。用XML文档来表示IAIDL是合适的。我们定义出DTD标准文件作为XML语言的约束,从而统一XML语言的描述方式。不同的公司只需要根据DTD文件,都能建立XML文件且可以进行验证,这样就可以实现网络共享和数据交互。DTD(DocumentTypeDefinition)5是一套关于标记符的语法规则,可通过比较XML文档和DTD文件来看文档是否符合规范,这样就为我们进一步研究XML解析技术打下了基础。以信息空调为例,XML文档的一般性规范格式为:对以上标准的具体分析如下:每个家电都有如

5、下属性:name:家电类型的唯一标识,例如是空调还是电视机;manufacturer:家电的厂商,例如是海尔或者TCL.对于显示状态列表,以空调的温度状态为例,以XML描述如下:其中,length/height:规定动态生成状态面板的长度与高度;X/Y:动态生成的状态面板的左上角X,Y坐标State:信息家电的某个状态信息,以空调为例,state有温度,开关状态,风强等等。在XML文件中每增加一个节点作为的子节点,即对相应电器增加一个可显示的状态信息。对于控制状态列表,以空调的温度状态为例,以XML描述如下:在XML文件中每增加一个节点作为的子节点,即对相应电器增加一个

6、控制操作。3PULL解析技术在Android中,5我们最常用的解析器就是DOM解析器、SAX解析器和PULL解析器。其中PULL解析器很小巧,解析速度快,非常适合在Android移动设备中使用,Android系统内部也是采用PULL解析器对XML文件进行解析的[4],因此我们考虑使用PULL解析技术。我们首先设置一个JAVA类来存放数据,通过这个类我们存储读取的IAIDL文件所有的节点和数据。PULL在解析IAIDL文件时,IAIDL文件是以文件流的形式输入的。解析器先将全部文件数据读到一个字符数组中,然后再开始一个一个字符往后读取。PULL解析器每读完一段字符后不会自

7、动往后解析了,所以我们要使用APIpullParser.next()进入下一事件。由一个switch结构来判断这个事件的类型,并对不同类型执行不同的操作。JAVAPULLAPI主要提供了五类事件:START_DOCUMENT文件开始,解析器还没有读取任何输入。START_TAG解析器读到了一个开始节点。TEXT解析器取得了一个节点后文本。END_TAG解析器读到了一个结束节点。END_DOCUMENT文件结束,解析过程结束。5我们以空调的IAIDL文件为例,解析过程如下:IAIDL解析器PULLParser的运行情况良好,可成功将IAID

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。