X部件-模式化的数据包装器的制作方法

文档序号:6620616阅读:184来源:国知局

专利名称::X部件-模式化的数据包装器的制作方法
背景技术
:计算机系统是由各人以许多不同方式使用的重要工具。计算机应用程序在计算机系统上执行。这些计算机应用程序是软件程序,它们通常由应用程序开发者书写、被编译成目标代码、然后被储存在各种计算机系统上用于操作。计算机应用程序的创建和使用一般而言是计算机技术的一个众所周知的方面。当创建计算机应用程序时,开发者通常选择一种特定的环境或平台,最终可以在该环境或平台上执行应用程序。例如,当书写应用程序时,开发者将选择微软的Windows平台、Linux平台或某一其它平台。作为这一选择的结果,程序开发者可具有用于书写应用程序的不同选项。因此,运行在各种系统上的各种应用程序响应于用户输入处理信息,并将所得的数据保存为文件。保存在文件中的数据通常以使得数据只能由产生文件的应用程序使用的方式来保存,或者以使得数据只在其中创建了该数据的平台类型上可用的方式来保存。然而,数据也可能在不同于用于创作该数据的应用程序的应用程序环境中有用,或者数据可能同样在不同于用于创作数据的平台的其它平台中有用。依照本发明,数据可以保存在文件中,使得即使其它程序运行在不同于用于创作该数据的平台的平台上,其它程序也可使用并显示该数据。
发明内容本发明针对x部件(xPart),它们是模式化的数据包装器。x部件提供了一套办公应用程序能够用于在它们之中以及其它应用程序之中共享数据的手段。来自任意资源的数据被选中并与模式相关联。模式用于定义数据的数据类型,它便于表示数据。唯一的标识符与来自任意资源的数据相关联,这允许用户提供其中将显示数据的环境。数据依照由该模式提供的定义来显示。依照本发明的一方面,一种用于包装数据的方法包括确定来自任意数据源的数据信号。提供了一种用于确定与该数据信号相关联的参数的主模式。提供了一唯一的标识符,它与来自任意资源的数据信号相关联。该数据信号依照所确定的参数在用于将数据信号传达给用于的视图中被动态地表示。依照本发明的另一方面,一种用于包装数据的计算机可读介质包括用于确定来自任意数据源的数据信号的指令。提供了一种主模式用于确定与该数据信号相关联的参数。提供了一唯一标识符,它与来自任意资源的数据信号相关联。该数据信号依照所确定的参数在用于将数据信号传达给用户的视图中被动态地表示。依照本发明的又一方面,一种用于包装数据的系统包括用于确定来自任意数据源的数据信号的装置。提供了一种主模式用于确定与该数据信号相关联的参数。提供了一唯一标识符,它与来自任意资源的数据信号相关联。该数据信号依照所确定的参数在用于将数据信号传达给用户的视图中被动态地表示。依照本发明的再一方面,一种数据结构包括一种x部件(xPart),它与一模式相关联,并被配置成确定用于将数据提供到应用程序编辑表面的数据源;并包括一种x部件引用元素,它被配置成识别对强类型化文档的入口点,该文档用于表示来自由x部件所确定的数据源的数据上的视图。图1示出了可在本发明的一个示例性实施例中使用的示例性计算装置。图2是依照本发明使用x部件的示例情形的屏幕视图。图3是依照本发明与x部件相关联的信息成分的顶层图示。图4是依照本发明具有用于x部件的数据成分的数据层图示。图5是依照本发明使用x部件的文档的框图。图6是依照本发明使用x部件的示例文档的清单。图7是依照本发明使用x部件的流程图。具体实施例方式贯穿本说明书和权利要求书,以下术语采用明确地与其相关联的意义,除非上下文清楚地另外指明。此处使用的技术和接口规范并不旨在表示应当用于书写特定对象或方法的特定语言。相反,这些术语和接口规范用于描述接口或对象的功能和内容,例如函数名、输入、输出、返回值、以及要使用该接口执行什么操作(或要由该对象执行什么操作)。说明性操作环境参考图1,用于实现本发明的一个示例性系统包括诸如计算装置100的计算装置。在十分基本的配置中,计算装置100通常包括至少一个处理单元102和系统存储器104。根据计算装置的确切配置和类型,系统存储器104可以是易失(如RAM)、非易失(如ROM、闪存等)或两者的某一组合。系统存储器104通常包括操作系统105、一个或多个应用程序106,并且可包括程序数据107。在一个实施例中,应用程序106包括文字处理应用程序120,它进一步包括ML编辑器122。这一基本配置在图1中由虚线108内的组件示出。计算装置100可具有另外的特征或功能。例如,计算装置100也可包括另外的数据存储设备(可移动和/或不可移动),如磁盘、光盘或磁带。这类另外的存储在图1中由可移动存储109和不可移动存储110示出。计算机存储介质可包括以用于储存如计算机可读指令、数据结构、程序模块或其它数据等信息的任一方法和技术实现的易失和非易失、可移动和不可移动介质。系统存储器104、可移动存储109和不可移动存储110都是计算机存储介质的示例。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁盒、磁带、磁盘存储或其它磁存储设备、或可以用来储存期望的信息并可由计算装置100访问的任一其它介质。任一这类计算机存储介质可以是装置100的一部分。计算装置100也可具有(多个)输入设备112,如键盘、鼠标、输入笔、语音输入设备、触摸输入设备等等。也可包括(多个)输出设备114,如显示器、扬声器、打印机等等。这些在本领域中都是众所周知的,无需在此详细描述。计算装置100也包含允许装置如通过网络与其它计算装置118进行通信的通信连接116。通信连接116是通信介质的一个示例。通信介质通常可以诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据实施,并包括任一信息传送介质。术语“已调制数据信号”指以对信号中的信息进行编码的方式设置或改变其一个或多个特征的信号。作为示例而非局限,通信介质包括有线介质,如有线网络或直接连线连接,以及无线介质,如声学、RF、红外和其它无线介质。本发明使用的术语计算机可读介质包括存储介质和通信介质。信息集成(x部件)本发明针对x部件,它便于来自复杂数据源的信息交换。x部件以最小的用户手动干预提供了一种在文档间共享信息的与平台和文档类型无关的方式。例如,开发者可插入并检索用于具有单组代码的任一类型文档的强类型化数据(如,对其已知了模式的XML数据)。在文档之间共享数据的常规方法通常要求手动干预以将信息从第一类型的第一文档(诸如Excel)带到第二类型的第二文档(诸如PowerPoint)。该方法是易于出错的,并通常在每次要在第二文档中重定目标(repurpose)、储存或发行信息是需要手动干预(诸如剪切和粘贴)。依照本发明,可以在第二文档中例示复杂数据源的视图,作为对复杂数据源的有效查询(livequery)。例如,可以将丰富的商业信息视图粘贴到PowerPoint卡片组(deck)中,使得每次当察看该PowerPoint卡片组时,通过同期评估来自复杂数据源的数据来产生在Excel内创建的作为商业信息引擎的图表或数据透视表。图2是依照本发明使用x部件的示例情形的屏幕视图。在示例情形中,用户可能遇到诸如该图中所示的屏幕200。屏幕200包括用户正在编辑的电子信息(例如电子文档或文件)的视图210。电子信息包括用户信息220,它是通常由用户提供的信息。屏幕200还包括x部件的可视化230和240。x部件可以被选中,并从复杂数据源(如x部件数据源250)中被“拖曳”到视图210中,由此将x部件插入到视图中。x部件数据源250包括,例如,向其提供x部件的合同条款库。合同条款(例如,条款260)的可视化表示在x部件数据源250的视图中显示。选择并拖曳合同条款的可视化可导致产生该可视化的x部件被插入到例如包含被编辑的电子信息的文件中。x部件通常是与预定义的模式相关联的纯数据实体。预定义模式的一部分被设计成允许任意数据内容以及x部件相关信息的容纳。x部件表示用于将数据提供到应用程序编辑表面中的片段或另一数据源。x部件引用(xPartReference)元素用于识别对用于x部件数据上的视图的文档的入口点。图3是依照本发明与x部件相关联的信息成分的顶层图示。视图210是x部件320和电子文档330的可视化。文档330可以是例如强类型化文档。商业系统240被安排成向数据适配器350提供信息以在x部件320中使用。数据适配器350可以轮询商业系统340以获得信息,和/或接收从商业系统340中“推(push)”出的信息。在各种实施例中,x部件320可以(通过轮询信息或通过被推出的信息)从各种来源接收信息,这将在下文进一步讨论。模式库360可用于关联和找出用于补充名字空间或模式的资源。模式库360允许x部件的容易部署和同步。片段库370提供了强类型化数据作为可重复使用的成分,并可为强类型化数据提供诸如可视化表示、模式和代码等资源。图4是依照本发明具有用于x部件的数据成分的数据层图示。商业信息系统400通常提供了有用信息的来源,它们示出了web服务、文档、数据库、信息销售商和指引(light)。来自商业系统400的有用信息可以使用x部件被集成到强类型化文档420中。x部件可以作为XML数据在强类型文档中存在。x部件可包含其自己的模式内的数据,和/或可包含到远程数据源的链接信息。模式库430提供了所有的x部件所符合的模式。提供的模式定义了一种用于定义x部件的名字空间。然而,任何x部件可以用附加的模式信息来扩充,以形成唯一可标识的实体,它可以以特定的数据表示任务为目标。另外,可以提供片段库440,以便于将相关的x部件组合在一个库中便于使用。因此,片段库440是可任选的,并且可以部分或全部与模式库440相组合。图5是依照本发明使用x部件的框图。文档500可包括头部510,它通常包含与文档500相关联的元数据。头部510也可用于安全性和认证目的。文档500也包括应用程序数据,它进一步包括了x部件引用。x部件引用包含对将数据提供到引用中(并最终提供到正被编辑的强类型化文档的用户视图中)的有效x部件的引用。文档500还包括用户数据,它封装了x部件本身。x部件通常是由预定义模式所定义的纯数据实体。图6是依照本发明使用x部件的示例文档的清单。清单600包括头部610,它可以用于诸如认证和信息安全等目的。清单600还包括应用程序数据段620,其中定义了x部件引用,如x部件引用630。x部件引用630包括一唯一标识符,通过该标识符,x部件引用由一x部件来引用。清单600还包括用户数据段640。用户数据段640包括x部件,如x部件650。x部件650包括用于标识它所关联的x部件引用的唯一标识符。例如,x部件650包括用于参考应用程序数据段620中相关联的x部件引用的唯一标识符“707”。X部件650也包括到要可视化并最终在用户视图中表示的信息的链接。(该表示可涉及视频和/或音频数据。)图7是依照本发明使用x部件的流程图。在框710,确定来自任意资源的数据信号。数据信号可以是来自所选择的资源的任何商业信息(诸如电子表格信息)。数据信号可以通过数据适配器来提供。数据适配器可轮询所选择的资源以获得信息(诸如在插入检验点时刻之后的新信息),和/或所选择的资源可以将信息“推”到数据适配器。可使用高速缓存来增强数据访问时间。在框720,提供用于确定数据信号参数的模式。该模式可以选择模式库(和/或片段库),使得所选择的模式定义了数据信号的数据类型。该模式也可定义用于显示(或传达、以音频格式包括)来自数据信号的数据。在框730,将一唯一标识符与该数据信号相关联。该唯一标识符允许用户为该数据信号提供用户提供的环境信息。用户提供的数据可以通过例如键盘、鼠标活动、语音识别等等被输入。在框740,依照所确定的参数动态地表示该数据信号。可使用相关联的可视化例程来与用于提供的环境信息相一致地显示(或传达)数据信号。强类型化文档模式以下所示是用于实施本发明的模式的示例清单。<officeEnvelope>{1..1}Sequenceof{0..1}<header>All,inanyorder{0..1}<workflow>{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</workflow>{0..1}<integrity>xsd-typestring</integrity>{0..1}<confidentiality>xsd-typestring</confidentiality>EndAll</header>{1..1}<applicationData>{1..1}Sequenceof{0..unbounded}<xsdAnyelement>EndSequence</applicationData>{1..1}<userData>{1..1}Sequenceof{0..unbounded}<xPart@id=xsd-typeID{optional}@payloadns=xsd-typeanyURI{optional}@mainPart=xsd-typeboolean{optional}@shouldCache=xsd-typeboolean{optional}@name=xsd-typestring{optional}@description=xsd-typestring{optional}>All,inanyorder{0..1}<source>{1..1}Sequenceof{0..1}<adapter@dataUpdateFrequency=defined-typemsoedataUpdateFrequencyType{1..1}xsd-typetokenenumvalFileOpenOnce{required}@dataType=xsd-typestring{optional}@binary=xsd-typeboolean{optional}>{1..1}Sequenceof<provider>xsd-typestring</provider><query>{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</query><inputParameters>{0..unbounded}Sequenceof{1..1}<parameter>{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</parameter>EndSequence</inputParameters>{0..unbounded}<xsdAnyelement>EndSequence</adapter>{0..1}<postProcess>{1..1}Sequenceof{1..1}<xpath@selectionNamespaces=xsd-typestring{optional}></xpath><postProcessTransform>defined-typemsoetransformType{1..1}@linkedTransform=xsd-typeanyURI{optional}{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</postProcessTransform>EndSequence</postProcess>{0..1}<inlineSource>{1..1}Sequenceof{0..unbounded}<xsdAnyelement>EndSequence</inlineSource>EndSequence</source>{0..1}<inlineData>{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</inlineData>EndAll</xPart>EndSequence</userData>EndSequence</officeEnvelope>x部件引用包含对将数据提供到引用中并因此提供到应用程序编辑表面的有效x部件的引用。<xPartReference@idref=xsd-typeIDREF{optional}>{1..1}Sequenceof{1..1}<referenceParameters@editable=xsd-typeboolean{optiona1}@viewUpdateFrequency=defined-typemsoeviewUpdateFrequencyType{1..1}xsd-typetokenenumvalHotWarmCold{optional}>EmptyElement</referenceParameters>{1..1}<xpath@selectionNamespaces=xsd-typestring{optional}></xpath>{1..1}<uiTransforms>{1..1}Sequenceof{0..1}<inputTransform>defined-typemsoetransformType{1..1}@linkedTransform=xsd-typeanyURI{optional}{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</inputTransform>{0..1}<outputTransform>defined-typemsoetransformType{1..1}@linkedTransform=xsd-typeanyURI{optional}{1..1}Sequenceof{0..1}<xsdAnyelement>EndSequence</outputTransform>EndSequence</uiTransforms>{1..1}<referenceApplicationData>{1..1}Sequenceof{0..unbounded}<xsdAnyelement>EndSequence</referenceApplicationData>EndSequence</xPartReference>以上说明书、示例和数据提供了对本发明的组成部分的制造和使用的完整描述。由于本发明的许多实施例可以在不脱离本发明的精神和范围的情况下使用,因此本发明驻留在所附权利要求书中。权利要求1.一种用于包装数据的方法,其特征在于,包括确定来自任意数据源的数据信号;提供用于确定与所述数据信号相关联的参数的主模式;提供与来自任意资源的所述数据信号相关联的唯一标识符;以及依照所确定的参数在用于将所述数据信号传达给用户的视图中动态地表示所述数据信号。2.如权利要求1所述的方法,其特征在于,所述数据信号是来自商业信息系统的信息。3.如权利要求1所述的方法,其特征在于,与所述数据信号相关联的参数是通过检查所述数据信号的内容来确定的。4.如权利要求1所述的方法,其特征在于,所述数据信号是使用与所述数据信号相关联的例程来动态地表示的。5.如权利要求4所述的方法,其特征在于,所述例程与所述主模式相关联。6.如权利要求6所述的方法,其特征在于,还包括在用于将所述数据信号传达给用户的视图内表示用户提供的数据,其中,所述唯一标识符被用于允许所述用户提供的数据为所述数据信号提供环境。7.如权利要求1所述的方法,其特征在于,所述数据信号是通过从库中选择数据来确定的,对于所述库,所述主模式或一个次模式已被用于定义所述库中的项。8.如权利要求1所述的方法,其特征在于,所述主模式包括任意数据内容。9.如权利要求1所述的方法,其特征在于,所述数据信号是通过对所述任意数据源执行有效查询来确定的。10.一种包括用于包装数据的指令的计算机可读介质,包括确定来自任意数据源的数据信号;提供用于确定与所述数据信号相关联的参数的主模式;提供与来自任意资源的所述数据信号相关联的唯一标识符;以及依照所确定的参数在用于将所述数据信号传达给用户的视图中动态地表示所述数据信号。11.如权利要求10所述的介质,其特征在于,所述数据信号是来自商业信息系统的信息。12.如权利要求10所述的介质,其特征在于,与所述数据信号相关联的参数是通过检查所述数据信号的内容来确定的。13.如权利要求10所述的介质,其特征在于,所述数据信号是使用与所述数据信号相关联的例程来动态地表示的。14.如权利要求13所述的介质,其特征在于,所述例程与所述主模式相关联。15.如权利要求10所述的介质,其特征在于,还包括在用于将所述数据信号传达给用户的视图内表示用户提供的数据,其中,所述唯一标识符用于允许所述用户提供的数据为所述数据信号提供环境。16.如权利要求10所述的介质,其特征在于,所述数据信号是通过从库中选择数据来确定的,对于所述库,所述主模式或一个次模式之一已被用于定义所述库中的项。17.如权利要求10所述的介质,其特征在于,所述主模式包括任意数据内容。18.如权利要求10所述的介质,其特征在于,所述数据信号是通过对所述任意数据源执行有效查询来确定的。19.一种用于包装数据的系统,其特征在于,包括用于确定来自任意数据源的数据信号的装置;用于提供用于确定与所述数据信号相关联的参数的主模式的装置;用于提供与来自任意资源的所述数据信号相关联的唯一标识符的装置;以及用于依照所确定的参数在用于将所述数据信号传达给用户的视图中动态地表示所述数据信号的装置。20.如权利要求19所述的系统,其特征在于,所述数据信号是来自商业信息系统的信息。21.如权利要求19所述的系统,其特征在于,与所述数据信号相关联的参数是通过检查所述数据信号的内容来确定的。22.如权利要求19所述的系统,其特征在于,所述数据信号是使用与所述数据信号相关联的例程来动态地表示的。23.如权利要求22所述的系统,其特征在于,所述例程与所述主模式相关联。24.如权利要求19所述的系统,其特征在于,还包括在用于将所述数据信号传达给用户的视图内表示用户提供的数据,其中,所述唯一标识符被用于允许所述用户提供的数据为所述数据信号提供环境。25.如权利要求19所述的系统,其特征在于,所述数据信号是通过从库中选择数据来确定的,对于所述库,所述主模式或一个次模式之一已被用于定义所述库中的项。26.如权利要求19所述的系统,其特征在于,所述主模式包括任意数据内容。27.如权利要求19所述的系统,其特征在于,所述数据信号是通过对所述任意数据源执行有效查询来确定的。28.一种数据结构,包括x部件,它与一模式相关联,并被配置成确定用于将数据提供到应用程序编辑表面中的数据源;以及x部件引用元素,它被配置成识别对所述数据结构的入口点,用于表示来自由所述x部件确定的数据源的数据上的视图。29.如权利要求28所述的数据结构,其特征在于,所述x部件包括一唯一标识符,通过所述唯一标识符,所述x部件引用元素参考所述x部件。30.如权利要求28所述的数据结构,其特征在于,还包括来自不同于所确定的数据源的来源的用户提供的数据。31.如权利要求28所述的数据结构,其特征在于,还包括被配置成表示来自所确定的数据源的数据的可视化表示例程。32.如权利要求31所述的数据结构,其特征在于,所述可视化表示例程用于向用户表示音频。全文摘要x部件是模式化的数据包装器,它提供了一套办公应用程序用于在它们之间和其它应用程序之间共享数据的手段。来自任意资源的数据被选中并与一模式相关联。模式用于定义数据的数据类型,这便于表示该数据。一唯一标识符与来自任意资源的数据相关联,这允许用于提供其中显示该数据的环境。数据依照由该模式提供的定义来显示。文档编号G06F17/00GK1707430SQ20051007464公开日2005年12月14日申请日期2005年5月19日优先权日2004年5月21日发明者Z·P·伍德尔,M·H·卢科夫斯基,J·保利,G·S·林霍斯特申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1