使用上下文有关的网格的查询构造器和创建查询的方法技术

技术编号:2853307 阅读:198 留言:0更新日期:2012-04-11 18:40
公开了一种用于提供用于至少一种查询语言的查询构造器的方法和系统。该方法和系统包括提供多个网格和至少一个用于包括所述多个网格中的至少一个的网格组的资源。所述网格对应所述查询语言的多个功能单元。所述网格组对应于功能单元中的一个。所述资源对应所述功能单元和所述网格组。所述资源能够用作所述网格组的至少一个变元。

【技术实现步骤摘要】

本专利技术涉及计算机系统,更具体地说,涉及创建查询的方法和系统。
技术介绍
数据,诸如文件中的扩展标记语言(XML)数据或者关系型数据库中的数据,可用于各种目的使用查询而被查询。查询以特定的查询语言表示,诸如XML查询语言(XQUERY)和结构化查询语言(SQL)。查询通常包括一组用于确定哪些数据被访问的条件。例如,这些条件可包括if-then-else、for、concatenate和return语句。用于这些函数语句的变元可包括各种资源,诸如特定数据和其它函数语句。复杂的查询通常包括多个用于进一步明确被查询的数据的条件。根据在查询中指明的条件,适当的信息被访问、返回或者进行其它处理。为了无需帮助地创建查询,通常要求用户具有查询语言的语义和语法的详细知识。因此,用户必须了解该语言的术语或者语义。另外,用户必须了解如何将该语言的术语或者语法放在一起,以使查询是可理解的。使用术语含义(语义)和语法(在创建特定查询中这些术语如何相关)的这些知识,用户可以表示所希望的查询,并访问感兴趣的数据。为了方便创建查询,可以使用各种传统的工具。在一些实例中,可以使用传统的查询构造器,诸如传统的SQL查询构造器。这些传统的查询构造器对于具有一定的所使用的查询语言的语义和/或语法的知识的初学者特别有用。然而,更熟练的用户也会发现传统的查询构造器特别在表示复杂的查询时有用。例如,传统的SQL查询构造器可允许用户表示包括多个函数语句的复杂的查询。可选择地,可以使用传统的映射工具。这样的传统的映射工具允许用户将源XML映射到所期望的输出XML。接着,传统的映射工具生成查询,而无需用户清楚地知道该工具。因此,使用这种映射工具,用户可以至少表示简单的查询。尽管可以使用传统的查询构造器和映射工具,但是本领域的普通技术人员很容易认识到这样的传统的查询构造器和映射工具对于某些脚本语言的作用有限。这样的脚本语言,包括XML,相对复杂。例如,这样的脚本语言可包括对复杂的查询必须定义的逻辑和变量定义。为了创建复杂的查询,大多数传统的查询构造器通常还要求用户了解这些查询语言的语义。可选择地,其它传统的查询构造器能够对用户隐藏这些查询语言的语义。通常,这样的传统的查询构造器只向用户观看和呈现整个查询。然而,如果用户没有更多的查询语言的语义和/或语法的知识,也不能在这样的传统的查询构造器中创建复杂的查询。同样地,传统的映射工具隐藏查询语言的逻辑和语义,但是如果没有更多地了解查询语言的语义,其也不允许用户创建复杂的查询。因此,需要一种更灵活的查询构造器,其允许用户用有限的查询语言(诸如XQUERY)的语义的知识创建复杂的查询。本专利技术满足了这个需要。
技术实现思路
本专利技术提供一种用于提供至少一种查询语言的查询构造器的方法和系统。本方法和系统包括提供多个网格和至少一个用于多个网格的网格组的资源。所述多个网格对应至少一种查询语言的多个功能单元。所述网格组包括所述多个网格中的至少一个,并对应所述多个功能单元中的一个功能单元。所述至少一个资源对应所述功能单元和所述网格组。所述至少一个资源能够用作所述网格组的至少一个变元。根据在此公开的方法和系统,本专利技术提供一种查询构造器,其可由具有有限查询语言的语义知识的用户使用。因此,该查询构造器使用更简单、灵活,并能用于创建复杂的查询。附图说明图1是根据本专利技术的查询构造器的一个实施例的高级图;图2是根据本专利技术的查询构造器的一个实施例的更详细的图;图3是根据本专利技术的查询构造器的用户接口的一个实施例的表示;图4是根据本专利技术的查询构造器的用户接口的另一个实施例的表示;图5是描述在根据本专利技术的查询构造器的一个实施例的特定网格组之间的关系的图;图6是描述根据本专利技术的创建查询的方法的一个实施例的流程图。具体实施例方式本专利技术涉及计算机系统。以下的描述能够使本领域的普通技术人员实现和使用本专利技术,并在专利申请及其要求中提供。对于本领域的普通技术人员来说,对在此描述的最佳实施例、基本原理和特征的各种修改是非常显而易见的。因此,本专利技术并不意味着将局限于所示的实施例,而是与在此描述的原理和特征一致的最大范围。本专利技术提供用于提供至少一种查询语言的查询构造器的方法和系统。本方法和系统包括提供多个网格和至少一个用于包括多个网格中的至少一个的网格组的资源。多个网格对应至少一种查询语言的多个功能单元。网格组对应多个功能单元中的一个功能单元。至少一个资源对应功能单元和网格组。至少一个资源能够用作网格组的至少一个变元。本专利技术将根据特定的查询语言和特定的功能单元进行说明。然而,本领域的普通技术人员很容易认识到本方法和系统与使用其它查询语言和定义其它功能单元是一致的。为了更具体地说明根据本专利技术的方法和系统,参照图1,其描述了根据本专利技术的查询构造器100的一个实施例的高级图。查询构造器100结合数据110使用。换句话说,用查询构造器100创建的查询可用于查询数据110。查询构造器100包括用于在创建查询中帮助用户的用户接口102。具体地,查询构造器100的用户接口102以中立的方式向用户提供信息,这种方式是基于功能单元,而不是仅基于整个查询。功能单元与特定的操作相关联,并且通常是查询的一部分。功能单元的例子包括诸如if-then-else、return和for语句的语句。在最佳的实施例中,用户接口102利用被分成网格组的网格向用户提供输出和从用户接收输入,其中每个网格组对应特定的功能单元。图2是根据本专利技术的查询构造器的一个实施例的更详细的图,用于以一种或者多种查询语言表示查询。具体地,描述了用户接口102’的一个实施例。在最佳实施例中,查询语言是XQUERY。然而,另外的查询语言,包括但不限于SQL,也可以用在某些实施例中。查询构造器的用户接口102’包括被分成网格组的网格。在图2中描述了一个网格组130。每个网格组130都对应一个特定的功能单元,并且包括至少一个网格。例如,对于XQUERY,网格组130可对应if-then-else语句、FLWOR语句、其它可用的函数、允许定义资源的属性的资源属性、变量定义、return语句、for语句和/或其它条件语句。优选地,网格组130中的每个网格都包括一个或者多个字段132,用户向其中输入信息。网格组130中提供的字段取决于网格组130对应的功能单元。因此,字段的数量、在特定字段中允许的变元和由每个字段表示的一部分功能单元都取决于该功能单元。在最佳实施例中,字段对应网格组130中的网格的列、行和/或单元格。另外,优选地,网格组130包括其它特征134,诸如也取决于对应网格130的功能单元的下拉列表和其它选项。用户接口102’还包括资源120。由用户接口102’提供的资源120取决于网格组130,并因此取决于网格组130对应的功能单元。例如,资源120可包括取决于对应网格组130的功能单元的数据类型、文件和/或功能单元。资源120结合网格组130使用。在最佳实施例中,资源120可由用户选择并被拖到和放入网格组130的字段中。图3是根据本专利技术的查询构造器的用户接口102”的一个实施例的表示。用户接口102”被描述为用于查询语言XQUERY。然而,并不限制将类似的用户接口用于另外的查询语言。另外,正被创建的查询与订单信本文档来自技高网
...

