【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及数据和数据类型的转换。
技术介绍
当前在不同的数据类型间转换或排列数据的方式上存在某些缺陷。在现有系统中,用户启动现有的Java类型并要求系统生成反映Java类型的XML模式,进而将Java数据排列成自动生成的XML。大多数排列XML的产品都通过编译器(例如从Java到WSDL的编译器)运行,以生成XML模式(schema)。这种方法的缺陷之一是只针对从Java到XML的情况。当前的工具不是特别擅长于采用现有XML模式并将整个模式转换成使用方便的Java类型。当前排列技术的另一个问题出现在用户只想查看一小块XML数据的时候。用户可能希望在不处理该XML数据块的情况下就跳转至其余的XML数据。当前排列技术在简单跳转至其余数据方面不是很有效。通常,在不同的排列之间跳转是很复杂的,因为不是XML中的所有语义都能很容易地在Java中捕获。如果用户输入消息,更改该消息的一小部分,并试图将该消息作为XML重新发送,则除了该被用户更改部分外的其它部分将变得不同,从而丢失很多其它信息。例如,如果XML含有通配符属性或元素,则这些通配符不会被保留。关于元素顺序的信息可能也会丢失或被扰乱,如果模式对元素顺序很敏感的话这就成为一个问题。附图说明图1示出根据本专利技术实施例的示例XML模式定义文件。图2示出根据本专利技术实施例的、用于XML排列和解排列(marshaling andunmarshaling)的示例系统的框图。图3示出由可以用于根据本专利技术实施例的XML模式编译的XML类型的示例代码。图4示出可以用于根据本专利技术实施例的基于注释的格式的示例代码 ...
【技术保护点】
一种在XML和Java之间排列和解排列数据的系统,包括:XML数据;定义XML数据的XML模式;XML类型,其是可以在Java内访问XML数据的Java类型;以及可以从XML模式生成XML类型的编译器。
【技术特征摘要】
【国外来华专利技术】US 2003-1-24 60/442,673;US 2004-1-22 10/762,8141.一种在XML和Java之间排列和解排列数据的系统,包括XML数据;定义XML数据的XML模式;XML类型,其是可以在Java内访问XML数据的Java类型;以及可以从XML模式生成XML类型的编译器。2.根据权利要求1所述的系统,其中所述编译器可以基于Java万维网服务方法的定义来生成XML类型。3.根据权利要求1所述的系统,其中所述编译器可以基于定义文件来生成XML类型。4.根据权利要求1所述的系统,其中所述编译器可以将Java方案编译成一个或多个常规Java类型。5.根据权利要求1所述的系统,其中所述XML类型可以是可移动光标,能在XML数据内的任意地方进行读取。6.根据权利要求1所述的系统,其中所述XML类型可以是不可移动值,能引用XML数据的固定部分。7.根据权利要求1所述的系统,其中所述XML类型可以在多个Java组件之间共享。8.根据权利要求1所述的系统,其中所述XML类型可以在Java内更新XML数据。9.根据权利要求1所述的系统,其中所述XML类型可以使用Java类型方法来访问和更新Java数据。10.根据权利要求1所述的系统,其中所述XML类型可以访问和更新数据库。11.根据权利要求1所述的系统,其中所述XML类型可以进行多个XML数据操作,包括查询XML数据、在XML类型之间转换、以及在XML数据文件上进行迭代。12.根据权利要求1所述的系统,还包括可以定义XML数据的合法类型的XML模式,该合法类型包括对数据类型和数据范围的约束;以及对数据类型和XML类型范围的约束。13.根据权利要求12所述的系统,其中所述编译器可以由关于XML数据的合法类型的XML模式生成XML类型的约束。14.根据权利要求12所述的系统,其中所述对XML类型的约束可以验证该XML类型。15.一种在XML和Java之间转换类型的系统,包括Java类型;XML类型,其是可以在Java内访问XML数据的Java类型;以及可以将源类型转换为目标类型的XML转换,其中所述源类型和目标类型可以是XML类型或Java类型。16.根据权利要求15所述的系统,还包括XML转换的全局记录,可以查询在源类型和目标类型之间的现有XML转换。17.根据权利要求15所述的系统,还包括XML转换库,可以在源类型和目标类型之间通过名称来查询现有的XML转换。18.一种在XML和Java之间排列和解排列数据的系统,包括XML数据;可以将XML数据作为可搜索索引保持的轻便XML存储器;XML类型,其是可以在Java内引用该轻便XML存储器并访问XML数据的Java类型。19.一种在XML和Java之间排列和解排列数据的系统,包括XML数据;可以将XML数据保持在文本或标记级别的轻便XML存储器;XML类型,其是可以在Java内引用该轻便XML存储器并访问XML数据的Java类型。20.根据权利要求19所述的系统,其中所述轻便XML存储器可以将保持的XML数据表示为分层结构。21.根据权利要求20所述的系统,其中所述分层结构可以是树。22.根据权利要求19所述的系统,其中所述XML类型可以增量地访问XML数据。23.一种用于在XML和Java之间排列和解排列数据的方法,包括用XML模式定义XML数据;在Java内通过XML类型访问XML数据;以及用编译器从XML模式中生成XML类型。24.根据权利要求23所述的方法,还包括基于Java万维网服务方法的定义来生成XML类型。25.根据权利要求23所述的方法,还包括基于定义文件来生成XML类型。26.根据权利要求23所述的方法,还包括将Java方案编译为一个或多个常规Java类型。27.根据权利要求23所述的方法,还包括将所述XML类型用作可移动光标来在XML数据内的任意地方进行读取。28.根据权利要求23所述的方法,还包括将所述XML类型用作不可移动值来引用XML数据的固定部分。29.根据权利要求23所述的方法,还包括在多个Java组件之间共享所述XML类型。30.根据权利要求23所述的方法,还包括在Java内通过所述XML类型更新XML数据。31.根据权利要求23所述的方法,还包括使用Java类型方法来访问和更新Java数据。32.根据权利要求23所述的方法,还包括通过所述XML类型来访问和更新数据库。33.根据权利要求23所述的方法,还包括通过所述XML类型来利用多个XML数据操作,这些操作包括查询XML数据、在XML类型之间转换、以及在XML数据文件上进行迭代。34.根据权利要求23所述的方法,还包括通过XML模式定义XML数据的合法类型,该合法类型包括对数据类型和XML数据范围的约束。35.根据权利要求34所述的方法,还包括由关于XML数据的合法类型的XML模式生成数据类型和XML类型范围的约束。36.根据权利要求34所述的方法,还包括利用所述对XML类型的约束来验证该XML类型。37.一种在XML和Java之间转换类型的方法,包括采用...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。