CN102722519B - 使用增强的内容控件来创建结构化文档模板的技术 - Google Patents

使用增强的内容控件来创建结构化文档模板的技术 Download PDF

Info

Publication number
CN102722519B
CN102722519B CN201210083507.9A CN201210083507A CN102722519B CN 102722519 B CN102722519 B CN 102722519B CN 201210083507 A CN201210083507 A CN 201210083507A CN 102722519 B CN102722519 B CN 102722519B
Authority
CN
China
Prior art keywords
content
content control
control
formatting
enhanced
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
Application number
CN201210083507.9A
Other languages
English (en)
Other versions
CN102722519A (zh
Inventor
T·戴维斯
M·桑德兰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN102722519A publication Critical patent/CN102722519A/zh
Application granted granted Critical
Publication of CN102722519B publication Critical patent/CN102722519B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

描述了使用增强的内容控件来创建结构化文档模板的技术。描述了使用增强的内容控件来创建结构化文档和文档模板的技术。一装置可包括从文档模板生成文档的应用。该应用可包括用于检索包括多个文档部分的文档模板的文档模板组件。该应用还可包括用于管理嵌在文档模板的文档部分中的内容控件的内容控件组件。内容控件可与数据源相关联,该数据源被安排成存储由内容控件演示的丰富格式化的内容,而不必要求以任何特定方式对数据存储进行写入。内容控件组件可在内容控件和数据存储之间同步对格式化的内容的任何改变。对其他实施例也予以描述并要求保护。

Description

使用增强的内容控件来创建结构化文档模板的技术
技术领域
本发明涉及创建结构化文档模板。
背景技术
可使用生产力应用程序来创建具有结构化且可重用的内容的定制的文档模板。文档模板可包括可重用文档部分的集合,每一文档部分具有特别设计的演示格式和内容类型。定制的文档模板然后可用作创建高度结构化文档的起始点。例如,一公司可创建具有定制的文档部分的报告模板,这些文档部分诸如用于标题的第一字段、用于日期的第二字段、用于图像的第三字段等。公司内的个人然后可反复使用该报告模板来生成具有统一的公司格式以及期望的内容集合的公司报告。
定制的文档部分可用各种不同方式创建,诸如通过使用定制定义的内容控件、标记语言、书签、字段、样式等等。尽管可用于为结构化文档模板创建定制文档部分的开发者工具有所改进,然而,诸如企业等实体不断地努力地生产这样的文档模板:能够生产具有越来越多的级别的丰富格式化的内容的文档。因此,常规的开发者工具难以生产这样的文档模板:该文档模板能够生产这样的丰富格式化的内容且还维护用于生成文档模板的底层应用程序的视图和对象模型之间的分离。本发明的改进正是针对这些和其他考虑事项而需要的。
发明内容
下面提供了简化的发明内容,以便提供对此处所描述的一些新颖实施例的基本理解。本概述不是广泛的概览,并且它不旨在标识关键/重要元素或描绘本发明的范围。其唯一目的是以简化形式呈现一些概念,作为稍后呈现的更具体实施例的序言。
各个实施例一般涉及为应用程序创建文档和文档模板的技术。一些实施例尤其涉及使用增强的内容控件为生产力应用程序创建高度结构化的文档和文档模板的技术。
例如,在一个实施例中,一方法可包括选择用于文档模板的文档部分的第一内容控件,选择用于文档模板的文档部分的第二内容控件(第二内容控件嵌套在第一内容控件内),以及相对于第一内容控件修改第二内容控件的视觉属性以便在显示器上演示时将第二内容控件与第一内容控件区分开。对其他实施例也予以描述并要求保护。
例如,在一个实施例中,一装置可包括逻辑设备和在逻辑设备上操作以便从文档模板生成文档的应用。应用可包括用于检索包括多个文档部分的文档模板的文档模板组件等。应用还可包括用于管理嵌在文档模板的文档部分中的内容控件的内容控件组件。内容控件可与被安排成存储由内容控件演示的丰富格式化的内容的数据源相关联。丰富格式化的内容可具有本机应用所支持的格式化方面的所有丰富性。内容控件组件可在内容控件和数据存储之间同步对格式化的内容的任何改变。此外,内容控件组件可控制自动重复从数据存储复制到文档的结构(例如,表中的行、为每一数据项添加的新行等)。应用还可包括用于使用内容控件从文档模板生成文档的文档生成器组件。对其他实施例也予以描述并要求保护。
为了实现上述及相关目的,本文结合下面的描述和附图来描述某些说明性方面。这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。结合附图阅读下面的详细描述,其它优点和新颖特征将变得显而易见。
附图说明
图1A示出了设计文档模板的系统的一实施例。
图1B示出了文档模板的一实施例。
图2示出图1的系统的逻辑流程的一实施例。
图3示出用于图1的系统的集中式系统的一实施例。
图4示出用于图1的系统的分布式系统的一实施例。
图5示出了用于参考图1描述的内容控件组件124的更详细的框图。
图6示出了内容控件的各个实施例。
图7示出了用于可视化的内容控件属性的用户界面视图。
图8示出了内容控件输出的用户界面视图。
图9示出了内容控件选择的用户界面视图。
图10示出了内容控件选择的用户界面视图。
图11示出了用于重复部位的内容控件属性的用户界面视图。
图12A示出了用于重复部位的内容控件的用户界面视图。
图12B示出了用于重复部位的内容控件的用户界面视图。
图13示出了当删除重复部位时的示例。
图14示出了计算架构的一实施例。
图15示出通信架构的一实施例。
具体实施方式
各个实施例涉及为应用程序创建结构化文档模板的技术。一些实施例尤其涉及通过使用内容控件的增强集合来定义文档模板的各个文档部分来创建结构化文档模板的技术。可为任何应用程序实现增强的内容控件,包括文字处理应用程序、电子表格应用程序、演示应用程序和其它应用程序。
可用多种不同的方式创建文档模板的定制的文档部分。例如,现有的应用程序可使用标记语言技术,诸如输入定制定义的可扩展标记语言(XML)模式来生产文档,以在文字处理文档、电子表格文档、演示文档和其它生产力应用内在内容周围提供语义标记。XML模式是一种类型的XML文档的描述,通常按照在XML本身施加的基本句法约束之上以及超出基本句法约束的结构上的约束以及该类型的文档的内容来表达。这些约束一般使用管控元素次序的语法规则、内容必须满足的布尔谓词、管控元素和属性的内容的数据类型、以及诸如唯一性和引用完整性约束等更专门的规则的某种组合来表达。XML模式在文档模板内在内容周围提供语义标记。这种功能允许开发者创建解决方案,这些解决方案利用定制的XML嵌入直接作用于其数据的结构和内容,而非要求处理底层应用程序的演示格式的复杂性的解决方案。
这种强大的功能允许开发者创建解决方案,这些解决方案利用该定制的XML嵌入直接作用于其数据的结构和内容,而非要求处理底层应用程序的演示格式的复杂性的解决方案。例如,如果用户要为无XML能力的文字处理应用程序中的证券分析笔记创建封面,那么从封面提取有用的数据(例如,公司名、股票代码和股票评级)将需要使用应用的对象模型,该对象模型被紧密地束缚于文档的演示格式。这必然意味着任何所得的解决方案逻辑也被束缚于文档的演示格式,并且如果演示改变就会遭受失败。例如,如果解决方案代码期望股票代码位于第一个表格的第2行第3列中,那么添加新的行或列会破坏该逻辑。然而,采用现代的应用,解决方案代码现在将链接于顾客自己的数据的结构,从而移除了解决方案逻辑被束缚于底层应用的演示格式的需求。相反,该相同的逻辑可搜索XML节点的内容(例如,<stockSymbol(股票代码)/>)并直接编辑它,即使其上下文演示彻底改变了。这导致用于存储底层数据的视图和模型之间的更大分离。
然而,定制XML模式是复杂的,从而实现和维护起来是昂贵的。定制XML模式还具有阻止用于大范围丰富格式化的文档的限制。因此,开发者寻求对定制XML模式的替换和/或扩充,诸如使用定制定义的内容控件、书签、字段、样式等。在现有的替换中,开发者正转向内容控件作为定制XML模式的可行替代。内容控件尤其适用于创建文档模板,因为它们是被特别设计来便于创建高度结构化的文档且已经具有与随文档文件一起存储的定制XML部分的深度集成,从而提供了强有力的数据/视图分离。例如,为了确保特定类型的内容被置于每一定义的字段中,内容控件可用于限制置于定义的字段中的信息的类型。回到上述报告模板示例,第一内容控件可被置于用于标题的第一字段上以确保仅可将文本输入到第一字段内,第二内容控件可被置于第二字段上以确保仅特定格式的数字可被输入到第二字段内,第三内容控件可被置于第三字段上以确保仅图像可被加载到第三字段内。这仅是使用内容控件的一些简单示例,还存在更复杂的场景。
然而,常规的内容控件可能不适于开发丰富格式化的文档模板。例如,一些文档模板可在文档模板中具有内容控件的大量嵌套。这使得设计和使用文档模板更为困难。此外,内容控件通常不能很好地演示某些类型的信息,诸如用某些格式化选项(例如,粗体、斜体、下划线、颜色等)或样式选项演示的文本。这种类型的信息有时被称为“丰富文本”以与具有很少或没有格式化和/或样式选项的文本(这种文本有时被称为“纯文本”)区分开。此外,内容控件本身变得越来越健壮,诸如自动将日历演示为输入选择工具的日期内容控件。这样的复杂内容控件可在文档模板中实现越来越多数量的逻辑,增加了文档模板的大小和复杂性。
为了解决这些和其它问题,各实施例可实现具有增强的内容控件的应用程序。增强的内容控件可扩充或替换现有的内容控件以便于开发高度结构化和丰富格式化的文档模板。增强的内容控件对现有的内容控件提供了显著的改进。例如,增强的内容控件在视觉上缩放到用于现有解决方案中的嵌套级别。这提供了更多的视觉区别级别,并防止文档显得“杂乱”。此外,增强内容控件可演示丰富格式化的信息,诸如丰富文本,并在增强的内容控件与同增强的内容控件相关联的数据源(例如,XML部分)之间同步对丰富文本的任何改变。在另一示例中,表中的增强的内容控件可被设置成重复并执行对于XML数据存储的相应的动作,诸如添加行、添加XML片断、删除行、删除XML等。在又一示例中,顾客可直接针对XML数据存储工作来检索并设置来自文档中的、他们所需的信息,包括重复数据(例如,删除XML、删除行)并包括任何丰富文本格式(例如包括MICROSOFT OFFICE XML格式)的丰富内容(例如,改变WordprocessingML、文档更新)。在又一示例中,可经由可选颜色编码来在视觉上定义不同类型的内容控件。在又一示例中,增强的内容控件可对使用其它开发者工具(诸如定制XML标记)的应用程序实现,以便于文档模板的迁移。在又一示例中,增强的内容控件可用于允许表外的内容在本质上是“重复的”(例如段落的任意集合)。在又一示例中,开发者和用户可在视觉上标识段落级和文本级(例如,内联/块)内容控件。还存在其它优点。
现在将参考附图,全部附图中相同的参考编号用于表示相同的元件。在下面的描述中,为了进行说明,阐述了很多具体细节以便提供对本发明的全面理解。然而,显而易见,可以没有这些具体细节的情况下实施各新颖实施方式。在其他情况下,以框图形式示出了各个公知的结构和设备以便于描述本发明。本发明将涵盖落入所要求保护的主题的精神和范围内的所有修改、等效方案和替换方案。
图1A示出了系统100的框图。在一个实施例中,系统100可包括具有一个或多个软件应用和/或组件的计算机实现的系统100。尽管图1A中示出的系统100具有按照某种拓扑结构的有限数量的元素,但可以理解,系统100可以视给定实现的需要而包括按照替代拓扑结构的更多或更少元素。
系统100可包括应用程序120。应用程序120可包括适用于使用增强的内容控件生产文档模板的任何应用程序。应用程序120的示例可包括但不限于:为特定操作系统设计的互相关的客户机应用、服务器应用和web服务的生产力套件,诸如用于由美国华盛顿州雷蒙德的微软公司制作的MICROSOFT OFFICE生产力套件。客户机应用的示例可包括但不限于:MICROSOFT WORD、MICROSOFTMICROS OFTMICROS OFTMICROSOFTMICROSOFTMICROS OFTMICROS OFTPROJECT、MICROSOFT PUBLISHER、MICROSOFTWORKSPACE 、MICROSOFTMICROSOFT OFFICEINTERCONNECT、MICROSOFT OFFICE PICTURE MANAGER、MICROSOFT SHAREPOINT DESIGNER、以及MICROSOFT LYNC。服务器应用的示例可包括但不限于:MICROSOFT SHAREPOINTSERVER、MICROSOFT LYNC SERVER、MICROSOFT OFFICE FORMS SERVER、MICROSOFT OFFICE SERVER、MICROSOFT OFFICE PROJECT SERVER、MICROSOFT OFFICE PROJECTPORTFOLIO SERVER、以及MICROSOFT OFFICESERVER。web服务的示例可包括但不限于:MICROSOFT WINDOWSMICROSOFT OFFICE WEBAPPLICATIONS、MICROSOFT OFFICE LIVE,MICROSOFT LIVE MEETING、MICROSOFT OFFICEPRODUCT WEB SITE、MICROSOFT UPDATE SERVER、以及MICROSOFT OFFICE 365。各实施方式不限于这些示例。
应用程序120可包括文档模板组件122。文档模板组件122可用于基于用户输入110管理文档模板130。文档模板130可由应用程序120或特别设计来生成文档模板的另一应用程序(未示出,例如MICROSOFT VISUAL)来生成。用户输入110可表示在文档模板130的创建期间经由用户界面组件126选择各种内容控件和内容控件属性接收到的用户控制指示。
应用程序120可包括内容控件组件124。内容控件组件124可提供各种增强的内容控件供文档模板组件122使用。内容控件组件124可向用户界面组件126提供内容控件信息和消息,以生成要与用户交互的各种用户界面视图,包括经由合适的输入设备接收各种用户输入110。
应用程序120可包括文档生成器组件125。文档生成器组件125可从文档模板130中生成文档140。例如,应用程序120可接收将信息输入到文档模板130的各个内容控件中的用户输入110。一旦输入了信息,文档生成器组件125可将文档模板130与接收到的用户信息一起存储,以形成文档140。
应用程序120可包括用户界面组件126。用户界面组件126可生成各个用户界面视图,包括用于经由输出设备(例如,显示器、扬声器)向用户演示信息以及经由输入设备(例如,指针、触摸屏上的手势)从用户接收信息的各个图形用户界面(GUI)元素。
图1B示出了系统100的更详细的框图。具体地,图1B示出了文档模板130的更详细的框图。在图1B中所示的示出的实施例中,文档模板130包括一个或多个文档部分132-a,诸如文档部分132-1、132-2。每一文档部分132-a可表示文档模板130的离散部位或部分。
文档部分132-a中的每一个可包括一个或多个内容控件134-b。例如,文档部分132-1示出内容控件134-1、134-2。此外,文档部分132-a可具有彼此嵌套或嵌入的多个内容控件134-b,诸如嵌套在内容控件134-2内的内容控件134-3,还具有混在其间的其它任意内容(例如,字段的文本描述等)。适用于给定实现,可以理解,内容控件134-b可被嵌套到任何级别N,其中N是正整数。各实施例不限于该上下文。
内容控件134-b提供设计具有以下特征的文档和文档模板的机制:(1)具有如表单的受控输入的用户界面(UI)或GUI;(2)防止用户编辑文档或文档模板的受保护部位的限制;以及(3)绑定到数据源的数据。内容控件134-b提供为用户输入和打印两者优化的UI。当用户将内容控件134-b添加到文档模板130的文档部分132-a时,内容控件134-b通常由边界和标题来标识。内容控件134-b还提供演示字段136-c。演示字段136-c可用于演示不同类型的信息,包括可向用户提供指令的临时文本。取决于实现偏好,内容控件134-b的边界和标题可以或可以不出现在文档的打印版本中,而用户输入到演示字段136-c的信息的确出现在打印版本中。例如,如果想要用户在文档模板130的一部位中输入日期,开发者可向文档模板130的文档部分132-a添加“日期挑选器”内容控件134-b。当用户点击内容控件134-b时,标准日期挑选器UI显现。开发者还可设置内容控件134-b的属性以例如设置所显示的局部日历并指定日期格式。当用户选择日期之后,控件的UI被隐藏,如果用户打印文档,仅显现日期。
内容控件134-b还防止用户编辑或删除某些内容部分132-a。这在开发者在文档模板130中具有用户能够阅读但不能编辑的信息,或者开发者想要用户能够编辑内容控件但不能删除它们的情况下是有用的。此外,内容控件134-b可将文档模板130或文档140的各部分绑定到数据源。开发者可将内容控件134-b绑定到某些数据库字段、.NET框架中的受管对象、存储在文档模板130中(或服务器上)的XML元素、或其它数据源。在文档级项目中,开发者可在设计时或运行时将内容控件134-b添加到文档模板130。在应用级项目中,开发者可在运行时将内容控件134-b添加到任何开放的文档模板。
内容控件134-b的示例是可扩展的,仅举几个例子,一些示例包括构件块图库控件、复选框控件、组合框控件、日期挑选器控件、下拉列表控件、组控件、图片控件、丰富文本控件、纯文本控件、一般内容控件。各实施例不限于该上下文。
此处所包括的是一组表示用于执行所公开的架构的新颖方面的示例性方法的流程图。尽管出于解释简明的目的,此处例如以流程图形式示出的一个或多个方法被示出并且描述为一系列动作,但是可以理解,各方法不受动作的次序的限制,因为根据本发明,某些动作可以按与此处所示并描述的不同的次序和/或与其他动作同时发生。例如,本领域的技术人员将明白并理解,方法可被替换地表示为一系列相互相关联的状态或事件,诸如以状态图的形式。此外,并非方法中所示出的所有动作都是新颖实现所必需的。
图2示出了逻辑流程200的一个实施例。逻辑流程200可表示由在此所描述的一个或多个实施例所执行的操作中的部分或全部。
在图2中所示的示出的实施例中,逻辑流程200可在框202选择用于文档模板的文档部分的第一内容控件。例如,应用程序120的内容控件组件124可用于选择用于文档模板130的文档部分132-1的第一内容控件134-1。
逻辑流程200可在框204选择用于文档模板的文档部分的第二内容控件,第二内容控件嵌套在第一内容控件内。例如,内容控件组件124可用于选择用于文档模板130的文档部分132-1的第二内容控件134-2。第二内容控件134-2可被嵌套在第一内容控件134-1内,使得难以区分控件134-1、134-2之一或双方的起始/结束位置或标记。
逻辑流程200可在框206相对于第一内容控件修改第二内容控件的视觉属性,以便在显示器上演示时将第二内容控件与第一内容控件区分开。例如,内容控件组件124的内容控件可视化组件522(如图5中所示)可用于相对于第一内容控件134-1修改第二内容控件134-2的视觉属性,以便在显示器上演示时协助将第二内容控件134-2与第一内容控件134-1区分开。例如,控件134-1、134-2之一或双方的各个方面可在颜色、大小、维度、几何形状、部分、控件、位置、标记、标签、内容、标志、标题等方面不同。各实施例不限于该示例。
图3示出了集中式系统300的框图。集中式系统300可在单个计算实体(诸如完全在单个计算设备320内)中实现系统100的结构和/或操作的一些或全部。
计算设备320可使用处理组件330执行系统100的处理操作或逻辑。处理组件330可包括各种硬件元素、软件元素或两者的组合。硬件元素的示例可以包括设备、逻辑设备、组件、处理器、微处理器、电路、电路元素(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件元素的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序编程接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、文字、值、符号、或其任何组合。确定一实施例是否使用硬件元件和/或软件元素来实现可视给定实现所需根据任何数量的因素而变化,这些因素如所需计算速率、功率级、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其它设计或性能约束。
计算设备320可使用通信组件340来执行系统100的通信操作或逻辑。通信组件340可以实现任何公知的通信技术和协议,如适用于与分组交换网络(例如,诸如因特网等公共网络、诸如企业内联网等专有网络,等等)、电路交换网络(例如,公共交换电话网)、或分组交换网络和电路交换网络的组合(使用合适的网关和转换器)一起使用的技术。通信组件340可以包括各种类型的标准通信元件,如一个或多个通信接口、网络接口、网络接口卡(NIC)、无线电、无线发射机/接收机(收发机)、有线和/或无线通信介质、物理连接器等。作为示例而非限定,通信介质321包括有线通信介质和无线通信介质。有线通信介质的示例可以包括导线、电缆、金属线、印刷电路板(PCB)、背板、交换光纤、半导体材料、双绞线、同轴电缆、光纤、所传播的信号等。无线通信介质的示例可以包括声学、射频(RF)频谱、红外和其它无线介质321。
计算设备320可经由通信组件340使用通信信号322通过通信介质321与其他设备310、350通信。例如,应用程序120的内容控件组件124可用于将各个内容控件134-b插入各个文档部分132-a,内容控件134-b在设备310、350之一上具有数据源。例如,设备310、350可包括相应的客户机、服务器设备。
图4示出了分布式系统400的框图。分布式系统400可使系统100、300的结构和/或操作的各部分跨多个计算实体分布。分布式系统400的示例可包括但不限于,客户机-服务器架构、3层架构、N层架构、紧耦合或群集的架构、对等架构、主-从架构、共享数据库架构、以及其他类型的分布式系统。各实施例不限于该上下文。
客户机系统410和服务器系统450可使用处理组件430处理信息,处理组件430类似于参考图3描述的处理组件330。客户机系统410和服务器系统450可经由通信组件440使用通信信号422通过通信介质420彼此通信,通信组件440类似于参考图3描述的通信组件340。
在一个实施例中,例如,分布式系统400可被实现为客户机-服务器系统。客户机系统410可实现系统100。服务器系统450可实现用于文档模板130的各个文档部分132-a的各个内容控件134-b的数据源442。例如,在一个实施例中,数据源442可包括XML模式、文件、代码、数据或部分。
图5示出了用于参考图1描述的内容控件组件124的更详细的框图。在图5中所示的示出的实施例中,内容控件组件124可包括内容控件可视化组件522、内容控件映射组件524以及内容控件重复组件526。这些组件中的每一个将在下文中更详细描述。可以理解,内容控件组件124可以视给定实现的需要而包括被安排成控件内容控件134-b的各个特征的其它组件。各实施例不限于该上下文。
内容控件可视化组件522
图6示出了由内容控件可视化组件522生产的各个内容控件(content control)134-b的用户界面视图600。内容控件组件124的内容控件可视化组件522可按照改进的方式呈现内容控件134-b以便协助开发者创建文档模板130,以及协助用户填写从文档模板130生成的一个或多个文档。例如,当内容控件134-b的标记被显示时,如果内容控件134-b的Title(标题)属性被置位,则这些标记可显示Title属性,如果该属性为空白,则不显示。标记不示出如常规呈现中所示的Tag(标签)属性的值。此外,如果内容控件134-b被置于文档的锁定区域内,则(在没有抓取把手的情况下)示出内容控件134-b的标题。如果内容控件被示出,则该内容控件仍可经由标题拖曳。任何相关联的错误和所有其它醋酸盐(acetate)GUI(例如,下拉列表UI)的可视化被保留未改。例如,如果存在错误,内容控件可视化组件522可示出红色虚线的边界,且出错UI被置于正常位置中。
如图所示,图6示出了当指针悬停在内容控件134-b上时的用于内容控件134-b的GUI元素602的呈现的示例。图6还示出了当使用诸如定点设备或手势的人类输入设备(HID)使内容控件134-b处于焦点处(例如,选中)使用于内容控件134-b的GUI元素604的呈现的示例。图6还示出了当处于设计模式中时的用于内容控件134-b的GUI元素606的呈现的示例。图6最后示出了具有起始/结束标记的用于内容控件134-b的GUI元素608的呈现的示例。GUI元素608的起始/结束标记在多个内容控件134-b彼此嵌入时尤其有用,因为它们减少或消除了对每一内容控件134-b周围的把手或边界框的需求,从而减少了标记内演示的嵌套标记和信息的视觉“杂乱程度”。
图7示出了管理用于内容控件134-b的可视化的内容控件属性的用户界面视图700。如图7中所示,可从下拉框控件704中选择内容控件134-b的各个视觉属性,如表708中所列。此外,可从颜色(color)挑选器控件706选择用于内容控件134-b的不同颜色,如表710中所列。向内容控件134-b分配不同的颜色可有助于开发者在视觉上跟踪不同的内容控件134-b,尤其是在其中内容控件134-b在其它内容控件134-b内嵌套了某种嵌套级别(例如,2、3、4或更多级)的嵌套场景中。
当用户经由颜色挑选器控件706设置内容控件134-b的颜色时,且如果内容控件134-b当前示出标签,则内容控件可视化组件522对于标签的所有有色区域(例如,非黑/白区域)应用指定颜色。如果内容控件134-b当前被示为边界框,则内容控件可视化组件522使用指定的颜色作为边界框的线型,并基于该颜色计算所有其它颜色。
当用户进入内容控件134-b的设计模式时,三个可视化更新的每一个如下:(1)作为有阴影的矩形/边界框(具有可任选的标题),示出边界框/矩形外加起始/结束标记(边界框/标题继续在失焦的情况下消失,悬停时加阴影,如GUI元素606所指示);(2)起始/结束标记仍作为起始/结束标记;以及(3)当不可见(没有视觉表示)时,作为起始/结束标记,如GUI元素608中所指示。起始/结束标记可用组合键换档(例如,CTRL+SHIFT+X)来切换,但当用户进入设计模式时通常为“开启”。
内容控件映射组件524
在各个实施例中,内容控件组件124的内容控件映射组件524可被安排成处理其中内容控件134-b内的演示包括丰富格式化的内容的情况。例如,在一个实施例中,丰富格式化的内容可具有给定的本机应用所支持的所有格式化丰富性、选项、特征、功能、能力或属性。在此情况中,文本的格式化以及演示是数据的一部分,从而期望数据包含该丰富格式化的全部表示。为此,内容控件134-b和数据源442之间的绑定可被安排成以不知道与文档模板130分开存储的定制XML数据的结构的格式发送丰富格式化的内容。
如参考图1A所述,应用程序120可包括用于检索包括多个文档部分132-a的文档模板130的文档模板组件122。应用程序120还可包括用于管理嵌入在文档模板130的文档部分132-a中的内容控件134-b的内容控件组件124。内容控件134-b可与被安排成存储由内容控件134-b演示的格式化的内容的数据源442相关联。内容控件组件124的内容控件映射组件524可在内容控件134-b与数据存储442之间同步对格式化内容的任何改变。应用程序120还可包括用于使用内容控件134-b从文档模板130生成文档140的文档生成器组件125。
文档模板组件122可检索包括多个文档部分132-a的文档模板130,如参考图2所述。文档部分132-a可包括单独实现(例如,内容控件134-1、134-2)或彼此嵌套(例如,内容控件134-2、134-3)的一个或多个内容控件134-b。
内容控件组件124可管理嵌入在文档模板130的文档部分132-a中的内容控件134-b。内容控件134-b可与被安排成存储由内容控件134-b在演示字段136-c中演示的格式化的内容的数据源442相关联。格式化内容可包括任何丰富格式化的内容或丰富文本内容,诸如包括具有用户所选择的某些格式化选项或样式选项的文本。例如,格式化的内容可包括已被加粗或倾斜以改变其视觉属性的某一字体的词或短语。
无论何时文档模板130被数字显示演示,内容控件134-b可在演示字段136-c中演示临时文本以及对用户的指令。例如,临时文本可指示用户可输入表单的名称。用户可选择演示字段136-c,并将信息输入到演示字段136-c内以替换临时文本。此外,用户可根据给定的一组用户偏好来对信息格式化,以形成一组格式化的内容。当此发生时,内容控件组件124可接收控制指示形式的用户输入110以修改格式化的内容,控制指示包括修改用于格式化的内容的格式化选项或样式选项的指令。格式化选项或样式的示例可包括但不限于:字体、字体样式、字体大小、字体颜色、下划线样式、下划线颜色、效果、文字效果、文字填充、文字轮廓、轮廓样式、文字阴影、文字倒影、文字发光、文字边缘、文字三维格式等。各实施例不限于该上下文。
另外地或另选地,内容控件134-b可演示由数据源442存储的信息。例如,假定内容控件134-1、134-2被绑定至存储雇员的名字和地址的数据源442。内容控件134-1可在演示字段136-1演示雇员的名字。类似地,内容控件134-2可在演示字段136-2演示雇员的地址。
内容控件组件124的内容控件映射组件524可在内容控件134-b与数据存储442之间同步对格式化内容的任何改变,而无论数据存储的内容是否被设计成接受格式化的内容。值得注意的是丰富文本绑定不必需要以任何特殊方式来写入数据存储442以适应格式化的内容。只要对内容控件134-b的演示字段136-c或与内容控件134-b相关联的数据存储442作出了改变,就同步该改变,以便在内容控件134-b和数据存储442两者间维护数据一致性。此外,按照保留丰富格式化内容的全部保真度的方式执行同步。
例如,在一个实施例中,内容控件组件124的内容控件映射组件524可接收用户输入110作为控制指示,以修改由内容控件134-b演示的格式化的内容、在内容控件134-b的演示字段136-c中演示修改后的格式化的内容、并将修改后的格式化的内容发送给数据存储442。数据存储442可接收修改后的格式化的内容、处理修改后的格式化的内容以匹配用于存储格式化的内容的数据模式、并用修改后的格式化的内容重写格式化的内容。
例如,在一个实施例中,内容控件组件124的内容控件映射组件524可检测到存储在数据存储442中的格式化的内容已被修改。内容控件映射组件524可将修改后的格式化的内容发送给内容控件134-b,以便在内容控件134-b的演示字段136-c中演示。修改后的格式化的内容可在演示字段136-c中以丰富格式化的内容的全部保真度演示。
为此,内容控件134-b和数据源442之间的绑定可被安排成以不知道与文档模板130分开存储的定制XML数据的结构的格式发送丰富格式化的内容。例如,内容控件映射组件524可使用与存储在数据存储中的格式化的内容的数据模式不同的数据模式来传递修改后的格式化的内容。
在一个实施例中,数据存储442可被安排成根据XML数据模式来存储格式化的内容。在此情况中,内容控件映射组件524可串行化格式化的内容的XML元素以形成XML元素串,对得到的串进行转义来从XML元素串中移除保留的XML字符,并将来自XML元素的任何其余的文本存储在数据存储中。可参考图8更详细描述串行化操作。
图8示出了某一内容控件输出的用户界面视图800。内容控件映射组件524可允许开发者将丰富文本内容控件和文档构建块内容控件的内容映射到XML数据存储(例如,数据源442)。当映射活动时,相关联的定制XML节点包含文档模板130的指定范围的串行化表示。这是通过检索该范围的基于文本的串行化或平面XML表示、如下在表1中所示对得到的串进行转义以移除保留的XML字符、并将得到的文本存储在对应的节点中来创建的。
表1
< &lt;
> &gt;
&quot;
&apos;
& &amp;
无论何时文档模板130中的文本的值改变,且用户:(1)通过在内容控件134-b外点击来离开开内容控件134-b的上下文;(2)使焦点离开应用程序120;以及(3)保存文档模板,内容控件映射组件524就生成串行化的表示,并将结果推送到内容控件134-b内。相应地,无论何时节点中的串的值改变,内容控件映射组件524对得到的串取消转义,并试图插入它作为内容控件134-b的内容。
XML标记(例如,WordprocessingML)的最后一段等同于内容控件134-b的结尾段(如果存在),所以如:
<w:p><w:r><w:t>One</w:t></w:r></w:p>
<w:p>...<w:pStyle val=″Heading 1″/>...<w:r><w:t>Two</w:t></w:r></w:p>的XML将被插入到内容控件134-b内,如边界框802中的GUI元素804、806所示。
内容控件映射组件524还可处理出错情况。例如,如果XML不是有效的XML(例如,形式良好的),内容控件映射组件524将打断映射,文档模板130中没有东西被更新。对文档内容的后续编辑将使链接复活,并重写节点的内容。如果XML包含多个段,且内容控件134-b是内联(例如,非块级)的,如使内容控件成为块级所需地,内容控件映射组件524首先试图在内容控件134-b之前或之后插入段落标记。如果失败,则内容控件映射组件524执行与当今粘贴到纯文本内容控件的逻辑相同的逻辑——段落转换成回车,且段落从第一段格式化成整个控件的内容。如果包含丰富内容的定制XML节点已经被绑定到纯文本内容控件,则XML映射不被允许并失败,伴有消息“定制XML节点已经被映射到纯文本内容控件,因此它不能被映射到丰富文本内容控件”。在文件打开时,如果节点以此方式绑定,内容控件映射组件524无法连接到内部绑定内容控件,但在文件中留下映射信息。如果映射的丰富文本控件被嵌套在打开或粘贴的另一映射的丰富文本控件内,则内容控件映射组件524无法链接到内部绑定内容控件,但在文件中留下映射信息。当打开丰富文本数据绑定打开的文档时,丰富文本绑定在任何纯文本绑定之前复活,使得纯文本绑定可独立地重新链接至数据存储(以防其数据也改变了)。
丰富文本绑定的文件格式表示使用与现有的XML标记相同的元素名、值等。然而,这些元素通常存在于应用程序120的名空间中,以便确保与应用程序120的早期版本的兼容性。
内容控件重复组件526
图9示出了内容控件选择以支持重复内容的用户界面视图900。内容控件124的内容控件重复组件526允许开发者处理涉及重复内容的构造。这会在无论内容是否被映射到XML数据存储中的XML节点的情况下发生。图9示出了具有控制重复部位内容控件的新按钮904的GUI功能区902。对按钮904的选择采取的动作在表906中示出。
当将重复部位内容控件(Repeating Section Content Control)134-b插入到文档模板130的文档部分132-a中时,重复部位内容控件134-b可处于一个或多个段/行/表周围。与任何其它类型的内容控件134-b不同,重复部位内容控件134-b在不构成整个表的多个相邻行周围有效。与其它类型的内容控件134-b不同,重复部位内容控件134-b通常不具有占位符。例如,当被插入到空段中时,重复部位内容控件134-b完全不围绕任何东西,尽管可任选地有指示文本向模板作者告知添加要被重复的实际内容。
图10示出了用于重复部位内容控件134-b的内容控件选择的用户界面视图1000。插入到文档部分132-a的重复部位内容控件134-b具有唯一的GUI,如图10中所示。首先,如边界框1002内的圆圈1010所指示,在重复部位1008的整个集合周围放置标签。例如,如果在重复部位中有四个项,在四个项的整个集合周围放置一对起始/结束标记。各个项也具有标签。这些标签的可视性与父重复部位标签匹配。例如,父可视性为“起始/结束标记”,那么这些标签也是“起始/结束标记”。其次,如圆圈1012指示,示出了在当前重复项下插入另一重复项的控件。该控件可被置于重复部位内容控件134-b的底边处,后沿上(例如,从左到右的右边、从右到左的左边),并被调整大小以匹配16x16按钮。第三,将三个附加的上下文菜单条目添加到菜单1004中的粘贴项1006下,如圆圈1014所指示。附加上下文菜单条目的属性在表1016中示出。Insert<item>above(在上方插入<项>)条目在当前项之上插入另一重复项。Insert<item>below(在下方插入<项>)条目在当前项的下方插入另一重复项。Delete<item>(删除<项>)条目从文档模板130中删除当前项。
当填充菜单1004时,可从以下非空的第一项得到<item>(<项>):(1)父重复项内容控件134-b中的Section Title(部位标题)属性,父重复部位内容控件134-b的Title(标题),重复部位内容控件134-b的XML映射的节点,或静态文本“item”。无论何时选择被包含在重复部位项内容控件134-b内时,Insert Before/Insert After(之前插入/之后插入)菜单条目被示出并应用于:(1)Insert Before——在选择的第一重复部位项之前插入;以及(2)Insert After在选择中的最后一个重复部位项之后插入。无论何时选择被包含在单个重复部位项时,Delete(删除)菜单条目被示出并应用于该项。
图11示出了用于重复部位的内容控件属性1102的用户界面视图1100。如图所示,可使用复选框控件(Checkbox)1104来设置用户是否被允许添加或移除部位,如表1108所指示。文本框控件(Textbox)1106可允许插入部位标题,如表1110所指示。重复部位内容控件134-b的附加属性表现如下:(1)如果“Allow users to add and remove sections(允许用户添加和移除部位)”属性未被置位,则以上的UI和上下文菜单条目均被抑制;以及(2)仅当前一属性被置位时,才启用“Section title(部位标题)”属性。当可用时,它在上述上下文菜单条目中设置<item>的值。控件的现有属性如下应用:(1)“Content control cannot bedeleted(内容控件不能被删除)”属性意味着重复部位内容控件134-b不能被删除,且内部的项受到上述新项目的控制;(2)它还意味着用户不能删除重复部位中的最后一项;当有一个项留下时,“Delete<item>”条目被禁用;(3)“Contents cannot be edited(内容不能被编辑)”属性意味着仅重复部位之一内的内容控件可被编辑,而新项不能被添加到重复部位;以及(4)Title(标题)/Tag(标签)属性应用于重复部位内容控件。
图12A、12B示出了重复部位内容控件134-b的用户界面视图1200。当重复部位内容控件134-b被插入到文档模板130中时,新行为被应用重复部位内容控件134-b。图12A、12B示出了当新项被添加到文档模板130中时的情况。当新项被添加到文档模板130时,它被如下填充:(1)从中添加该项的项被克隆,且该项中(a)没有子内容控件、或(b)被XML映射的所有内容控件使其内容复位成占位符文本,除了子重复控件的情况以外,子重复控件被降成单个项;(2)新内容被适当插入到现有控件之上/之下;以及(3)XML映射对每个合适的逻辑重新连接。例如,假定重复部位内容控件134-b被示为图12A中的项1202。还假定开发者从菜单1004选择“Insert item above”,则项1202将具有如图12B中所示的附加项1204。
当项或者经由完全包含它的选择或者经由上下文菜单GUI被删除时,项(及其容器标签)被删除。如果“Contents cannot be edited”属性被置位,则仅当选择可被整体删除时,才允许删除(例如,如果之前/之后项的部分也被选择,则不删除任何东西)。如果用户删除了集合中的最后一项,则父重复部位控件134-b被删除,且不能在不按压Undo(撤销,例如撤销删除)的情况下恢复。如果用户从右击菜单中选择“Remove Content Control(移除内容控件)”条目,则重复部位内容控件134-b和所有其它重复部位项内容控件134-b被移除。然而,数据存储不被更新。
当在重复部位周围编辑时,一些命令行为可改变。例如,如果指定的行被包含在重复部位项内,则一些命令可被禁用。如果其整个表被包含在项中(例如,如果它是嵌套表的一部分),则这不会发生。禁用命令的示例可包括Split Table(拆分表)命令和RepeatHeader Rows(重复标题行)命令。此外,如果表包含重复部位内容控件,则Convert to Text(转换成文本)文本被禁用。如果合并跨越重复部位项的起始/结束标签,Merge Cells(合并单元格)动作也可被禁用。如果重复部位项横跨超过单行或单个段落,则Sort(排序)命令可被禁用。Insert Row Above(在上方插入行)和Insert Row Below(在下方插入行)如前所述地操作。Split Cells(拆分单元格)命令不允许用户在行被打开时改变当前行数。此外,用户不能在重复部位与重复部位项控件之间键入,或在重复部位内的相邻重复项之间编辑。
当用户进入设计模式时,对所有重复部位内容控件应用以下逻辑:(1)如果重复部位内容控件是XML映射的,则控件内除第一个项以外的所有项被移除;(2)醋酸盐GUI以及添加/移除项的上下文菜单项被隐藏。当用户退出设计模式时,发生以下情况:(1)如果重复部位内容控件是XML映射的,对重复部位的单个实例进行重复以匹配数据存储中的项数目;以及(2)醋酸盐/上下文菜单在适当时重新出现。
对重复部位内部的XML映射,内容控件映射组件524和/或内容控件重复组件526如下映射它们:(1)如果映射不与作为其父链的一部分的节点集合中的项相交,则绑定是“绝对绑定”并在所有重复部位项中示出相同的内容;(2)如果映射不与作为其父链的节点集合中的项相交,则绑定是“相对绑定”。在后一情况中,如下重新映射绑定:(1)确定节点的绝对绑定(弄平任何查询表达式)——这应对初始映射进行;(2)移除与节点集合相交的绑定的轴;以及(3)相对于重复部位内容项的路径对路径的其余部分求值。
当将重复部位项添加到文档中时,从中添加该重复部位项的重复部位内容项的XML片断被克隆。此外,所有叶XML节点及其属性使其值复位成空串,或者刚好在现有的XML片断之前或在现有的XML片断之后在XML DOM的适当位置中添加新XML子树。此外,相应的重复部位内容项中的所有XML映射相对于此新的XML片断映射。对于出错情况,如果插入由于结构模式错误(例如,maxOccurs(最大存在)=2而用户插入了第3项)而失败,则内容控件映射组件524退回XML和文档模板130中的插入,并提交如下的失败消息:“Another<item>cannot be added to the document.(另一<项>不能被添加到文档中。)”使用前述逻辑来填充<item>。
图13示出了说明其中删除重复部位的情况的逻辑图1300。如逻辑图1300中所示,当从文档模板130中删除重复部位项时,重复部位项的XML片断从数据存储中的XML DOM中移除。XML片断保留在撤销堆栈/剪贴板上,因此它可在父重复部位内剪切/粘贴并被撤销。如果替换子树出现在节点集合(或其任何祖先)上,断开重复部位,执行替换动作,并将其挂回。这防止在替换期间丢失所有的重复部位项。
逻辑图1300提供了删除重复部位项的示例。重复部位内容控件134-b被映射到如项1302和代码1312所指示的具有两个值的节点集合。假定替换子树操作在<title(职位)>上进行。在节点消失之前,重复部位是无界的,如项1304和代码1314所指示。当它们被重新添加时,映射被重新连接,行1和2重新映射到其新的项,并且从行2克隆行3,如项1306和代码1316所指示。
对于出错情况,如果删除由于结构模式错误(例如,minOccurs(最小存在)=2而用户删除了最后两项之一)而失败,则在XML和文档模板130中退回删除,并生成如下的失败消息:“This<item>cannot be deleted from the document.(该<项>不能从文档中删除。)”使用前述逻辑来填充<item>。在打开时,如果节点集合求值为空集合,则不像删除动作一样对待它。相反,重复部位中的项保留,但是取消与数据存储的链接。一旦在节点集合出现单个节点(进行上述替换逻辑),就按需连接映射和添加/移除项。
以下行为应用于涉及重复部位的剪切/复制/粘贴动作。当整体剪切重复部位控件时,不对数据存储作出改变。无论何时重复部位项内容控件经由复制和粘贴移动时,相应的XML节点就在XML数据存储中移动。当项被剪切时,从XML数据存储中移除被映射的节点。当项被粘贴时,如果项被粘贴到兼容的重复部位(例如,绑定到相同节点集合的重复部位)时,被映射的节点被适当插入XML数据存储中(例如,如果它在第2项之后被插入,则在映射到该项的XML节点之后直接插入子树);否则被剪切的XML被丢弃。
总之,或此外,上述实施例可包括增强的内容控件,这些内容控件提供具有在每个控件的基础上定义的演示格式的能力。此外,在运行时动态改变增强的内容控件。另外,增强的内容控件可被映射到节点的集合而非仅单个节点。此外,增强的内容控件可被映射为仅添加新的演示数据(包括其它内容控件)而非替换当前在那里的数据。
图14示出适用于实现上述各实施方式的示例性计算架构1400的实施方式。如在本申请中所使用的,术语“系统”和“组件”旨在表示计算机相关的实体,其可以是硬件、硬件和软件的组合、软件、或者执行中的软件,其示例由示例性计算架构1400提供。例如,组件可以是但不限于,在处理器上运行的进程、处理器、硬盘驱动器、多个(光和/或磁存储介质的)存储驱动器、对象、可执行代码、执行的线程、程序、和/或计算机。作为说明,在服务器上运行的应用和该服务器两者都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,且组件可以位于一个计算机上和/或分布在两个或更多的计算机之间。此外,组件可以通过各种类型的通信介质可通信地彼此耦合以协调操作。该协调可以涉及单向或双向信息交换。例如,组件可以传递通过通信介质传递的信号形式的信息。该信息可被实现成分配给各条信号线的信号。在这些分配中,每一个消息都是信号。然而,其他实施方式可另选地采用数据消息。这些数据消息可以跨各个连接发送。示例性连接包括并行接口、串行接口和总线接口。
在一个实施例中,计算架构1400可包括计算设备的一部分或作为计算设备的一部分实现。电子设备的示例可包括但不限于,移动设备、个人数字助理、移动计算设备、智能电话、蜂窝电话、手机、单向寻呼机、双向寻呼机、消息收发设备、计算机、个人计算机(PC)、台式计算机、膝上型计算机、笔记本计算机、手持式计算机、平板计算机、服务器、服务器阵列或服务器场、web服务器、网络服务器、因特网服务器、工作站、小型计算机、大型计算机、超级计算机、网络设备、web设备、分布式计算系统、多处理器系统、基于处理器的系统、消费电子产品、可编程消费电子产品、电视机、数字电视机、机顶盒、无线接入点、基站、用户站、移动用户中心、无线电网络控制器、路由器、集线器、网关、网桥、交换机、机器、或其组合。各实施例不限于该上下文。
计算架构1400包括各种常见计算元件,如一个或多个处理器、协同处理器、存储器单元、芯片组、控制器、外围设备、接口、振荡器、定时设备、视频卡、音频卡、多媒体输入/输出(I/O)组件,等等。然而,各实施方式不限于由计算架构1400来实现。
如图14所示,计算架构1400包括处理单元1404、系统存储器1406以及系统总线1408。处理单元1404可以是可购得的各种处理器中的任一种。双微处理器和其它多处理器架构也可用作处理单元1404。系统总线1408向包括但不限于系统存储器1406的各系统组件提供到处理单元1404的接口。系统总线1408可以是若干种总线结构中的任一种,这些总线结构还可互连到存储器总线(带有或没有存储器控制器)、外围总线、以及使用各类市场上可购买到的总线架构中的任一种的局部总线。
计算架构1400可包括或实现各种制品。制品可包括存储逻辑的计算机可读的存储介质。计算机可读存储介质的示例可包括能够存储电子数据的任何有形介质,包括易失性存储器或非易失性存储器、可移动或不可移动存储器、可擦除或不可擦除存储器、可写或可重写存储器等。逻辑的示例可包括使用任何合适类型的代码(诸如源代码、已编译代码、已解释代码、可执行代码、静态代码、动态代码、面向对象代码、可视代码等)实现的可执行计算机程序指令。
系统存储器1406可以包括一个或多个更高速的存储器单元的形式的各种类型的计算机可读存储介质,如只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双倍数据率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、诸如铁电聚合物存储器等聚合物存储器、奥氏存储器、相变或铁电存储器、硅-氧化物-氮化物-氧化物-硅(SONOS)存储器、磁卡或光卡、或适于存储信息的任何其他类型的介质。在图14示出的所示实施方式中,系统存储器1406可包括非易失性存储器1410和/或易失性存储器1412。基本输入/输出系统(BIOS)可以存储在非易失性存储器1410中。
计算机1402可包括一个或多个较低速的存储器单元的形式的各种类型的计算机可读存储介质,包括内置硬盘驱动器(HDD)1414、用于读写可移动磁盘1418的磁软盘驱动器(FDD)1416、以及用于读写可移动光盘1422(例如,CD-ROM或DVD)的光盘驱动器1420。HDD1414、FDD 1416、以及光盘驱动器1420可分别由HDD接口1424、FDD接口1426和光盘驱动器接口1428连接到系统总线1408。用于外置驱动器实现的HDD接口1424可包括通用串行总线(USB)和IEEE 1394接口技术中的至少一种或两者。
驱动器及相关联的计算机可读介质提供了对数据、数据结构、计算机可执行指令等的易失性和/或非易失性存储。例如,多个程序模块可存储在驱动器和存储器单元1410、1412中,包括操作系统1430、一个或多个应用程序1432、其他程序模块1434和程序数据1436。
一个或多个应用程序1432、其它程序模块1434和程序数据1436可例如包括:系统100、200、应用程序120、文档模板组件122、内容控件组件124、用户界面组件126、文档模板130、内容控件可视化组件522、内容控件映射组件524、内容控件重复组件526和系统100、200的其它特征和组件。
用户可以通过一个或多个有线/无线输入设备,例如键盘1438和诸如鼠标1440等定点设备将命令和信息输入到计算机1402中。其他输入设备可包括话筒、红外(IR)遥控器、操纵杆、游戏垫、指示笔、触摸屏等等。这些和其他输入设备通常通过耦合到系统总线1408入设备接口1442连接到处理单元1404,但也可通过诸如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口等其他接口连接。
监视器1444或其他类型的显示设备也经由诸如视频适配器1446等接口连接到系统总线1408。除了监视器1444之外,计算机通常包括诸如扬声器、打印机等其他外围输出设备。
计算机1402可使用经由有线和/或无线通信至一个或多个远程计算机,诸如远程计算机1448的逻辑连接在网络化环境中操作。远程计算机1448可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐设备、对等设备或其他常见的网络节点,并且通常包括相对于计算机1402描述的许多或所有元件,但为简明起见仅示出了存储器/存储设备1450。所描绘的逻辑连接包括到局域网(LAN)1452和/或例如广域网(WAN)1454等更大网络的有线/无线连接。这种LAN和WAN连网环境常见于办公室和公司,并且方便了诸如内联网等企业范围计算机网络,所有这些都可连接到例如因特网等全球通信网络。
当在LAN连网环境中使用时,计算机1402通过有线和/或无线通信网络接口或适配器1456连接到LAN 1452。适配器1456可以方便到LAN 1452的有线和/或无线通信,并且还可包括其上设置的用于使用适配器1456的无线功能进行通信的无线接入点。
当在WAN连网环境中使用时,计算机1402可包括调制解调器1458,或连接到WAN1454上的通信服务器,或具有用于诸如通过因特网等通过WAN1454建立通信的其它装置。或为内置或为外置以及有线和/或无线设备的调制解调器1458经由输入设备接口1442连接到系统总线1408。在联网环境中,相对于计算机1402所描绘的程序模块或其部分可以存储在远程存储器/存储设备1450中。应该理解,所示网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其他手段。
计算机1402可操作来使用IEEE 802标准系列来与有线和无线设备或实体进行通信,这些实体例如是在操作上安置成与例如打印机、扫描仪、台式和/或便携式计算机、个人数字助理(PDA)、通信卫星、任何一件与无线可检测标签相关联的设备或位置(例如,电话亭、报亭、休息室)以及电话进行无线通信(例如,IEEE 802.11空中调制技术)的无线设备。这至少包括Wi-Fi(即无线保真)、WiMax和蓝牙TM无线技术。由此,通信可以如对于常规网络那样是预定义结构,或者仅仅是至少两个设备之间的自组织(ad hoc)通信。Wi-Fi网络使用称为IEEE 802.11x(a、b、n、g等等)的无线电技术来提供安全、可靠、快速的无线连接。Wi-Fi网络可用于将计算机彼此连接、连接到因特网以及连接到有线网络(使用IEEE802.3相关介质和功能)。
图15示出适用于实现上述各实施方式的示例性通信架构1500的框图。通信架构1500包括各种常见通信元件,如发射机、接收机、收发机、无线电装置、网络接口、基带处理器、天线、放大器、滤波器,等等。然而,各实施方式不限于由通信架构1500来实现。
如图15所示,通信架构1500包括一个或多个客户机1502和服务器1504。客户机1502可实现客户机系统310、400。服务器1504可实现服务器系统350。客户机1502和服务器1504可操作地连接到可被用来存储相应客户机1502和服务器1504本地的信息(如cookie和/或相关联的上下文信息)的一个或多个相应客户机数据存储1508和服务器数据存储1510。
客户机1502和服务器1504可以使用通信框架1506在彼此之间传递信息。通信框架1506可实现任何公知通信技术和协议,诸如参考系统300、400所描述的那些。通信框架1506可以被实现为分组交换网络(例如,诸如因特网等公共网络、诸如企业内联网等专有网络,等等)、电路交换网络(例如,公共交换电话网)、或分组交换网络和电路交换网络的组合(使用合适的网关和转换器)。
一些实施例可使用表述“一个实施例”和”一实施例”及其派生词来描述。这些术语意味着结合该实施例描述的特定特征、结构、或特性包括在至少一个实施例中。出现在说明书中各个地方的短语“在一个实施例:不必全都指的是同一实施例。此外,一些实施例可使用表述“耦合的”和“连接的”及其派生词来描述。这些术语不必旨在互为同义词。例如,一些实施例可使用术语“连接的”和/或“耦合的”来描述以指示两个或更多元件彼此有直接的物理或电接触。然而,术语“耦合的”还可以意味着两个或更多元件彼此不直接接触,而仍彼此合作或交互。
要强调,本公开的摘要是为了允许读者快速确定本技术公开的性质而提供的。提交摘要的同时要明白,将不用它来解释或限制权利要求的范围或含义。另外,在前面的详细描述中,可以看到,出于将本公开连成一个整体的目的而将各种特征组合在一起放在单个实施方式中。此公开方法将不被解释为反映所要求保护的实施方式要求比每个权利要求中明确陈述的更多特征的意图。相反,如所附权利要求书所反映,发明性的主题存在于比单个已公开实施方式的所有特征少的特征中。从而,据此将所附权利要求结合进详细描述中,其中每个权利要求独立地代表一个单独的实施方式。在所附权利要求书中,术语“包括”和“其中”分别用作术语“包含”和“其特征在于”的易懂的英文等价词。而且,术语“第一”、“第二”、“第三”等等只用作标记,而不旨在将数字要求强加于其对象上。
上面描述的包括所公开的体系结构的各示例。当然,描述每一个可以想到的组件和/或方法的组合是不可能的,但本领域内的普通技术人员应该认识到,许多其他组合和排列都是可能的。因此,该新颖体系结构旨在涵盖所有这些落入所附权利要求书的精神和范围内的更改、修改和变化。

Claims (10)

1.一种用于文档模板的装置,包括:
逻辑设备;以及
在所述逻辑设备上操作以从文档模板生成文档的应用,所述应用包括:
用于检索所述文档模板的文档模板组件,所述文档模板包括多个文档部分;
用于管理嵌在所述文档模板的文档部分中的增强的重复部位内容控件的内容控件组件,所述增强的重复部位内容控件与被安排成存储由所述增强的重复部位内容控件演示的格式化的内容的数据存储相关联,所述内容控件组件用于在所述增强的重复部位内容控件和所述数据存储之间同步对所述格式化的内容的改变,其中,所述增强的重复部位内容控件被置于以下各项中的至少一项的周围:文档部分中的段、行和表,以及用于响应于接收到所述增强的重复部位内容控件处的控制指示将所述增强的重复部位内容控件的克隆复制插入到所述文档部分中;以及
用于使用所述增强的重复部位内容控件从所述文档模板生成所述文档的文档生成器组件。
2.如权利要求1所述的装置,其特征在于,所述内容控件组件用于接收控制指示以修改所述格式化的内容,所述控制指示包括修改用于所述格式化的内容的格式化选项或样式选项的指令。
3.如权利要求1所述的装置,其特征在于,所述内容控件组件用于接收控制指示以修改由所述增强的重复部位内容控件演示的所述格式化的内容,在所述增强的重复部位内容控件的演示字段中演示修改后的格式化的内容,并将修改后的格式化的内容发送给所述数据存储。
4.如权利要求1所述的装置,其特征在于,所述内容控件组件用于检测存储在所述数据存储中的所述格式化的内容已被修改,并将修改后的格式化的内容发送给所述增强的重复部位内容控件以便在所述增强的重复部位内容控件的演示字段中演示。
5.如权利要求1所述的装置,其特征在于,所述内容控件组件用于使用与存储在所述数据存储中的所述格式化的内容的数据模式不同的数据模式来传递修改后的格式化的内容。
6.如权利要求1所述的装置,其特征在于,所述内容控件组件用于:
串行化所述格式化的内容的可扩展标记语言XML元素以形成XML元素串;
从所述XML元素串中移除保留的XML字符;以及
将来自所述XML元素的任何其余的文本存储在所述数据存储中。
7.一种用于文档模板的方法,包括:
演示具有增强的重复部位内容控件的文档模板,所述增强的重复部位内容控件在所述增强的重复部位内容控件的演示字段中具有格式化的内容,其中,所述增强的重复部位内容控件被置于以下各项中的至少一项的周围:文档部分中的段、行和表,并且用于响应于接收到所述增强的重复部位内容控件处的控制指示将所述增强的重复部位内容控件的克隆复制插入到所述文档部分中;
接收控制指示以修改所述格式化的内容;以及
在所述内容控件与同所述增强的重复部位内容控件相关联的数据存储之间同步所述修改后的格式化的内容。
8.如权利要求7所述的方法,其特征在于,包括接收控制指示以修改由所述增强的重复部位内容控件演示的或存储在所述数据存储中的格式化的内容。
9.如权利要求7所述的方法,其特征在于,包括:
接收控制指示以修改存储在所述数据存储中的格式化的内容;
将修改后的格式化的内容发送给所述增强的重复部位内容控件;以及
在所述增强的重复部位内容控件的所述演示字段中演示修改后的格式化的内容。
10.如权利要求7所述的方法,其特征在于,包括:
串行化所述格式化的内容的可扩展标记语言XML元素以形成XML元素串;
从所述XML元素串中移除保留的XML字符;以及
将来自所述XML元素的任何其余的文本存储在所述数据存储中。
CN201210083507.9A 2011-03-28 2012-03-27 使用增强的内容控件来创建结构化文档模板的技术 Active CN102722519B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161468473P 2011-03-28 2011-03-28
US61/468,473 2011-03-28
US13/240,722 2011-09-22
US13/240,722 US8850306B2 (en) 2011-03-28 2011-09-22 Techniques to create structured document templates using enhanced content controls

Publications (2)

Publication Number Publication Date
CN102722519A CN102722519A (zh) 2012-10-10
CN102722519B true CN102722519B (zh) 2017-05-03

Family

ID=46928975

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210083507.9A Active CN102722519B (zh) 2011-03-28 2012-03-27 使用增强的内容控件来创建结构化文档模板的技术

Country Status (4)

Country Link
US (1) US8850306B2 (zh)
EP (1) EP2691873B1 (zh)
CN (1) CN102722519B (zh)
WO (1) WO2012134868A2 (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8434134B2 (en) 2010-05-26 2013-04-30 Google Inc. Providing an electronic document collection
US8856640B1 (en) 2012-01-20 2014-10-07 Google Inc. Method and apparatus for applying revision specific electronic signatures to an electronically stored document
US9116863B1 (en) * 2012-01-31 2015-08-25 The Boeing Company Systems and methods for assembling documents
US9529916B1 (en) 2012-10-30 2016-12-27 Google Inc. Managing documents based on access context
US11308037B2 (en) 2012-10-30 2022-04-19 Google Llc Automatic collaboration
RU2536390C2 (ru) * 2012-10-31 2014-12-20 Общество с ограниченной ответственностью "1С" Способ для автоматизированного создания отчетов
US10410257B1 (en) * 2012-12-18 2019-09-10 Nativo, Inc. Native online ad creation
US9384285B1 (en) 2012-12-18 2016-07-05 Google Inc. Methods for identifying related documents
US9495341B1 (en) 2012-12-18 2016-11-15 Google Inc. Fact correction and completion during document drafting
US9710444B2 (en) 2013-05-22 2017-07-18 Microsoft Technology Licensing, Llc Organizing unstructured research within a document
US9514113B1 (en) 2013-07-29 2016-12-06 Google Inc. Methods for automatic footnote generation
US9842113B1 (en) 2013-08-27 2017-12-12 Google Inc. Context-based file selection
US11966554B2 (en) * 2013-09-16 2024-04-23 Field Squared, Inc. User interface defined document
US9529791B1 (en) 2013-12-12 2016-12-27 Google Inc. Template and content aware document and template editing
US20150286616A1 (en) * 2014-04-07 2015-10-08 Ephox Corporation Method For Generating A Document Using An Electronic Clipboard
US9361635B2 (en) * 2014-04-14 2016-06-07 Yahoo! Inc. Frequent markup techniques for use in native advertisement placement
CN105183706A (zh) * 2014-05-27 2015-12-23 腾讯科技(北京)有限公司 富文本处理方法和装置
CN105446967A (zh) * 2014-06-03 2016-03-30 中国石油化工股份有限公司 一种多模态评价报告的生成方法
US9703763B1 (en) 2014-08-14 2017-07-11 Google Inc. Automatic document citations by utilizing copied content for candidate sources
CN105740217B (zh) * 2014-12-08 2019-08-30 珠海金山办公软件有限公司 一种基于文档模板的文档生成方法及装置
CN104598636B (zh) * 2015-02-06 2017-09-19 无锡江南计算技术研究所 复杂文档分离组织方法以及复杂文档自动生成方法
US20160314408A1 (en) * 2015-04-21 2016-10-27 Microsoft Technology Licensing, Llc Leveraging learned programs for data manipulation
US10671796B2 (en) * 2015-06-07 2020-06-02 Apple Inc. Article authoring, distribution and rendering architecture
US10902340B2 (en) 2016-01-25 2021-01-26 International Business Machines Corporation Dynamic templates for incremental addition of specialized content into a cognitive question answer system
US9922022B2 (en) * 2016-02-01 2018-03-20 Microsoft Technology Licensing, Llc. Automatic template generation based on previous documents
CN105868173A (zh) * 2016-03-24 2016-08-17 西安电子科技大学 基于内容控件的学位论文模板设计方法
CN107590113A (zh) * 2016-07-08 2018-01-16 珠海金山办公软件有限公司 一种幻灯片展示提示文字的方法及装置
US10620974B2 (en) 2017-02-13 2020-04-14 Microsoft Technology Licensing, Llc Gallery control with dynamically determined control template replica sizes
CN107329745A (zh) * 2017-06-16 2017-11-07 贵州广思信息网络有限公司 一种增强word文档可操作性的方法
CN107340946A (zh) * 2017-06-16 2017-11-10 贵州广思信息网络有限公司 一种大文档下统一管理内容控件的方法
CN107644005B (zh) * 2017-08-17 2023-12-01 珠海云游道科技有限责任公司 可视化文档编辑装置及方法
US10949606B2 (en) * 2018-07-02 2021-03-16 Jpmorgan Chase Bank, N.A. System and method for low-maintenance conversion of advance function presentation format to portable document format
CN109871523A (zh) * 2019-01-31 2019-06-11 成都摹客科技有限公司 一种基于原型设计工具的单元格子的快速创建方法及系统
CN109871254A (zh) * 2019-01-31 2019-06-11 成都摹客科技有限公司 一种可分离的原型工具的单元格子的创建方法及系统
CN110502450A (zh) * 2019-02-21 2019-11-26 贵州广思信息网络有限公司 一种word中存储管理器
CN110489085A (zh) * 2019-02-21 2019-11-22 贵州广思信息网络有限公司 一种word内容控件扩展存储数据的方法
CN110598194B (zh) * 2019-08-09 2024-05-07 平安科技(深圳)有限公司 一种非满格表格内容提取方法、装置及终端设备
CN110705237B (zh) * 2019-09-18 2023-03-14 深圳证券交易所 文档的自动生成方法、数据处理设备及存储介质
JP7409104B2 (ja) * 2020-01-20 2024-01-09 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
CN111695518B (zh) * 2020-06-12 2023-09-29 北京百度网讯科技有限公司 结构化文档信息标注的方法、装置及电子设备
CN115374757A (zh) * 2021-05-17 2022-11-22 北京字跳网络技术有限公司 信息的处理方法、装置、终端和存储介质
US11960864B2 (en) * 2021-09-27 2024-04-16 Microsoft Technology Licensing, Llc. Creating applications and templates based on different types of input content
CN113793233A (zh) * 2021-11-15 2021-12-14 广东卓维网络有限公司 电力交易合同的生成处理方法、系统、存储介质及处理器

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577323A (zh) * 2003-07-28 2005-02-09 国际商业机器公司 结构化文挡处理器、结构化文挡处理方法和程序
CN101171582A (zh) * 2005-05-09 2008-04-30 阿玛得斯两合公司 用于从数据库生成xml文档的动态方法

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5388203A (en) * 1991-03-29 1995-02-07 Kabushiki Kaisha Toshiba Function extraction method and apparatus
CN101303717B (zh) * 1995-02-13 2015-04-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
JP3684554B2 (ja) * 1995-04-20 2005-08-17 富士ゼロックス株式会社 文書処理装置
US6199082B1 (en) * 1995-07-17 2001-03-06 Microsoft Corporation Method for delivering separate design and content in a multimedia publishing system
US6055543A (en) * 1997-11-21 2000-04-25 Verano File wrapper containing cataloging information for content searching across multiple platforms
WO2001091028A1 (en) * 2000-05-20 2001-11-29 Leem Young Hie On demand contents providing method and system
US7051276B1 (en) * 2000-09-27 2006-05-23 Microsoft Corporation View templates for HTML source documents
US6912538B2 (en) 2000-10-20 2005-06-28 Kevin Stapel System and method for dynamic generation of structured documents
US7546527B2 (en) 2001-03-06 2009-06-09 International Business Machines Corporation Method and apparatus for repurposing formatted content
US6917969B2 (en) 2002-01-03 2005-07-12 International Business Machines Corporation Portable bean-based content rendering
US7337388B2 (en) * 2003-01-02 2008-02-26 Microsoft Corporation Tool-based iterative document management
US7017112B2 (en) 2003-02-28 2006-03-21 Microsoft Corporation Importing and exporting markup language data in a spreadsheet application document
US7096422B2 (en) 2003-02-28 2006-08-22 Microsoft Corporation Markup language visual mapping
US20050114765A1 (en) * 2003-11-25 2005-05-26 Gudenkauf John C. Producing a page of information based on a dynamic edit form and one or more transforms
US20050171966A1 (en) 2004-01-29 2005-08-04 International Business Machines Corporation Relational to hierarchical tree data conversion technique
US7730394B2 (en) * 2005-01-06 2010-06-01 Microsoft Corporation Data binding in a word-processing application
US7644354B2 (en) * 2005-04-29 2010-01-05 Microsoft Corporation Systems and methods for supporting flexible information appearance and behavior with extensible multi-phase transform engine
US8037408B2 (en) * 2005-12-22 2011-10-11 Sap Ag Systems and methods of validating templates
US8234312B2 (en) 2006-02-28 2012-07-31 Sap Ag Schema mapping and data transformation on the basis of layout and content
US8281026B2 (en) * 2006-03-18 2012-10-02 Metafluent, Llc System and method for integration of streaming and static data
US20070245235A1 (en) 2006-03-31 2007-10-18 Microsoft Corporation Efficient storage of drawing objects in synchronizable electronic documents
US8224769B2 (en) * 2007-03-05 2012-07-17 Microsoft Corporation Enterprise data as office content
US7720814B2 (en) * 2007-04-04 2010-05-18 Microsoft Corporation Repopulating a database with document content
US7747657B2 (en) 2007-06-08 2010-06-29 International Business Machines Corporation Mapping hierarchical data from a query result into a tabular format with jagged rows
US7933952B2 (en) 2007-06-29 2011-04-26 Microsoft Corporation Collaborative document authoring
US8434055B2 (en) 2007-07-26 2013-04-30 International Business Machines Corporation Apparatus, system, and method for hiding advanced XML schema properties in EMF objects
US8245246B2 (en) * 2008-09-09 2012-08-14 International Business Machines Corporation Method, system, and computer program product for implementing a web service interface
EP2451151B1 (en) * 2010-11-08 2014-08-13 Deluxe Media Inc. Method and apparatus for use in controlling the playback of contents related with a recorded content.

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577323A (zh) * 2003-07-28 2005-02-09 国际商业机器公司 结构化文挡处理器、结构化文挡处理方法和程序
CN101171582A (zh) * 2005-05-09 2008-04-30 阿玛得斯两合公司 用于从数据库生成xml文档的动态方法

Also Published As

Publication number Publication date
US20120254730A1 (en) 2012-10-04
EP2691873B1 (en) 2021-05-26
EP2691873A4 (en) 2015-04-08
WO2012134868A2 (en) 2012-10-04
US8850306B2 (en) 2014-09-30
WO2012134868A3 (en) 2012-12-27
CN102722519A (zh) 2012-10-10
EP2691873A2 (en) 2014-02-05

Similar Documents

Publication Publication Date Title
CN102722519B (zh) 使用增强的内容控件来创建结构化文档模板的技术
US8135755B2 (en) Templates in a schema editor
US10534842B2 (en) Systems and methods for creating, editing and publishing cross-platform interactive electronic works
CN102915319B (zh) 用于信息电子集聚的技术
Hyvönen Publishing and using cultural heritage linked data on the semantic web
CN102707949B (zh) 一种基于本体的可视化概念建模方法
Viegas et al. Manyeyes: a site for visualization at internet scale
US20090303239A1 (en) Methods and systems for creating and editing a graph data structure
CN102999482A (zh) 用于管理协作文档的技术
US20100241951A1 (en) Generating Formatted Documents Based on Collected Data Content
US9990102B2 (en) Creating and editing digital content works
CN107025916A (zh) 用于信息电子集聚的技术
Southwick A guide for transforming digital collections metadata into linked data using open source technologies
JP5926470B1 (ja) 電子ファイルの構造、コンピュータ読み取り可能な記憶媒体、電子ファイル生成装置、電子ファイル生成方法、電子ファイル
US20220164526A1 (en) Method And Apparatus For Structured Documents
Piasecki et al. WordNetLoom: a WordNet development system integrating form-based and graph-based perspectives
Bountouri et al. Interoperability between archival and bibliographic metadata: An EAD to MODS crosswalk
US20140068426A1 (en) System and method of modifying order and structure of a template tree of a document type by merging components of the template tree
Di Iorio et al. Ontology-driven generation of wiki content and interfaces
Pellegrino et al. Managing and Visualizing Your BIM Data: Understand the fundamentals of computer science for data visualization using Autodesk Dynamo, Revit, and Microsoft Power BI
Niu Hierarchical relationships in the bibliographic universe
JPH09282218A (ja) Html文書本型整形方法及びその装置
Petiya Building a Semantic Web of Comics: Publishing Linked Data in HTML/RDFa Using a Comic Book Ontology and Metadata Application Profiles
US20210286847A1 (en) Flexible multi-media system
Habraken Microsoft Office 2019 Inside Out

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1177010

Country of ref document: HK

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150727

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150727

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1177010

Country of ref document: HK