【技术保护点】
一种用于至少一种查询语言的查询构造器,包括:多个网格,对应所述至少一种查询语言的多个功能单元;网格组,包括所述多个网格中的至少一个,并对应所述多个功能单元中的一个功能单元;至少一个用于所述网格组的资源,所述至少一个资 源对应所述功能单元和所述网格组,所述至少一个资源能够用作所述网格组的至少一个变元。

【技术特征摘要】
US 2004-11-10 10/985,4311.一种用于至少一种查询语言的查询构造器,包括多个网格,对应所述至少一种查询语言的多个功能单元;网格组,包括所述多个网格中的至少一个,并对应所述多个功能单元中的一个功能单元;至少一个用于所述网格组的资源,所述至少一个资源对应所述功能单元和所述网格组,所述至少一个资源能够用作所述网格组的至少一个变元。2.如权利要求1所述的查询构造器,其中,所述网格组包括至少一个字段,所述至少一个资源用作所述至少一个字段的至少一个变元。3.如权利要求1所述的查询构造器,其中,所述至少一种查询语言包括XQUERY。4.如权利要求1所述的查询构造器,其中,所述至少一种查询语言包括SEQUEL。5.如权利要求1所述的查询构造器,其中,所述多个功能单元包括if-then-else语句、FLWOR语句、函数、资源属性、变量定义、return语句和for语句中的至少一个。6.如权利要求1所述的查询构造器,其中,所述至少一个资源包括用作所述网格组的至少一个变元的所述多个功能单元的一部分,所述多个功能单元的一部分取决于所述功能单元,并对应所述多个网格的一部分。7.如权利要求6所述的查询构造器,其中,响应用户选择所述多个功能单元的一部分中的一个,包括所述多个网格的一部分中的至少一个的第二网格组被嵌入所述的表格组中。8.一种用于至少一种查询语言的查询构造器,包括多个网格,对应所述至少一种查询语言的多个功能单元;网格组,包括所述多个网格中的至少一个,并对应所述多个功能单元中的一个功能单元,所述多个网格中的每一个都包括至少一个用于接收至少一个变元的字段;至少一个用于所述网格组的资源,所述至少一个资源对应所述功能单元和所述网格组,所述至少一个资源能够用作至少一个变元,所述至少一个资源包括用作至少一个字段的至少一个变元的所述多个功能单元的一部分,并对应所述多个网格的一部分,所述多个功能单元的一部分基于所述功能单元。9.一种计算机可读介质,包含用于创建至少一种查询语言的查询的程序,所述程序包括用于响应被选择的功能单元而显示包括多个网格中的至少一个的网格组的指令,所述多个网格对应所述至少一种查询语言的多个功能单元,所述网格组对应所述多个功能单元中的功能单元;用于显示至少一个用于所述网格组的资源的指令,所述至少一个资源对应所述功能单元和所述网格组,所述至少一个资源能够用作所述网格组的至少一个变元;以及用于允许所述至少一个资源被选择用于所述网格组的指令。10.如权利要求9所述的计算机可读介...

【专利技术属性】
技术研发人员:H辛格T彼得松
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1