【技术实现步骤摘要】
本专利技术涉及一种过滤标记语言(如HTML,XHTML,WML等)中非法标签的方法,适用于基于嵌入式微浏览器的标记语言的容错解析。
技术介绍
标记语言即标准通用标记语言SGML(Standard Generalized MarkupLanguage),由1986年发布的信息管理方面的国际标准(ISO8879)定义。SGML的主要目的是定义一种使用标签来表示数据的标记语言的语法。标签由包围在一个小于号(<)和一个大于号(>)之间的文本组成,例如<tag>。起始标签(start tag)表示一个特定区域的开始,例如<start>;结束标签(end tag)定义了一个区域的结束,除了在小于号之后紧跟着一个斜线(/)外,和起始标签基本一样,例如</end>。SGML还定义了标签的属性(attribute),它们是定义在小于号和大于号之间的值,例如<img src="picture.jpg">中,标签img包含名称是src的属性,其值为"picture.jpg"。SGML语言由于其规范性、可移植性等特点,非常适用 ...
【技术保护点】
一种过滤标记语言中非法标签的方法,其特征在于包括以下步骤: 步骤1,从标签构成的输入数据流中记录下:(1)当前正要解析的标签的位置;(2)上一个解析过的标签的位置;(3)所有尚未解析到其结束标签的起始标签;且在解析的过程中,不断更新上述三个记录信息; 步骤2,从标签构成的输入数据流读入第一个非注释的、合法的标签,记为curTag,作为递归函数的输入参数,进行递归解析过程; 步骤3,在递归(或其等价非递归)的标记语言解析过程中,利用步骤1所记录的信息,采用忽略或虚拟的容错机制,识别并过滤非法标签。
【技术特征摘要】
1、一种过滤标记语言中非法标签的方法,其特征在于包括以下步骤:步骤1,从标签构成的输入数据流中记录下:(1)当前正要解析的标签的位置;(2)上一个解析过的标签的位置;(3)所有尚未解析到其结束标签的起始标签;且在解析的过程中,不断更新上述三个记录信息;步骤2,从标签构成的输入数据流读入第一个非注释的、合法的标签,记为curTag,作为递归函数的输入参数,进行递归解析过程;步骤3,在递归(或其等价非递归)的标记语言解析过程中,利用步骤1所记录的信息,采用忽略或虚拟的容错机制,识别并过滤非法标签。2、根据权利要求1所述的过滤标记语言中非法标签的方法,其特征在于,递归的标记语言解析过程如下:a)步骤2中读入的第一个非注释的、合法的标签curTag为递归函数的输入参数,b)存储curTag的名称和属性于特定的数据结构,c)从输入数据流读入下一个标签,记为nextTag,若输入数据流已经结束,则nextTag为空,d)若读入的下一个标签nextTag是开始标签,则将nextTag的值赋给curTag,回到(a)开始新一次递归,e)若读入的下一个...
【专利技术属性】
技术研发人员:郭华,廖建华,庞恩林,胡胜发,
申请(专利权)人:安凯广州微电子技术有限公司,
类型:发明
国别省市:81[中国|广州]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。