CN107077499B - 用于内容管理系统的映射定义的生成 - Google Patents
用于内容管理系统的映射定义的生成 Download PDFInfo
- Publication number
- CN107077499B CN107077499B CN201580058408.7A CN201580058408A CN107077499B CN 107077499 B CN107077499 B CN 107077499B CN 201580058408 A CN201580058408 A CN 201580058408A CN 107077499 B CN107077499 B CN 107077499B
- Authority
- CN
- China
- Prior art keywords
- elements
- path length
- computer
- generating
- program instructions
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/954—Navigation, e.g. using categorised browsing
Abstract
本公开涉及用于内容管理系统的映射定义的生成。方法包括自动创建映射定义。该方法还包括分析外部数据结构,其中外部数据结构具有一个或多个元素。该方法还包括确定所述一个或多个元素的第一组元素中的每个元素的路径长度和出现次数。该方法还包括生成用于所述第一组元素的至少一个查询语句。该方法还包括至少部分地基于所生成的至少一个查询语句和所述第一组元素中的每个元素的路径长度生成映射定义。
Description
技术领域
本发明一般而言涉及web门户,并且更具体而言涉及映射用于web门户的数据结构。
背景技术
web门户通常是专门设计的网页,其以统一的方式将来自不同来源的信息组合在一起。通常,每个信息源获得小窗口(portlet),它是页面上用于显示信息的专用区域。经常,用户可以配置要显示的小窗口。门户的变体包括用于执行者和管理员的混搭(mashup)和内联网“仪表板(dashboard)”。以统一的方式显示内容的程度可能取决于预期用户和预期目的,以及内容的多样性。往往,设计重点在于用于配置和定制内容的呈现的某个主题以及所选的实现框架和/或代码库。此外,用户在组织中的角色可以确定哪些内容可以被添加到门户或从门户配置中删除。
门户可以使用搜索引擎应用编程接口(API)通过限制可搜索哪些域来允许用户搜索内联网内容而不是外部网内容。除了这种公共搜索引擎特征之外,web门户可以提供其它服务,诸如电子邮件、新闻、股票报价、来自数据库的信息、并且甚至娱乐内容。门户为企业和组织提供了一种为多个应用和数据库提供具有访问控制和过程的一致外观和感觉的方式,否则,该多个应用和数据库在各种统一资源定位器(URL)处是不同的web实体。可用的功能可以通过判定访问是来自经授权和认证的用户(员工、成员)还是匿名站点的访问者进行限制。
发明内容
本发明的实施例公开了一种用于确定主题的相似性的方法、计算机程序产品和系统。在一种实施例中,根据本发明,计算机实现的方法包括自动创建映射定义。该方法还包括分析外部数据结构,其中所述外部数据结构具有一个或多个元素。该方法还包括确定所述一个或多个元素的第一组元素中的每个元素的路径长度和出现次数。该方法还包括生成用于第一组元素的至少一个查询语句。该方法还包括至少部分地基于所生成的至少一个查询语句和第一组元素中的每个元素的所述路径长度来生成映射定义。
附图说明
图1是示出根据本发明的实施例的分布式数据处理环境的功能框图;
图2是绘出根据本发明的实施例的、用于映射外部数据并创建可以在图1的分布式数据处理环境内由web内容管理以声明方式使用的数据结构的程序的操作步骤的流程图;
图3绘出了根据本发明的实施例的数据馈送(data feed)的示例;
图4绘出了根据本发明的实施例的简档文本的示例;
图5绘出了根据本发明的实施例的解析树的示例;以及
图6绘出了根据本发明的实施例的、图1的服务器计算机、智能源服务器、web服务器和客户端设备的组件的框图。
具体实施方式
本发明的实施例的实现可以采取各种形式,并且随后将参考各图来讨论示例实现的细节。
图1是示出根据本发明的一种实施例的总体上示为100的分布式数据处理环境的功能框图。图1仅仅提供一种实现的图示,并不意味着对可以实现不同实施例的环境的任何限制。在不脱离由权利要求所述的本发明的范围的情况下,本领域技术人员可以对所绘出的环境做出许多修改。
分布式数据处理环境100包括全部通过网络108互连的服务器计算机102、客户端设备104和web服务器106。网络108表示例如电信网络、局域网(LAN)、广域网(WAN)(诸如因特网)或三者的组合,并且包括有线、无线和/或光纤连接。网络108包括能够接收和发送数据、语音和/或视频信号(包括包含语音、数据和视频信息的多媒体信号)的一个或多个有线和/或无线网络。
在所绘出的环境中,服务器计算机102是管理服务器、web服务器、或能够接收和发送数据的任何其它电子设备或计算系统中的一个或多个。在所绘出的实施例中,服务器计算机102映射外部数据并创建数据结构,该数据结构可以由web内容管理以声明方式使用。在一种实施例中,服务器计算机102表示利用多台计算机作为服务器系统的服务器计算系统,诸如在云计算环境中那样。在另一种实施例中,服务器计算机102表示膝上型计算机、平板计算机、上网本计算机、个人计算机(PC)、台式计算机、个人数字助理(PDA)、智能电话或能够经由网络108与客户端设备104和web服务器106通信的任何可编程电子设备。在另一种实施例中,服务器计算机102表示利用集群计算机和组件充当单个无缝资源池的计算系统。服务器计算机102包括简档生成器120和数据库130。
在所绘出的分布式数据处理环境100中,简档生成器120驻留在服务器计算机102上。在一种实施例中,简档生成器120操作以从各种信息源创建用于馈送的简档,诸如统一资源定位符(URL)。简档生成器120至少部分地基于信息源的数据格式(例如,可扩展标记语言(XML)、对象表示(JSON)、并发版本系统(CVS))来创建简档。术语“JavaScript”等可以在全球范围的各个司法管辖区受商标权保护,并且就这些商标权可以存在的范围而言,该术语在这里只是参考由商标适当命名的产品或服务被使用。为了方便起见,在讨论数据格式时,本申请将使用XLM。在本实施例中,简档包括控制信息源的内容作为门户上的内容呈现的映射。在一种实施例,即“交互式”实施例中,简档生成器120从用户接收识别馈送元素和简档元素的输入。在这种情况下,简档生成器120通过生成用于简档元素的路径语句将馈送元素与简档元素相关联。在示例中,简档生成器120接收提供到馈送的链接(诸如URL)的用户输入。简档生成器120可以确定馈送的数据格式,诸如Atom。简档生成器120接收识别馈送元素的用户输入,诸如“博客(blog)”,并且提供用于简档元素的名称,诸如“博客标题(blog title)”。作为响应,简档生成器120从实现代码生成用于元素的路径语句,诸如“/atom:feed/atom:title”。
在另一种实施例,即“自动化”实施例中,基于哪个简档生成器120在无需用户交互的情况下生成整个简档,简档生成器120接收识别馈送的用户输入。在这种实施例中,简档生成器120通过识别馈送中的数据生成简档。在示例中,用户提供到馈送的链接。简档生成器120遍历馈送并且自动生成具有用于所有馈送元素的简档元素的简档,包括简档生成器120基于馈送元素的名称生成简档元素名称。在一种实施例中,馈送可以是到网站的链接。在另一种实施例中,馈送可以是由网站交付的内容,诸如图5。
在还有的另一种实施例,即“合并”实施例中,简档生成器120接收用户识别的馈送以及该馈送的一个或多个元素。在这种实施例中,简档生成器120生成用于每个馈送元素的简档元素。简档生成器120识别馈送元素。然后简档生成器120为来自网站的馈送生成简档。在示例中,用户可以选择数据条目和元素名称,并在文档中编译它们,而不是在简档生成器120中编译它们。在另一种实施例中,用户可以在简档生成器120中创建文档。该文档可以包括要用于简档中的对应元素的名称。简档生成器120可以从用户接收馈送以及包含选择数据条目和元素名称的文档。简档生成器120可以识别在馈送的内容中提供的数据条目,并生成用于所提供的数据条目的简档元素。在提供元素名称的示例中,简档生成器120将使用所提供的元素名称,但是在其中没有提供元素名称的示例中,简档生成器120可以自动生成元素名称。将关于图2进一步详细绘出和描述简档生成器120。
在所绘出的实施例中,数据库130驻留在服务器计算机102上。在另一种实施例中,数据库130可以驻留在分布式数据处理环境100中的其它地方,诸如独立地作为能够经由网络108与服务器计算机102通信的独立数据库驻留。数据库130也可以驻留在诸如客户端设备104的客户端计算设备上。数据库是有组织的数据集合。数据库130用能够存储被服务器计算机102访问和利用的数据的任何类型的存储设备(诸如数据库服务器、硬盘驱动器或闪存)来实现。在其它实施例中,数据库130表示服务器计算机102内的多个存储设备。数据库130存储信息,诸如在各种示例中的数据结构、生成的简档、用户设置、元素名称、数据条目、馈送或包含由简档生成器120所利用的信息的文档。
在所绘出的实施例中,客户端设备104是桌面计算机、膝上型计算机、平板计算机、专用计算机服务器、智能电话或能够经由网络108与服务器计算机102和与分布式数据处理环境100内的各种组件和设备通信的任何可编程电子设备中的一个或多个。通常,客户端设备104表示能够执行机器可读程序指令并经由诸如网络108的网络与其它计算设备通信的任何可编程电子设备或可编程电子设备的组合。在实施例中,客户端设备104经由网络108将与网站有关的用户识别出的信息(诸如链接、来自网站的内容、数据条目等)发送到服务器计算机102。
在所绘出的环境中,web服务器106是管理服务器、web服务器或能够接收和发送数据的任何其它电子设备或计算系统中的一个或多个。在所绘出的实施例中,web服务器106托管或创建可由诸如客户端设备104的客户端设备和诸如服务器计算机102的服务器访问的网站。在一种实施例中,web服务器106表示利用多台计算机作为服务器系统的服务器计算系统,诸如在云计算环境中那样。在另一种实施例中,web服务器106表示膝上型计算机、平板计算机、上网本计算机、个人计算机(PC)、台式计算机、个人数字助理(PDA)、智能电话或能够经由网络108与客户端设备104和服务器计算机102通信的任何可编程电子设备。在另一种实施例中,web服务器106表示利用集群计算机和组件充当单个无缝资源池的计算系统。
图2是绘出根据本发明的实施例的简档生成器120的操作步骤的流程图。简档生成器120在服务器计算机102上操作、映射外部数据、并且创建可由web内容管理以声明方式使用的数据结构。在一种实施例中,简档生成器120从客户端设备104的用户接收馈送,其中馈送位于web服务器106上,这开始图2的操作步骤。图2的操作步骤可以以任何顺序进行(例如,接收数据馈送、解析接收到的数据、过滤元素、识别具有相同路径和属性名称的元素、识别重复出现的元素、从识别出的重复出现的元素识别列表元素、识别哪些元素是选择器以及哪些是内容属性、基于识别出的选择器和属性生成(一个或多个)查询语句、基于识别出的列表元素和所述(一个或多个)查询语句生成映射定义、或下面列出的步骤顺序)。
简档生成器120接收数据馈送(步骤202)。在一种实施例中,简档生成器120从客户端设备104接收数据馈送。在示例中,客户端设备104的用户将来自位于web服务器106上的站点的馈送发送到简档生成器120。在另一个示例中,客户端设备104的用户可以发送位于web服务器106上的网站的数据馈送以及由客户端设备104的用户用数据条目和元素名称先前创建的文档。
简档生成器120解析接收到的数据(步骤204)。在一种实施例中,简档生成器120从客户端设备104的用户接收web服务器106上的网站的馈送。在示例中,简档生成器120接收由馈送引用的数据并且然后将数据解析成至少一个特定于实现的对象(例如,文档对象模型(DOM)树)。在交互式实施例的示例中,客户端设备104的用户在步骤202中提供了馈送数据;并且因此,不需要解析来区分样板代码。简档生成器120通过利用诸如图5的解析树、抽象语法树或本领域技术人员已知的任何其它方法来解析接收到的数据。
简档生成器120对元素进行过滤(步骤206)。在一种实施例中,简档生成器120去除仅识别代码语言的特定解析元素、用于web内容管理(WCM)的语言等,并且不需要为简档生成映射定义。在“交互式”实施例的示例中,简档生成器120显示通过解析识别出的数据元素(参见步骤204),以使得客户端设备104的用户能够选择在路径生成期间要使用的条目。在该示例中,未被客户端设备104的用户选择的元素被过滤。在“交互式”实施例的另一个示例中,客户端设备104的用户可以为每个数据条目添加要在简档中使用的名称。在“自动化”实施例的示例中,所有元素可以用于路径生成,诸如图3中的部分302。在“合并”实施例的示例中,简档生成器120可以在馈送中找到包含作为由客户端设备104的用户创建的数据元素列表(例如,文档)的一部分的数据的元素,并且简档生成器120仅利用在路径生成器中找到的条目。在该示例中,如果元素的名称已由客户端设备104的用户提供,那么该名称将被添加到数据条目的列表。在一种实施例中,过滤的代码被删除,从而修改馈送数据的本地副本。在另一种实施例中,过滤的代码被忽略。在实施例中,步骤208和210与步骤212、214和216同时完成。在另一种实施例中,步骤可以以数字顺序进行。
简档生成器120识别重复出现的元素(步骤208)。在实施例中,简档生成器120从已解析和已过滤的元素列表中识别重复出现的元素。在示例中,简档生成器120识别元素并为该元素分配值一。在该示例中,简档生成器120继续从已解析和已过滤的元素列表中审查元素,并且如果定位识别出的元素的另一次出现,那么为该元素分配的值被增加值一。简档生成器120识别元素并为已分析和已过滤的元素列表分配值。在示例中,部分302每个具有在馈送中出现一次的名称和在每个馈送中出现两次的电子邮件。在一种实施例中,馈送可以具有少量数据并且重复出现的元素可能只出现一次。在示例中,在图3的部分302中,元素电子邮件已重复出现两次,而其它元素已出现一次。
简档生成器120从识别出的重复出现元素中识别列表元素(步骤210)。在实施例中,简档生成器120从在步骤208识别出的重复出现的元素列表中搜索具有最短路径长度的元素,其被识别为列表元素。在一个示例中,简档生成器120识别五个元素,每个元素具有相同的路径长度,其恰好是最短路径长度。在该示例中,简档生成器120然后识别五个元素中的哪一个具有最大数量的出现次数,并且具有最短路径长度和最大出现次数的元素被识别为列表元素。在示例中,在部分302中,电子邮件重复出现四次;但是,条目只出现两次并且它具有最短路径。在该示例中,条目是列表元素。
简档生成器120识别具有相同路径和属性名称的元素(步骤212)。在一种实施例中,简档生成器120在步骤206中从已过滤的元素中识别具有相同路径和属性名称的元素。在示例中,简档生成器120识别具有相同路径和相同属性名称的所有元素。在图5中的元素502和504的示例中,简档生成器120可以将第一元素<link rel=“self”href=http://host:port/path1/>和第二个元素<link rel=“self”href=http://host:port/path2/>识别为具有相同路径((“/link”)和相同属性名称(“rel”和“href”)。
简档生成器120识别哪些元素是选择器以及哪些元素是内容属性(步骤214)。在一种实施例中,简档生成器120识别对于在步骤212中识别出的具有相同属性名称的元素,属性的值是否重复。例如,在图5的元素502和504中,名称为“rel”的属性的值是“self”并且被重复,但是名称为“href”的属性的值不是,因为它在一次出现中是“http://host:port/path1”,而在另一次出现中为“http://host:port/path2”。在示例中,如果该属性值不重复,则简档生成器120将该属性标记为内容属性,并且如果该属性确实重复,则将该属性标记为选择器。在一种实施例中,简档生成器120还识别重复值是否超过阈值值,这包括重复出现的次数除以该属性的所有值的数量。例如,如果阈值值被设置在1/2并且如果“rel=“self””在七个链接中出现五次,则“rel=“self””将超过阈值。简档生成器120可以重复这个步骤以确定属性的值是否是内容(例如,该值很少出现或低于该阈值),或者该值是否是选择器(即,该值经常出现或等于或大于阈值)。
在实施例中,简档生成器120生成属性/值集合的树,其表示用于识别出的元素的选择器的组合。在一个示例中,简档生成器120识别用于属性“ref”的值“self”和“replies”。简档生成器120还识别用于属性“scheme”的值“xml”和“html”。在该示例中,“ref”和“scheme”中的每一个是相同元素的属性,该元素在该示例中被表示为“根”节点。示例树可能看起来像图5中的解析树506。简档生成器120将遍历解析树506并将路径存储到组合列表中的所有叶子,诸如路径508[@rel=‘self’and@scheme=‘xml’]、路径510[@rel=‘self’and@scheme=‘html’]、路径512[@rel=‘replies’and@scheme=‘xml’]和路径514[@rel=‘replies’and@scheme=‘html’]。
简档生成器120基于识别出的选择器和属性生成(一个或多个)查询语句(步骤216)。在一种实施例中,简档生成器120通过关于数据条目在馈送的文档中的位置分析该数据条目来生成查询语句。基于路径、选择器(属性名称/值对)和内容属性,简档生成器120生成对应的查询语句。例如,简档生成器120使用具有路径“/feed/entry/link”、选择器“rel='self'”和内容属性“href”的元素。生成的查询语句将读为“/feed/entry/link[@rel='self']/@href”。在另一种实施例中,选择器和内容属性之间没有区别,并且(一个或多个)查询语句利用具有路径和相关属性的元素来生成。
简档生成器120基于识别出的列表元素和(一个或多个)查询语句生成映射定义(步骤218)。在一种实施例中,简档生成器120生成包含例如在文档中使用的简档名称、命名空间等的基本信息的新简档。例如,基本信息可以由客户端设备的用户提供或在简档生成器120上预设。简档生成器120将由元素名称(列表元素)和路径语句(查询语句)组成的元素相加。如果元素名称没有被提供,则简档生成器120基于馈送中的条目的路径生成名称。在示例中,简档生成器120基于列表元素生成列表项目选择条目。例如,简档生成器120从图3中的部分302和304生成图4中的列表项目选择、项目属性和列表性质。简档生成器120检查路径是否以列表元素的路径开始。在该示例的一种变体中,路径以列表元素开始,并且简档生成器120使用该查询语句的项目属性。在该示例的另一个变体中,路径不以列表元素开始,并且简档生成器120使用查询语句的列表属性。例如,如果路径以图3的部分304中的“subtitle”开始,则简档生成器生成列表属性,诸如图4的最后一行。如果路径以“entry”开始,如图3的部分302中那样,则简档生成器120生成如图4所绘出的项目属性。
图6绘出了根据本发明说明性实施例的、作为服务器计算机102的代表的计算机600的组件的框图。应当认识到,图6仅仅提供一种实现的图示,并不意味着对可以实现不同实施例的环境的任何限制。可以对所绘出的环境做出许多修改。
计算机600包括通信结构602,其提供(一个或多个)计算机处理器604、存储器606、持久性存储装置608、通信单元610以及(一个或多个)输入/输出(I/O)接口612之间的通信。通信结构602可以用被设计用于在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备和系统内的任何其它硬件组件之间传递数据和/或控制信息的任何体系架构来实现。例如,通信结构602可以用一条或多条总线来实现。
存储器606和持久性存储装置608是计算机可读存储介质。在该实施例中,存储器606包括随机存取存储器(RAM)614和高速缓存存储器616。通常,存储器606可以包括任何合适的易失性或非易失性计算机可读存储介质。软件和数据622存储在持久性存储装置608中,用于由(一个或多个)处理器604经由存储器606的一个或多个存储器访问和/或执行。相对于服务器计算机102,软件和数据622表示简档生成器120和数据库130。
在该实施例中,持久性存储装置608包括磁性硬盘驱动器。可替代地,或除磁性硬盘驱动器之外,持久性存储装置608还可以包括固态硬盘驱动器、半导体存储设备、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪存存储器、或能够存储程序指令或数字信息的任何其它计算机可读存储介质。
由持久性存储装置608使用的介质也可以是可移除的。例如,可移除硬盘驱动器可以用于持久性存储装置608。其它示例包括插入到驱动器中的光盘和磁盘、拇指驱动器和智能卡,用于传输到也是持久性存储装置608的一部分的另一个计算机可读存储介质上。
在这些示例中,通信单元610提供与其它数据处理系统或设备的通信。在这些示例中,通信单元610包括一个或多个网络接口卡。通信单元610可以通过使用物理和无线通信链路中的任一种或两者来提供通信。软件和数据622可以通过通信单元310下载到持久性存储装置608。
(一个或多个)I/O接口612允许与可以连接到计算机600的其它设备输入和输出数据。例如,(一个或多个)I/O接口612可以提供到(一个或多个)外部设备618(诸如键盘、小键盘、触摸屏和/或一些其它合适的输入设备)的连接。(一个或多个)外部设备618也可以包括便携式计算机可读存储介质,诸如,例如,拇指驱动器、便携式光盘或磁盘以及存储卡。软件和数据622可以存储在这种便携式计算机可读存储介质上,并且可以经由(一个或多个)I/O接口612加载到持久性存储装置608上。(一个或多个)I/O接口612还连接到显示器620。
显示器620提供了向用户显示数据的机制,并且可以是例如计算机监视器。
本文描述的程序基于在本发明的具体实施例中实现的应用来识别。但是,应当认识到,本文中的任何特定程序命名仅为了方便而是使用,并且因此本发明不应当仅限于在由此类命名识别和/或暗示的任何具体应用中使用。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
已经为了说明的目的给出了本发明的各种实施例的描述,但这并不旨在是穷举或限于所公开的实施例。在不脱离本发明的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。对本文中所使用的术语进行选择是为了最好地解释实施例的原理、实践应用或对市场中发现的技术的技术改进、或者使得本领域其他普通技术人员能够理解本文所公开的实施例。
Claims (22)
1.一种用于自动创建映射定义的方法,所述方法包括:
由一个或多个计算机处理器分析外部数据结构,其中所述外部数据结构具有一个或多个元素;
由一个或多个计算机处理器确定所述一个或多个元素的第一组元素中的每个元素的路径长度和出现次数;
由一个或多个计算机处理器生成用于所述第一组元素的至少一个查询语句;以及
由一个或多个计算机处理器至少部分地基于所生成的至少一个查询语句和所述第一组元素中的每个元素的路径长度来生成映射定义。
2.如权利要求1所述的方法,其中所述映射定义控制内容管理系统中的信息源的内容的呈现。
3.如权利要求1所述的方法,其中生成映射定义还包括:
由一个或多个计算机处理器至少部分地基于所述第一组元素中的每个元素的路径长度来确定最短路径长度;以及
由一个或多个计算机处理器基于所生成的至少一个查询语句和所述最短路径长度来生成映射定义。
4.如权利要求3所述的方法,其中识别所述最短路径长度包括:
由一个或多个计算机处理器确定所述第一组元素中的第一元素与所述第一组元素中的第二元素具有相同的路径长度;以及
由一个或多个计算机处理器确定所述第一元素比所述第二元素具有更多的出现次数,并且作为响应,确定所述最短路径长度为所述第一元素的路径长度。
5.如权利要求1所述的方法,其中生成所述至少一个查询语句包括:
由一个或多个计算机处理器识别所述一个或多个元素中的第一元素,所述第一元素具有与所述一个或多个元素中的第二元素的路径相同的路径;以及
由一个或多个计算机处理器基于识别出的第一元素和第二元素生成所述至少一个查询语句。
6.如权利要求1所述的方法,还包括:
由一个或多个计算机处理器接收识别所述外部数据结构的所述一个或多个元素的第二组元素的输入,其中所述第二组元素与所述第一组元素互斥。
7.如权利要求6所述的方法,其中生成映射定义包括:
由一个或多个计算机处理器接收所述第二组元素中的元素的名称;以及
由一个或多个计算机处理器至少部分地基于接收到的名称为所述第二组元素中的元素生成映射定义。
8.一种用于自动创建映射定义的方法,所述方法包括:
由一个或多个计算机处理器分析外部数据结构,其中所述外部数据结构具有一个或多个元素;
由一个或多个计算机处理器从所述一个或多个元素中识别具有最短路径长度的路径的元素,其中所述路径识别所述元素在所述外部数据结构内的位置;
由一个或多个计算机处理器基于对所述一个或多个元素中的至少一个元素共有的路径生成用于所述至少一个元素的查询语句;以及
由一个或多个计算机处理器基于所生成的至少一个查询语句和所述一个或多个元素中识别出的具有最短路径长度的元素生成映射定义。
9.一种计算机可读存储介质,包括存储在所述计算机可读存储介质上的程序指令,所述程序指令被处理器执行后用于执行以下操作指令包括:
用于分析外部数据结构的程序指令,其中所述外部数据结构具有一个或多个元素;
用于确定所述一个或多个元素的第一组元素中的每个元素的路径长度和出现次数的程序指令;
用于生成用于所述第一组元素的至少一个查询语句的程序指令;以及
用于至少部分地基于所生成的至少一个查询语句和所述第一组元素中的每个元素的路径长度来生成映射定义的程序指令。
10.如权利要求9所述的计算机可读存储介质,其中所述映射定义控制内容管理系统中的信息源的内容的呈现。
11.如权利要求9所述的计算机可读存储介质,其中生成映射定义还包括用于以下的程序指令:
至少部分地基于所述第一组元素中的每个元素的路径长度来确定最短路径长度;以及
基于所生成的至少一个查询语句和所述最短路径长度来生成映射定义。
12.如权利要求11所述的计算机可读存储介质,其中识别所述最短路径长度包括用于以下的计算机指令:
确定所述第一组元素中的第一元素与所述第一组元素中的第二元素具有相同的路径长度;以及
确定所述第一元素比所述第二元素具有更多的出现次数,并且作为响应,确定所述最短路径长度为所述第一元素的路径长度。
13.如权利要求9所述的计算机可读存储介质,其中生成所述至少一个查询语句包括用于以下的程序指令:
识别所述一个或多个元素中的第一元素,所述第一元素具有与所述一个或多个元素中的第二元素的路径相同的路径;以及
基于识别出的第一元素和第二元素生成所述至少一个查询语句。
14.如权利要求9所述的计算机可读存储介质,还包括用于以下的程序指令:
接收识别所述外部数据结构的所述一个或多个元素的第二组元素的输入,其中所述第二组元素与所述第一组元素互斥。
15.如权利要求14所述的计算机可读存储介质,其中生成映射定义包括用于以下的程序指令:
接收所述第二组元素中的元素的名称;以及
至少部分地基于接收到的名称为所述第二组元素中的元素生成映射定义。
16.一种用于自动创建映射定义的计算机系统,所述计算机系统包括:
一个或多个计算机处理器;
一个或多个计算机可读存储介质;
存储在所述计算机可读存储介质上以供由所述一个或多个计算机处理器中的至少一个执行的程序指令,所述程序指令包括:
用于分析外部数据结构的程序指令,其中所述外部数据结构具有一个或多个元素;
用于确定所述一个或多个元素的第一组元素中的每个元素的路径长度和出现次数的程序指令;
用于生成用于所述第一组元素的至少一个查询语句的程序指令;以及
用于至少部分地基于所生成的至少一个查询语句和所述第一组元素中的每个元素的路径长度来生成映射定义的程序指令。
17.如权利要求16所述的计算机系统,其中所述映射定义控制内容管理系统中的信息源的内容的呈现。
18.如权利要求16所述的计算机系统,其中生成映射定义还包括用于以下的程序指令:
至少部分地基于所述第一组元素中的每个元素的路径长度来确定最短路径长度;以及
基于所生成的至少一个查询语句和所述最短路径长度来生成映射定义。
19.如权利要求18所述的计算机系统,其中识别所述最短路径长度包括用于以下的计算机指令:
确定所述第一组元素中的第一元素与所述第一组元素中的第二元素具有相同的路径长度;以及
确定所述第一元素比所述第二元素具有更多的出现次数,并且作为响应,确定所述最短路径长度为所述第一元素的路径长度。
20.如权利要求16所述的计算机系统,其中生成所述至少一个查询语句包括用于以下的程序指令:
识别所述一个或多个元素中的第一元素,所述第一元素具有与所述一个或多个元素中的第二元素的路径相同的路径;以及
基于识别出的第一元素和第二元素生成所述至少一个查询语句。
21.如权利要求16所述的计算机系统,还包括用于以下的程序指令:
接收识别所述外部数据结构的所述一个或多个元素的第二组元素的输入,其中所述第二组元素与所述第一组元素互斥。
22.如权利要求21所述的计算机系统,其中生成映射定义包括用于以下的程序指令:
接收所述第二组元素中的元素的名称;以及
至少部分地基于接收到的名称为所述第二组元素中的元素生成映射定义。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/568,787 US9798773B2 (en) | 2014-12-12 | 2014-12-12 | Generation of mapping definitions for content management system |
US14/568,787 | 2014-12-12 | ||
PCT/IB2015/059204 WO2016092412A1 (en) | 2014-12-12 | 2015-11-30 | Generation of mapping definitions for content management system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107077499A CN107077499A (zh) | 2017-08-18 |
CN107077499B true CN107077499B (zh) | 2020-08-11 |
Family
ID=56106797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580058408.7A Active CN107077499B (zh) | 2014-12-12 | 2015-11-30 | 用于内容管理系统的映射定义的生成 |
Country Status (3)
Country | Link |
---|---|
US (2) | US9798773B2 (zh) |
CN (1) | CN107077499B (zh) |
WO (1) | WO2016092412A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9461876B2 (en) * | 2012-08-29 | 2016-10-04 | Loci | System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction |
US9798773B2 (en) | 2014-12-12 | 2017-10-24 | International Business Machines Corporation | Generation of mapping definitions for content management system |
US11200217B2 (en) * | 2016-05-26 | 2021-12-14 | Perfect Search Corporation | Structured document indexing and searching |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5721903A (en) * | 1995-10-12 | 1998-02-24 | Ncr Corporation | System and method for generating reports from a computer database |
CN1435780A (zh) * | 2003-03-04 | 2003-08-13 | 杨炳儒 | 一种Web挖掘系统的构造方法 |
CN1588370A (zh) * | 2004-09-08 | 2005-03-02 | 孟小峰 | 包装器的维护方法 |
CN1703701A (zh) * | 2002-10-04 | 2005-11-30 | 国际商业机器公司 | 用于管理门户服务器中的门户构件集合的方法和装置 |
CN101288048A (zh) * | 2005-06-21 | 2008-10-15 | 微软公司 | 内容聚合平台 |
CN103246704A (zh) * | 2013-04-08 | 2013-08-14 | 浪潮集团山东通用软件有限公司 | 一种基于通用数据结构描述的实体与关系数据的映射方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101228521B (zh) | 2004-03-15 | 2013-02-13 | 雅虎公司 | 用于将用户门户页面订阅到聚合馈信的系统和方法 |
US8065383B2 (en) | 2004-05-17 | 2011-11-22 | Simplefeed, Inc. | Customizable and measurable information feeds for personalized communication |
US20050267789A1 (en) | 2004-05-25 | 2005-12-01 | Anthony Satyadas | Portal generation for industry specific business roles |
US7996754B2 (en) | 2006-02-13 | 2011-08-09 | International Business Machines Corporation | Consolidated content management |
US20080010609A1 (en) | 2006-07-07 | 2008-01-10 | Bryce Allen Curtis | Method for extending the capabilities of a Wiki environment |
US20090106273A1 (en) | 2007-10-22 | 2009-04-23 | John Edward Petri | Autonomic generation of profiles in a content management system |
CN101291304B (zh) | 2008-06-13 | 2011-02-02 | 清华大学 | 可移植的网络信息共享方法 |
US20100070847A1 (en) | 2008-09-12 | 2010-03-18 | International Business Machines Corporation | Web Content Management Template Pages in a Portal |
US20100095197A1 (en) | 2008-10-13 | 2010-04-15 | Sap Ag | System and method for dynamic content publishing |
US9400638B2 (en) * | 2011-11-08 | 2016-07-26 | Microsoft Technology Licensing, Llc | Reactive expression generation and optimization |
US10521473B2 (en) * | 2012-05-21 | 2019-12-31 | Kent State University | Shortest path computation in large networks |
US9461876B2 (en) | 2012-08-29 | 2016-10-04 | Loci | System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction |
US10685313B2 (en) | 2012-12-14 | 2020-06-16 | Software Ag | Systems and/or methods for path finding on model structures |
US9798773B2 (en) | 2014-12-12 | 2017-10-24 | International Business Machines Corporation | Generation of mapping definitions for content management system |
-
2014
- 2014-12-12 US US14/568,787 patent/US9798773B2/en active Active
-
2015
- 2015-06-11 US US14/736,554 patent/US10223415B2/en active Active
- 2015-11-30 CN CN201580058408.7A patent/CN107077499B/zh active Active
- 2015-11-30 WO PCT/IB2015/059204 patent/WO2016092412A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5721903A (en) * | 1995-10-12 | 1998-02-24 | Ncr Corporation | System and method for generating reports from a computer database |
CN1703701A (zh) * | 2002-10-04 | 2005-11-30 | 国际商业机器公司 | 用于管理门户服务器中的门户构件集合的方法和装置 |
CN1435780A (zh) * | 2003-03-04 | 2003-08-13 | 杨炳儒 | 一种Web挖掘系统的构造方法 |
CN1588370A (zh) * | 2004-09-08 | 2005-03-02 | 孟小峰 | 包装器的维护方法 |
CN101288048A (zh) * | 2005-06-21 | 2008-10-15 | 微软公司 | 内容聚合平台 |
CN103246704A (zh) * | 2013-04-08 | 2013-08-14 | 浪潮集团山东通用软件有限公司 | 一种基于通用数据结构描述的实体与关系数据的映射方法 |
Also Published As
Publication number | Publication date |
---|---|
US10223415B2 (en) | 2019-03-05 |
US9798773B2 (en) | 2017-10-24 |
CN107077499A (zh) | 2017-08-18 |
US20160171046A1 (en) | 2016-06-16 |
WO2016092412A1 (en) | 2016-06-16 |
US20160171120A1 (en) | 2016-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10698960B2 (en) | Content validation and coding for search engine optimization | |
US10540408B2 (en) | System and method for constructing search results | |
US9129009B2 (en) | Related links | |
US20130019189A1 (en) | Augmented editing of an online document | |
US9892096B2 (en) | Contextual hyperlink insertion | |
CN108090104B (zh) | 用于获取网页信息的方法和装置 | |
CN111008051B (zh) | 基于多维规则的动态布局 | |
US20160259630A1 (en) | Systems, apparatus and methods for sharing visual model-based applications | |
US9323728B2 (en) | Coordinating the management of the layout and design of portal pages with the management of its associated web content | |
JP6080866B2 (ja) | ネットワーク文書の1つまたは複数の動的視覚オブジェクトをマッピングするコンピュータ化された方法、システム、およびコンピュータ・プログラム | |
US20210133270A1 (en) | Referencing multiple uniform resource locators with cognitive hyperlinks | |
CN107077499B (zh) | 用于内容管理系统的映射定义的生成 | |
CN104699836A (zh) | 一种多关键字的搜索提示方法和装置 | |
US10706078B2 (en) | Bidirectional integration of information between a microblog and a data repository | |
US20130227422A1 (en) | Enterprise portal smart worklist | |
JP6763433B2 (ja) | 情報収集システム、情報収集方法、及び、プログラム | |
CN107463573B (zh) | 内容信息提供方法、设备、浏览器、电子设备和服务器 | |
US9858250B2 (en) | Optimized read/write access to a document object model | |
US20100031133A1 (en) | System and Methods for Dynamic Creation of Symptom Databases from Social Bookmarks | |
CA2796502C (en) | Managing a classification system and associated selection mechanism | |
CN112988781A (zh) | 数据查询方法、装置、电子设备及计算机可读存储介质 | |
US20050120299A1 (en) | System and method for creation of a network server application page | |
CN111597205B (zh) | 模板配置方法、信息提取方法、装置以及电子设备、介质 | |
US9864739B1 (en) | Automatic layout of graphical user interface screens from object data | |
KR20100014116A (ko) | 탭을 위한 규칙 기반의 사용자 정의된 wi-메카니즘 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |