CN1659559A - 用于规定和处理合法表达的系统和方法 - Google Patents

用于规定和处理合法表达的系统和方法 Download PDF

Info

Publication number
CN1659559A
CN1659559A CN038130157A CN03813015A CN1659559A CN 1659559 A CN1659559 A CN 1659559A CN 038130157 A CN038130157 A CN 038130157A CN 03813015 A CN03813015 A CN 03813015A CN 1659559 A CN1659559 A CN 1659559A
Authority
CN
China
Prior art keywords
clause
contract
action
litigant
statement
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.)
Pending
Application number
CN038130157A
Other languages
English (en)
Inventor
X·王
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.)
Contentguard Holdings Inc
Original Assignee
Contentguard Holdings Inc
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 Contentguard Holdings Inc filed Critical Contentguard Holdings Inc
Publication of CN1659559A publication Critical patent/CN1659559A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services
    • G06Q50/184Intellectual property management
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/20Individual registration on entry or exit involving the use of a pass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Technology Law (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • Operations Research (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Primary Health Care (AREA)
  • Multimedia (AREA)
  • Bioethics (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

提供规定一种合法表达的系统和方法,在处理这种合法表达的系统中使用。该系统和方法包括提供一种合法表达语言,这种语言包括责任元素(304)、禁令元素(306)、意图元素(310)和声明元素(308)这些元素中的至少一个,其中责任元素(304)规定当事人必须履行行动的义务,禁令元素(306)规定当事人不准执行某一行动的禁止,意图元素(310)规定当事人想要履行行动的意向,以及声明元素(308)规定当事人一定履行行动的断言。该系统和方法还包括由系统解释使用合法表达语言规定的合法表达。

Description

用于规定和处理合法表达的系统和方法
技术领域
本发明一般涉及数字权限与合同管理的系统和方法,且更具体地涉及用于在数字权限与合同管理系统内规定和处理合法表达诸如合同的系统和方法。
背景技术
与数字内容如文档、音乐、电影、软件、信息等等以计算设备可使用的形式通过电子方式特别是通过因特网广泛发行有关的最重要的问题之一是,在数字内容发行和使用期间提供实施知识产权的能力。解决这个问题的技术在此称为数字权限管理(Digital Rights Management)(DRM)。然而,在实现数字权限管理系统中有许多问题要考虑,诸如认证、授权、记帐、付费与财务结算、权限规范、权限验证、权限实施和文档保护问题,这里只列出了一些。
例如,在印刷的文档和其它物理内容的领域中,通常将作者创作的作品提供给出版者,由后者排版印刷该作品的大量拷贝。随后由发行者将这些拷贝送到书店或其它零售口,最终用户从他们那里购买拷贝。尽管印刷文档的低质量复制和高成本发行已经对大多数文档的未经授权的复制起到了威慑作用,但以高质量复制、修改和再发行未受保护的数字内容更为容易。因此,需要一种机制来保护数字内容。
在当前的通用计算和通信系统如个人计算机、工作站及其它通过通信网络如局域网(LAN)、企业内部互联网和因特网连接的设备内防止或者甚至制止人们制作未经授权的电子内容拷贝,与其相关联的困难已被普遍认识到了。许多为防止未经授权的复制提供基于硬件的解决方案的尝试已证明是不成功的。而且,高带宽或宽带通信技术的部署和现在称为国家信息基础设施(National Information Infrastructure)(NII)的发展正在使以电子方式发行包括视频文件如全长的电影在内的大文档更为方便,而且这使得未经授权的复制和发行数字内容更容易激增。因此,对进一步开发DRM技术的需求正变成更为优先考虑的事情。
因此,共同转让的美国专利No.5,634,012揭示了一种DRM系统,用于控制数字内容的发行,其中DRM系统的设备可以包括与其相关联的储存库。一组预定的使用事务步骤定义了由储存库为实施与内容相关联的使用权限而使用的协议。使用权限坚持于内容且与内容相关联的使用权限包括数字作品。使用权限可允许使用内容的各种方式,诸如观看或打印或显示内容的权限,只使用内容一次的权限,发行或再发行内容的权限等等。这样的使用权限可以视付费或其它条件而定。然而,需要这样一种系统和方法,使一方或多方能够容易且安全地管理、交换、解释、实施或以其它类似的方式处理合法表达信息,如与合同有关的信息。
发明内容
本发明的实施例解决上述及其它需求,它提供一种改进的规定和处理合同的系统和方法。
因此,在本发明实施例的一个方面,提供规定一种合法表达的方法,在处理这种合法表达的系统中使用。该方法包括提供一种合法表达语言,它包括责任元素、禁令元素、意图元素和声明元素这些元素中的至少一个,其中责任元素规定当事人必须履行行动的义务,禁令元素规定当事人不得执行行动的禁止,意图元素规定当事人想要履行行动的意向,以及声明元素规定当事人一定履行行动的断言。该方法还包括由所述系统解释使用所述合法表达语言规定的合法表达。
在本发明实施例的另一个方面,提供一种处理合法表达的系统,它包括提供合法表达语言的装置。合法表达语言包括责任元素、禁令元素、意图元素和声明元素这些元素中的至少一个,其中责任元素规定当事人必须履行行动的义务,禁令元素规定当事人不得执行行动的禁止,意图元素规定当事人想要履行行动的意向,以及声明元素规定当事人一定履行行动的断言。该系统还包括解释使用所述合法表达语言规定的合法表达的手段。
在本发明实施例的另一个方面,提供一种合法表达,它适于在处理合法表达的系统中使用。合法表达包括责任元素、禁令元素、意图元素和声明元素这些元素中的至少一个,其中责任元素规定当事人必须履行行动的义务,禁令元素规定当事人不得执行行动的禁止,意图元素规定当事人想要履行行动的意向,以及声明元素规定当事人一定履行行动的断言,由此计算机系统可以解释合法表达。
由下面的详细描述,简单地通过例示一些包括预期实现本发明的最佳模式在内的示例性实施例和实现,本发明的其它方面、特征和优点显而易见。本发明还能够具有其它和不同的实施例,并且可以在不脱离本发明的精神和范围的所有方面修改其若干细节。因此,本质上应该将附图和说明视为例示性的,而非限制性的。
附图说明
在附图的图片中,作为例子而不是作为限制例示本发明,且同样的标号表示相似的元素,这些附图是:
图1例示了示例性数字权限管理系统,可在其上实现本发明的各种实施例;
图2例示了在图1的数字权限管理系统中可以使用的示例性合同表达语言的示例性合同数据模型;
图3例示了可以在图2的示例性合同数据模型中使用的示例性条款;
图4例示了可扩展权限标记语言(XrML)准予的示例性模型;
图5例示了示例性优先选择策略模型,它允许设置解决冲突和相重性的优先权并可在图2的示例性合同数据模型中使用;
图6例示了基于示例性合同表达语言的示例性查询驱动处理系统;
图7例示了基于示例性合同表达语言的示例性上下文驱动处理系统;
图8例示了基于示例性合同表达语言的示例性冲突或相重性驱动处理系统;
图9例示了基于示例性合同表达语言的示例性复合或混合处理系统;
图10例示了基于示例性合同表达语言的示例性联动系统;
图11是例示图6的系统的示例性查询驱动处理的流程图;
图12是例示图7的系统的示例性上下文驱动处理的流程图;
图13是例示图8的系统的示例性冲突或相重性驱动处理的流程图;以及
图14是例示图9和10的系统的示例性复合或混合和联动系统的流程图。
具体实施方式
描述规定和处理合同的系统和方法。在下面的描述中,为了说明,阐述了许多具体的细节,以便提供对本发明的彻底理解。然而,对于本领域的熟练技术人员是显而易见的,即在没有这些具体细节或者在等价的安排条件下可以实施本发明。在某些实例中,众所周知的结构或装置以方框图形式示出,以便避免不必要地模糊本发明。
如上面提到的,认证、授权、记帐、付费与财务结算、权限规范、权限验证、权限实施和文档保护问题应当由数字权限管理系统来解决。共同转让的美国专利No.5,530,235、No.5,629,980、No.5,634,012、No.5,638,443、No.5,715,403、No.6,233,684和No.6,236,971揭示了解决这些和其它问题的DRM系统,在此通过引用将所有这些专利的全部说明书包括在这里。
本发明可以使用例如,如在本说明书中各处由方括号[..]括起来的和在此提供的附录中交叉引用的数字引证的文章、书籍、说明书等等中进一步描述的技术、系统、方法、算法、概念等等,这里通过引用将所有这些的全部内容包括在此。
通常,可以使用示例性实施例用于合法表达的规范、处理、执行、管理等等,诸如合同规范、处理、执行和管理。例如,示例性实施例包括允许规定合法表达的机制,并包括解释和执行这类表达的系统,以便控制系统实体、用户等等的行为。
示例性实施例介绍示例性合法表达语言(Legality Expression Language),例如基于可扩展标记语言(XML)、可扩展权限标记语言(XrML)[1]等等,并可以包括示例性合同表达语言(Contract Expression Language)(CEL)。有利的是,例如,示例性合同表达语言考虑到在电子内容、服务发行值链(service distribution value chain)等等中参与者之间的合同协议的表达。有利的是,示例性实施例可以应用于在线和离线环境。
示例性合同表达语言可以包括表达电子合同的机器可读语言和用于以示例性合同表达语言表达的合同的机器可解释的语义模型。示例性合同表达语言可以支持合同的整个寿命周期,而示例性实施例包括示例性合同表达语言的各种示例性处理系统,以允许在合同参与者中履行和执行合同。
在示例性实施例中,关键词例如“必须(must)”、“不得(must not)”、“必需的(required)”、“会(shall)”、“不会(shall not)”、“应当(should)”、“不应当(shouldnot)”、“推荐的(recommended)”、“可(may)”和“可选的(optional)”,可以在用由示例性合同表达语言规定的语句(statement)或表达中使用,以指示要求的等级,并且例如可以如在IETF RFC 2119[4]中描述的那样解释。在示例性实施例中,行动(act)可以包括进行或者履行某事的过程或状态。在示例性实施例中,事件(event)可以包括发生的、可以被捕获且值得注解(annotating)的某事等。行动与事件不同,其不同可以在于当履行行动时行动可以变成事件。权限(right)或义务(obligation)的概念可以是行动的抽象。
在示例性实施例中,协议(agreement)可以包括有关动作过程(course of action)的各方之间的安排,例如诸如合同法中各方之间的协商已完成的阶段。称为“合同(contact)”的法律关系的基础是各方的协议。因而,协议可以包括具体表达合同的书面形式或文档。
在示例性实施例中,断言(assertion)可以包括履行某行动的声明。在示例性实施例中,条件(condition)可以包括某事,例如,对于其它事物的出现或发生是绝对必要的某事。
在示例性实施例中,例如,合同可以包括一个承诺(promise)或者一组承诺,对于不履行承诺,法律给予补救(remedy),或者对于履行承诺,法律以某种方式认为是一种责任[14]、在二人或多人之间的协议或契约,其中每方约束他或她进行或者避免某行动,并且每方获得另一方所承诺的权限等等。
在示例性实施例中,意向(intention)可以包括一个人想要遵循的动作过程,义务可以包括要求某人履行某行动的责任,许可(permission)可以包括权限,当事人(principal)可以包括涉及履行行动的实体的身份证明的概略,禁止(prohibition)可以包括禁止某人履行行动的要求,以及承诺可以包括以规定的方式行动或制止行动的意向的表示[14]。在示例性实施例中,资源可以包括当事人可对其履行某行动的对象。例如,资源可以包括数字作品如电子书、音频或视频文件、图象等等,可以包括服务如电子邮件服务、企业对企业(B2B)事务服务等等,可以包括当事人可以拥有的信息部分如姓名、电子邮件地址等等。
在示例性实施例中,权限可以包括授权某人履行行动的特权,违背(breach)可以包括合同一方未能履行合同义务,要约(offer)可以包括在受约人接受的条件下将来进行或避免进行某项规定的事宜[14],补救可以包括纠正错误或过失的行动,担保(warranty)可以包括用于保证或确保的合同款项,违背它则给予要求损害赔偿费的权限,但没有拒绝合同主题或将合同视为拒绝接受的权限。
除表达合同信息例如与许可、义务、禁止等有关的信息之外,有利的是,可以使用示例性合同表达语言定义语言结构,诸如“声明(claim)”、“意图(intent)”等等,支持合同协议并在整个合同的寿命周期内满足处理需求。有利的是,示例性合同表达语言表达可以例如由人来处理、由机器来处理,等等。
除示例性合同表达语言的示例性数据模型和示例性词汇之外,可以使用示例性合同表达语言提供精确的编程语言,以保证相应的表达可以由机器、人等以无歧义的方式来解释。有利的是,可以使用示例性合同表达语言用于电子内容发行合同,电子服务发行合同等,也可以用于描述、解释、执行任何合适的合同协议等等。
例如,示例性合同表达语言可以基于XrML,一种基于XML的语言,用于规定与由例如内容、资源、服务等的权限持有者提出或准予的使用权限及其相关条件的有关的说明语句或表达。一般使用XrML权限语句或表达宣告某人“可(may)”在规定的资源上按照规定的条件行使规定的权限。但是,XrML权限语句或表达一般不表达某人“必须(must)”在符合条件时行使权限的观念。例如,XrML权限语句或表达“可(may)”给予一个人投票的权限,但一般不规定这样一个人“必须(must)”投票。
相反,有利的是,可以使用示例性合同表达语言表达诸如“某人必须做某事”、“某人不得做某事”等这类语句或表达。有利的是,可以使用示例性合同表达语言在商业环境中处理合同关系、协议等等。例如,有利的是,规定某人必须或者要求其在符合条件时履行一个动作(action),诸如“A方必须在B方已经为货物付费时交付货物”的合同可以用示例性合同表达语言来表达。
在事件管理中,有些事件一定要在满足触发条件时发生,例如,诸如“店员必须在出租的视频过期时提醒顾客”、“为阻止盗版,当前排名前40位的列表不能以比8位幅度更好的分辨率打包”等等。有利的是,可以使用示例性合同表达语言规定这类强制性或禁止性类型的语句,也可以规定许可类型的语句。
另外,有利的是,示例性合同表达语言支持规定意向型语句、事实(factual)型语句、排他型语句等。而且,有利的是,示例性合同表达语言支持定义优先选择规则,用于解决潜在的冲突和在解释一组许可、强制性或禁止性类型语句时可以引发的相重性。
有利的是,可以使用示例性合同表达语言规定意向型语句。例如,有利的是,可以使用示例性合同表达语言表达参加合同协议各方之间的意图,促进对例如在图1的数字权限管理系统上实现的合同管理系统查询的构造,等等。
有利的是,可以使用示例性合同表达语言规定事实型语句。例如,有利的是,可以使用示例性合同表达语言证明合同中规定的行为的实现,解决对合同寿命周期的后端(backend)的需求。
有利的是,可以使用示例性合同表达语言规定排他性类型语句。例如,有利的是,可以使用示例性合同表达语言表达排他性,这是在商业合同中普遍的需求。有利的是,可以使用示例性合同表达语言的优先选择机制,促进单一合同中元素之间、多个合同之间的优先级排序和冲突解决,等等。
例如,示例性合同表达语言可以包括XrML元素,并对XrML设计原则与可扩展性结构进行调节。有利的是,可以将示例性合同表达语言与XrML集成,例如,包括用于提供、发行和消费内容、资源、服务等的商业合同。
在一个示例性实施例中,合同可以包括承诺,或者承诺组,对违背承诺法律给予补救,或者对于履行承诺,法律在某种方面认为是一种责任[14]。两方或多方可以起草合同以宣告各方同意要由各方之中的一些方或其它方进行或避免的行动或事情。例如,语句“爱丽丝必须在从鲍伯收到500,000美元付费后不迟于2002年4月30日将她的房屋卖给鲍伯,由爱丽丝和鲍伯双方签署”可以是一个合同,有利的是,它可以使用示例性合同表达语言来表达。
在示例性合同表达语言中,例如,合同可以包括两方或多方之间在由其中几方作出的若干承诺上的协议。协议的性质可以包括由所涉及各方签署的有效合同。承诺可以包括若干条款,每个条款可以陈述一种关系,例如,诸如当其中几方获得其它方所准予的权限或许可时,当其中几方约束其它方所要求的义务时,当其中几方遵循其它方所强制的禁止时,当其中几方看到其它方所表达的意图时,当其中几方知道其它方所作的断言时,等等。
权限或许可、义务和禁止可以包括履行或不履行某行动或某些类别的行动。在这类款项之间的差别可以是这类款项所针对的行动的模态(modality)的类型。例如,权限或许可可以是能按“可(may)”分类的模态类型,义务可以是能按“必须(must)”分类的模态类型,而禁止可以是能按“不得(must not)”分类的模态类型。相反,意向可以包括履行某行动的愿望,而断言可以描述有关关于履行了、正在履行或将履行某行动的事务状态的事实。在一个示例性实施例中,行动的时态(tense)不必明确地规定,因为时态常常可由意向或断言而弄清楚。
在条款中陈述的关系,例如,可以视条件为真或在事件发生时等等而定。在一个示例性实施例中,用于XrML的当事人-行动-资源-条件(Principal-Act-Resource-Condition)(PARC)模型可以在示例性合同表达语言中增强为用于这类条款的示例性事件-当事人-行动-资源-条件(Event-Principal-Act-Resource-Condition)(EPARC)。有利的是,示例性EPARC可以包括事件-条件-行动规则范例,并可以在计算机科学和其它应用中使用,例如,包括数据库[27]、专家系统[28]、基于策略的管理[29]等等。
可选的事件元素,例如,可以用于捕获可能需要检查或执行条款的系统背景或环境中的变化。例如,义务条款可以在事件发生时被触发,且如果条件为真,则当事人必须在资源上履行行动。在一个示例性实施例中,有利的是,可以使用示例性EPARC模型用于建立相对更有效的系统,例如,用于管理合同、查阅合同、执行合同、实施合同等等。
在一个示例性实施例中,条款也可相互依赖。例如,相互依赖可以包括一个条款,它依赖于另一个条款的有效性,例如,诸如“如果爱丽丝拥有房屋,则她就具有出售该房屋的权限”。因此,出售权限条款依赖于所有权断言条款的有效性。
在一个示例性实施例中,相互依赖可以包括一个条款,它依赖于另一个条款的履行,例如,诸如“如果鲍伯不迟于2002年4月30日行使其用500,000美元付费购买爱丽丝的房屋的权限,则爱丽丝具有出售其房屋的义务“。因此,出售义务条款依赖于购买权限条款的行使。
在一个示例性实施例中,相互依赖可以包括一个条款,它依赖于另一个条款的不履行,有利的是,可以使用它规定对不履行上述合同的补救,例如,诸如“如果鲍伯不迟于2002年4月30日没有向爱丽丝付费500,000美元,则鲍伯必须向爱丽丝支付罚金1,000美元”。因此,罚金义务条款依赖于付费义务条款的不履行。
在一个示例性实施例中,可以将合同规定为具有合同寿命周期的动态对象。合同寿命周期,例如,可以包括创建阶段,执行或履行阶段,修改、扩展或更新阶段,完成、终止或期满阶段,归档阶段,等等。在一个示例性实施例中,创建阶段,例如可以由部分一方或几方提供的要约开始,后面跟随着若干回合的考虑和协商,并最终得到由涉及各方签署的协议。在一个示例性实施例中,执行或履行阶段,例如,可以要求涉及的各方行使权限、履行义务、服从禁止、竞争(contest)意向、验证断言等等。
有利的是,示例性合同表达语言通过使用来自XrML的特征,例如,用于支持合同寿命周期,用于提供合同的信任管理等等,不同于其它策略规范方法[29]。例如,在开放环境中,如在因特网环境中,在所涉及的实体之间的交互可以要求所涉及实体之间某种程度的信任。然而,支持信任管理的策略管理系统一般只处理当事人之间的信任关系和资源。
例如,在一个典型的策略管理系统中,如果当事人拥有某个授权者发出的证书,则当事人是信任的,且如果资源是由信任的当事人以数字方式签署的资源,则资源是信任的。但是,这样的策略管理系统一般不处理策略之间的信任关系。
例如,一般由这样的策略管理系统作出一个基本假设,即为由相应域的所有者或管理员管理的管理或安全域制定策略。因而,这类策略一般受限于调整域内实体的行为。
相反,当合同要在可以包括许多不同的管理和安全域的分布式环境中执行时,一般不必理解合同表达的内容,但更重要的是以某种经认证的方式理解约束在合同内的各方,写作合同的各方,对合同意见一致的各方,等等。毕竟,这类因素一般是首先使合同有效且可实施的内容。否则,未被授权的一方,例如,可以伪造合同并将未经认可的义务强加于无怀疑的一方,可以非法地授权给他人或通过在伪造的合同内准予未被授权的一方过多的许可,可能通过要求未经认可的禁止来限制他人,可以通过在伪造的合同内产生假的声明而误导他人,等等。
有利的是,示例性合同表达语言解决上述和其它问题,例如,允许建立用于内容引用的运行系统,为各种其它应用规定合同的可扩展结构框架,诸如在内容引用框架之外的应用,等等。
在一个示例性实施例中,有利的是,可以使用示例性合同表达语言规定合同的证据。例如,可以使用示例性合同表达语言以可以容易地且无歧义地理解的方式传送合同内表达的信息,等等。
在一个示例性实施例中,有利的是,可以使用示例性合同表达语言规定合同的执行。例如,可以使用示例性合同表达语言,用于促进在适当的上下文中合同内的许可、强制性或禁止性履行,例如,与签署合同各方的商业过程结合在一起,用于判断是否允许一方行使权限或者要求其履行合同的某项义务或服从某项禁止,等等。
在一个示例性实施例中,有利的是,可以使用示例性合同表达语言评价合同。例如,可以使用示例性合同表达语言,用于由签署合同的各方检查许可、强制性或禁止性履行,等等。
在一个示例性实施例中,有利的是,可以使用示例性合同表达语言,用于促进合同的形成。例如,可以使用示例性合同表达语言,用于自动化与要约、接受、协议、约因(consideration)有关的过程,等等。
在一个示例性实施例中,有利的是,可以使用示例性合同表达语言,用于促进合同的动态生成和更新等等。例如,可以使用示例性合同表达语言,用于促进合同的协商,用于支持与合同有关商业模型,等等。
在一个示例性实施例中,有利的是,可以使用示例性合同表达语言,用于促进合同的实施。例如,可以使用示例性合同表达语言,用于实施由合同准予的权限,用于托管合同的义务和约定的禁止,等等。
在一个示例性实施例中,可以使用示例性合同表达语言按照合同权限、义务、禁止等等规定“可(may)”、“必须(must)”和“不得(must not)”类型的模态。示例性合同表达语言不必明确地规定“可不行动(may not act)”类型的模态,因为这类模态可以视为默认的模态。例如,如果没有在以示例性合同表达语言编写的合同表达中提到一项行动,例如播放,则按照这样一个条款,默认的可以是每个人“可不行动”,例如播放。在一个示例性实施例中,“可不行动”默认可以应用于没有提到的给定行动的合同表达,因为可以使用其它表达来将给定行动规定为许可的、有义务的、被禁止的等等。
因此,示例性合同表达语言中的示例性模态规范,例如,可以包括下列类型:
“可行动”-权限或许可,
“必须行动”-义务,以及
“不得行动”-禁止。
有利的是,示例性模态可以与道义逻辑(deontic logic)[24]一致,它可以包括与许可、义务、禁止和其它标准事项有关的推理的原则。有利的是,示例性合同表达语言还支持规定履行一项行动的意向和正在履行一项行动作为事实的断言,例如,如下面给出的:
“想要行动”-意向,以及
“行动了”、“正在行动”、“将行动”、“曾经是”、“是”和“将是”-断言。
有利的是,通过使用这样的机制用于规定意向,例如,可以使用示例性合同表达语言表达对授权代理或服务的查询,以便得到有关所想要的行动是否被许可、是否有义务或是否被禁止等等的答复。另外,通过使用这些机制用于规定意向,例如,可以使用示例性合同表达语言创建属性断言并描述有关合同的事务状态或上下文的事实,例如,为了发出身份和属性证书,定义例如用于规定优先选择和信任的各种策略,保持跟踪合同履行的历史和状态,等等。
有利的是,示例性合同表达语言可以支持多边(multi-lateral)合同,例如,需要超过一方达成一致的合同,支持单边(unilateral)合同,等等。例如,响应于内容引用(content reference)要采取的动作可不仅依赖于多边合同,而且还依赖于可应用的法律和规章和“一方(one-party)”商业规则。有利的是,以示例性合同表达语言表达的合同,例如,允许规定合同的一个或多个签署者,合同内一个或多个承诺的发出者(issuer),等等。例如,有利的是,可以配置用示例性合同表达语言表达的合同,规定如果第一方已经签署了合同或者如果第一方信任合同的发出者,则第一方受合同约束,等等。
本发明包括这样的认识,即合同在电子商务尤其是企业对企业的应用中扮演一个非常重要的角色。通常,这样的合同包括定义诸如描述性声明,并包括权限和责任,诸如法定规则,以及阐述各方对于合同的义务和授权。本发明还包括这样的认识,即可以有与合同有关的法律的复杂和蕴含。作为一种启用的技术,不必使用示例性合同表达语言定义、规定和代替可以由法律实施的合同[16][17]。有利的是,可以使用示例性合同表达语言,使Hohfeld[23]的权限理论能够应用于司法推理。
示例性合同表达语言,例如,可以基于权限表达语言,诸如XrML,等等。例如,示例性合同表达语言可以使用在XrML中定义的元素和类型作为积木,而XrML表达的丰富和可扩展性机制用于为示例性合同表达语言提供可表达性和可扩展性。有利的是,示例性合同表达语言可以是互操作的并与XrML一致。另外,可以引入新的结构,例如,XrML对应物(counterpart)的对等元素和类型,用于XrML结构的容器,用于其它新结构,等等。
在一个示例性实施例中,示例性合同表达语言可以包括权限表达语言,诸如XrML,用于权限或许可,以及其它特征,诸如义务、禁止、意向、断言等等。有利的是,示例性合同表达语言可以补充XrML。另外,示例性实施例,例如,可以允许基于示例性合同表达语言的XrML许可证的提供、产生等等。
示例性合同表达语言可以定义为说明性语言。有利的是,以示例性合同表达语言编写的表达一般没有副作用。例如,因为合同表达语言表达的评价,使用示例性合同表达语言的系统状态不必改变。
将示例性合同表达语言定义为说明性语言,这在将示例性合同表达语言模拟为命令性语言上提供许多好处。例如,有利的是,基于示例性合同表达语言的元素,诸如准予、义务、合同等等,可以与如何行使有关的权限、履行有关的义务、服从有关的禁止、遵守有关的合同等等无关。
有利的是,示例性合同表达语言可以允许开发商业应用、系统等等。有利的是,可以由这类商业应用和系统使用示例性合同表达语言作为表达合同协议的工具,作为管理表达的工具等等,例如,基于对基于示例性合同表达语言的合同进行插入、删除、状态检验、实施、冲突检测、冲突解决等等的机制。
在一个示例性实施例中,示例性合同表达语言不必决定使用示例性合同表达语言的系统应当如何改变其状态,例如,基于示例性合同表达语言的表达的值将如何改变。在一个示例性实施例中,当评价这样的表达时,例如,用于判断当满足相关条件时是否应当履行一个动作,这样的判断可以视为一个原子动作(atomic action)。
示例性实施例可以使用名字空间,例如,包括符合W3C XML Schema(大纲)[11]的大纲,等等。例如,可以使用可扩展标记语言(XML)名字空间前缀,以代表如在表1中其相应的名字空间,无论名字空间宣告是否存在于大纲的段列表和例子中。
                                  表1:大纲名字空间
    前缀                                名字空间
  c:(或省略)   CEL核心名字空间,http://www.xrml.org/schema/2002/04/celcore
  csx:   CEL标准扩展名字空间,http://www.xrml.org/schema/2002/04/celsx
  cpx:   CEL内容发行扩展名字空间,http://www.xrml.org/schema/2002/04/celpx
  r:   XrML核心名字空间,http://www.xrml.org/schema/2001/11/xrml2core
  sx:   XrML标准扩展名字空间,http://www.xrml.org/schema/2001/11/xrml2sx
  cx:   XrML内容扩展名字空间,http://www.xrml.org/schema/2001/11/xrml2cx
  xsd:   XML大纲名字空间,http://www.w3.org/2001/XMLSchema[11]
  dsig:   W3C XML签名名字空间,http://www.w3.org/2000/09/xmldsig#[12]
  enc:   W3C XML加密名字空间,http://www.w3.org/2001/04/xmlenc#[13]
图2例示示例性合同表达语言的示例性合同数据模型200,例如,可以在图1的数字权限管理系统中使用它,等等。在图2中,示例性合同数据模型200可以包括合同202,它具有由合同202的零个或多个签署者210同意的零个或多个承诺208。在示例性实施例中,承诺208可以包括一个或多个条款212,例如,用于描述事件(E)216、当事人(P)218、行动(A)220、资源(R)222、条件(C)224等等之间的关系。
合同202,例如,还可以包括元数据204,诸如标题、状态、在整个合同202中使用的表达的详细目录等等,一个或多个许可证206,诸如XrML许可证等等。在一个示例性实施例中,一个或多个签署者210的签名的存在,例如,可以为了验证合同202的有效性而使用,可以提供合同的完整性,可以提供签署者认证,可以表达签署者210的同意,等等。有利的是,通过签署合同202,签署者210可以同意有关合同202的内容。另外,相应的签名可以用作合同202的用户需要作出决定的证据,该决定关于该用户为了由该用户应用合同202的目的,可否接受合同202中的签名。
在一个示例性实施例中,承诺208可以包括条款212,它是可选地签署的,且每个条款表达一个语句。在一个示例性实施例中,可以使用每个条款的相应签名来表示相应于签名的发出者214表达承诺208内的相应条款212。有利的是,这类签名可以用作条款212的用户可能需要作出的决定的根据,该决定关于该用户是否可以信任这些签名,以便相信在条款212中含有的内容和可靠性。例如,可以使用发出者214元素来对一连串条款实施发出路径确认的过程,以便基于对条款串中根条款(root clause)的发出者的信任来对末端条款(end clause)的发出者建立信任。
在一个示例性实施例中,可以使用条款212描述有关条款212的元素如事件216、当事人218、行动220、资源222和条件224元素之间的某种关系。在一个示例性实施例中,例如,事件216可以是表示事件条件的可选元素。如果由事件216元素定义的相应事件例如在给定的上下文中发生,则可以满足事件216。在一个示例性实施例中,当从相应合同202中省略事件216元素时,默认的解释可以是不要求事件发生并因此满足事件条件。
在一个示例性实施例中,事件216,例如,可以包括外部事件、内部状态、时间事件等等。在一个示例性实施例中,外部事件,例如,可以由在相应合同202所限制的系统之外的实体来触发,例如,诸如当用户请求内容引用时,等等。在一个示例性实施例中,内部事件或状态事件可以由在相应合同202所限制的系统内发生的某事来触发,例如,诸如当允许的打印次数超过某个限度时,等等。在一个示例性实施例中,时间事件可以在到达某个时间点时被触发,例如,诸如在每天1:00am检查调用列表(invocation list),等等。
在一个示例性实施例中,当事人218,例如可以是一个可选的元素,表示可以履行由行动220元素规定的行动的一个实体或一组实体。在一个示例性实施例中,当从相应合同202中省略当事人218时,默认的解释可以是任何实体或全体(entireuniverse),例如,如指定的一组实体。
在一个示例性实施例中,行动220可以包括在相应合同202中规定的一项行动或一组行动。在一个示例性实施例中,可以使用行动220的实例的语义来判断相应行动220是否使用资源222元素。
在一个示例性实施例中,资源222,例如,可以是可选的元素,表示相应行动220所应用于的一个资源或一组资源。在一个示例性实施例中,在从相应合同202中省略资源222时,默认的解释可以是没有资源被规定,如与由这样的省略所规定的资源的全体相比。
在一个示例性实施例中,条件224,例如,可以是一个可选的元素,表示相应的条件,在该条件下可以履行相应的行动220。在一个示例性实施例中,如果符合条件224所规定的相应条件,例如在一个上下文内,则可以满足条件224。在一个示例性实施例中,在从相应合同202中省略条件224时,默认的解释可以是没有条件或者等价于规定的条件总是为真。
有利的是,在计算机科学中,以及在编程语言的研究中,例如诸如对于在保护命令(guarded command)中“如果-受保护的(if-guarded)”和“当-受保护的(while-guarded)”命令[19],在数据库和基于知识的系统中,诸如对于事件-条件-动作规则[20][21],在人工智能中,诸如对于产生式系统(production system)中的“模式-动作(pattern-action)”规则[22],在多-代理(multi-agent)系统[25][26]中,等等,可以使用用于条款212的示例性EPARC数据模型。
图3例示示例性条款212,可以在图2的示例性合同数据模型200中使用它。在图3中,示例性条款212,例如,可以包括一个或多个准予(grant)320、责任(duty)304、禁令(ban)306、声明(claim)308、意图(intent)310等等元素。在一个示例性实施例中,有利的是,例如,可以使用准予302元素表达权限、许可等等,可以使用责任304元素强加义务,可以使用禁令306元素命令禁止,可以使用声明308元素宣告断言,并可以使用意图310元素表达意向。
例如,可以使用示例性条款212定义内涵,诸如在事件(E)、当事人(P)、行动(A)、资源(R)和条件(C)元素302-310之中的模态内涵、意向内涵、事实内涵等等,如下:
准予-(只要E发生),如果符合C则P可在R上履行A。因而,(只要E发生),准予表达在符合C的情况下对P在R上履行A的许可。
责任-只要E发生,如果符合C则P必须在R上履行A。因而,只要E发生,责任要求在符合C的情况下对P在R上履行A的义务。
禁令-只要E发生,如果符合C则P不得在R上履行A。因而,只要E发生,禁令命令在符合C的情况下对P不在R上履行A的禁止。
意图-只要E发生,如果符合C则P想要在R上履行A。因而,只要E发生,意图表达在符合C的情况下对P在R上履行A的意向。
声明-只要E发生,如果符合C则P就一定在R上履行A。因而,只要E发生,声明作出一个关于在符合C的情况下P在R上履行A的断言。
图4例示可以使用PARC模型定义的可扩展权限标记语言(XrML)准予403的示例性模型,包括当事人(P)404元素、行动(A)406元素、资源(R)408元素和条件(C)410元素。因而,可以通过省略事件216元素用条款212来规定XrML准予,例如,如下面给出的:
准予-如果符合C则P可在R上履行A。因而,准予表达在符合C的情况下对P在R上履行A的许可。
有利的是,可以使用示例性合同表达语言的EPARC模型,用于表达权限或许可,如用XrML准予,也可以用于规定义务和禁止,例如,如下面给出的:
“发行服务器必须将用任何音乐请求引向www.someretailer.com。”
使用PARC模型,可以通过将限制条件(proviso)视为发行服务器实现对请求进行引用的义务的条件,对上述强制性语句的限制条件建模,例如,如下面给出的:
(a)“请求的是音乐”,以及
(b)“引用目的地是www.someretailer.com”。
然而,为了服务器进行引用而将限制条件(b)视为必须符合的条件一般是不正确的,因为(b)仅是对进行引用的行动的约束。例如,行动是向目的地www.someretailer.com进行引用。而且,进行这样的引用变成对服务器而言只在有请求时才有的义务。例如,引用必须由传入请求的事件来“触发”。
有利的是,使用示例性合同表达语言模型,可以更准确地规定引用服务,例如,如下面给出的:
“在发生用户请求时(E),如果请求是音乐请求(C),则发行服务器(P)有义务将请求(R)引向www.someretailer.com(A)。”
示例性合同表达语言,例如,有利的是,可以使用XML大纲可扩展性机制,支持可扩展性、元素置换组(Element substitution group)、类型置换(Type substitution)、“任何”元素,等等[1][11]。在一个示例性实施例中,在表2中示出的可扩展元素和类型提供在XrML中未提供的附加元素和类型,但有利的是,在示例性合同表达语言中是可扩展的。
             表2:可扩展元素和类型
    元素/类型     扩展机制
合同 “任何”
承诺 元素置换组,类型置换
签署者 元素置换组,类型置换,“任何”
条款 元素置换组,类型置换
事件 元素置换组,类型置换
当事人 元素置换组,类型置换
行动 元素置换组,类型置换
资源 元素置换组,类型置换
条件 元素置换组,类型置换
对示例性合同表达语言的核心元素这样的扩展,可以包括用于那些概念的元素和类型的定义,那些概念一般且广泛地可应用于示例性合同表达语言使用场合。例如,存在在扩展相应元素的表3中示出的复合元素。
                               表3:复合条款元素
元素 复合元素 意义
事件 OnPerformance /[Clause,Claim1,...,ClaimN] 一个事件,它是在给定声明1,...,声明N(作为上下文的部分),其中N≥0,通过履行条款中的行动引起的。
AnyOneEvent/[E1,...,En] 一组事件,包括E1,...,En。这个事件在E1,...,En之一且只有一个发生时发生。
当事人 AllPrincipals/[P1,...,Pn] 一个当事人,表示所有当事人P1,...,Pn的组合。
AnyOnePrincipal/[P1,...,Pn] 一组当事人P1,...,Pn。这个当事人表示那些P1,...,Pn中的任何一个。
OnBehalfPrincipal/[P1,P2] 当事人P1代表P2行动[32]。
行动 AllActs/[A1,...,An] 一项行动,其履行是所有A1,...,An的同时履行。
AnyOneAct/[A1,...,An] 一组行动A1,...,An。如果履行A1,...,An之一且只有一个被履行,则履行了这个行动。
资源 AllResources[R1,...,Rn] 一个资源,表示所有R1,...,Rn的组合。
AnyOneResource[R1,...,Rn] 一组资源P1,...,Pn。这个资源代表那些R1,...,Rn中的任何一个。
条件 AllConditions[C1,...,Cn] 一个条件,表示C1,...,Cn的合取。
AnyConditions[C1,...,Cn] 一个条件,表示C1,...,Cn的析取。
在一个示例性实施例中,除可以作为在相应的条款212时行动的元行动(meta act)而行动的之外,有许多行动,例如,由下面给出:
发出(issue):一种行动,用于规定一个当事人发出一个条款(例如,在合同内)。用发出行动,人们可以作为条款的发出者通过进行发出行动来创建规定的条款(例如,用于许可、义务、禁止、意向和断言)。
获得(obtain):一种行动,用于规定一个当事人获得一个条款(例如,在合同内)。用获得行动,人们可以接收一个规定的条款。
撤销(revoke):一种行动,用于规定人们作为签署者或发出者通过撤销其签名之一来撤销一个条款。用撤销行动,人们可以使由签署者或发出者作出的现有的条款无效。
先于(precede):一种行动,用于规定按照优先选择一个条款先于另一个。用先于行动,人们可以作出条款中优先选择的声明,以便按条款优先选择来解决潜在的冲突和相重性。
拥有(possess):一种行动,用于规定一个当事人可以拥有某资源。
信任(trust):一种行动,用于规定按照在一个资源上所作的条款(或者,例如,由当事人),当事人信任该资源(例如,也可以是当事人)。用信任行动,人们可以作出与一个当事人所信任的有关的声明。
约束(bind):一种行动,用于规定按照在一资源(例如,也可以是当事人)上所作的条款(或者,例如,由当事人),一个当事人约束于该资源。用约束行动,人们可以作出与当事人所受约束的有关的声明。
委托(delegate):一种行动,用于规定第一当事人有可能将某资源(例如,也可以是条款)委托给第二当事人,以代表第一当事人行动。
在一个示例性实施例中,示例性合同表达语言可以包括一个或多个与过去的暂时的操作[33]有关的条件结构,例如,如下面给出的:
Valid/[Clause,Claim1,...,ClaimN]:如果在Claim1(声明1),...,ClaimN(声明N)中表达的断言下,Cluase(条款)的事件和条件是有效的,则满足Valid(有效的)条件,例如,(在当前上下文之上)。
Exercised/[Clause,StateReference,Count]:如果在Clause(条款)中规定的行动已经履行了Count(计数)次数,则满足Exercised(行使的)条件,且履行的数量记录在(例如,可选的)StateReference(状态参考)中。Count(计数)是可选的,且当被省略时默认为一。在逻辑上,如果存储在StateReference(状态参考)的数量大于或等于Count(计数),则Exercised(行使的)条件为真。
NotExercised/[Clause,StateReference,Count]:如果在Clause(条款)中规定的行动还没有履行Count(计数)次数,则满足NotExercised(未行使的)条件,且履行的次数记录在(例如,可选的)StateReference(状态参考)中。Count(计数)是可选的,且当被省略时默认为一。在逻辑上,如果存储在StateReference(状态参考)的数量小于或等于Count(计数),则NotExercised(未行使的)条件为真。
示例性合同表达语言可以包括对核心元素的内容发行扩展,例如,可以是专用于内容或资源的出版、发行等等。本发明包括这样一种认识,即出版和发行合同可以是一些涉及出版和发行过程的最重要的文档。例如,可以使用出版和发行合同来定义感兴趣的作者和出版者的范围,并支配出版和发行价值链中各方相应的权限和义务,以及支配各方的继承人和接任者的权限和义务。
在一个示例性实施例中,基于示例性合同表达语言的用于合同的示例性语义模型,例如,可以包括合同到一个或多个逻辑命题的映射,例如,Datalog程序[30],Prolog程序[31],它们具有易于理解的逻辑语义,等等。在一个示例性实施例中,语义映射可以是结构性的,可以根据合同的数据模型来定义,等等。有利的是,示例性语义模型可以用作进一步处理的模型的基础。
在一个示例性实施例中,还可以使用语义模型,例如,基于高级逻辑,诸如道义逻辑,例如用于准予302元素的权限或许可,例如用于责任304元素的义务、应该是(ought-to-be)或应该做(ought-to-do),例如用于禁令306元素的禁止,等等。在一个示例性实施例中,还可以使用语义模型,例如,基于用于行动220元素的动态逻辑,例如动作,等等。在一个示例性实施例中,还可以使用语义模型,例如,基于用于发出者214和签署者210元素的信念(doxastic)逻辑,例如,以便可以规定信任和约束关系。在一个示例性实施例中,还可以使用语义模型,例如,基于用于行动220元素的履行和未履行的时间逻辑,例如,以便可以规定补救和担保。
在一个示例性实施例中,为示例性合同表达语言使用的符号,例如,可以由下面给出:
对于一个合同内的任何合同元素Z,用Z/[Z1,...,Zm]表示Z具有m个元素Z1,...,Zm的事实,并用Z@[A1,...,An]表示Z具有n个属性A1,...,An的事实。
设Z是合同的任一合同元素。用[[Z]]表示Z的语义,它是一组可能具有全体合格的变量有关的逻辑命题(例如Horn条款[31])。
设∏是一组全部Datalog类型命题。对于形式(form)Q0←Q1,...,Qm(m≥0)的每个命题Q,用Head(Q)(=Q0)表示Q的结论,并用Body(Q)(=Q1,...,Qm)表示Q的前提。
在一个示例性实施例中,合同202的语义,例如,可以由下面给出:
对于E/[D,P1,...,PM,S1,...,SK]形式的合同表达E,其中D是MetaData(元数据),P1,...,PM是Promise(承诺),0≤M,而S1,...,SK是E内的Signer(签署者),0≤K:
设Slist=[S1,...,SK]。
在一个示例性实施例中,合同202表达(E)的语义[[E]],例如,可以由下面给出:
[[E]]={Metadata(E,D)}∪...∪[[PM]](Slist)∪
[[S1]](E)∪...∪[[SK]](E)∪
{PromiseOf(P1,E)}∪...∪{PromiseOf(PM,E)}
在一个示例性实施例中,合同202表达E的语义,例如,可以包括宣告由来自Slist的签署者210签署的承诺(P1,...,PM)的命题,以及用于合同202表达E的Slist的签署者210(S1,...,SK)的语义。合同202表达E的语义还可以包括每个承诺(P1,...,PM)是合同202表达E的承诺208的一部分的事实。
在一个示例性实施例中,承诺208的语义,例如,可以由下面给出:
设P是P/[C1,...,CN,I1,...,IL]形式的Promise(承诺),其中C1,...,CN是Clause(条款),1≤N,而I1,...,IL,0≤L是P内的Issuer(发出者)。
设Ilist=[I1,...,IL]而Slist是签署直接包括Promise(承诺)P的合同的Signer(签署者)的列表。
在一个示例性实施例中,承诺(P)208的语义[[P]],例如,可以由下面给出:
[[P]](Slist)=[[C]](Ilist,Slist)∪...∪[[CN]](Ilist,Slist)∪
[[II]](P)∪...∪[[IL]](P)∪
{ClauseOf(C1,P)}∪...∪{ClauseOf(CN,P)}.
在一个示例性实施例中,给定签署者210的列表,承诺(P)208的语义,例如,可以包括宣告由来自Ilist的发出者214发出的条款(C1,...,CN)的命题,由来自Slist的签署者210签署的命题,以及用于承诺(P)208的发出者214(I1,...,IL)的语义。承诺(P)208的语义也可以包括每个条款(C1,...,CN)是承诺208(P)的条款212的一部分的事实。
在一个示例性实施例中,签署者210的语义,例如,可以由下面给出:
设S是Signer(签署者)。S的语义[[S]]]是由S签署的合同表达E到∏的映射,使得[[S]](E)是一组命题,其中一些具有首部Signing(E,S),证明Signer(签署者)S是否确实是E的签署者。该组可包括验证S在E上的任何数字签名的命题。
在一个示例性实施例中,条款的语义,例如,可以由下面给出:
设C是C/[E,P,A,R,C]形式的Clause(条款)。设Ilist是发出直接包括C的Promise(承诺)的Issuer(发出者)的列表,以及Slist是签署直接包括Promise(承诺)的合同的Signer(签署者)的列表,该Promise(承诺)直接包括条款C。
在一个示例性实施例中,条款(C)212的语义[[C]],例如,可以由下面给出:
[[C]](Ilist,Slist)={Clause(E,P,A,R,C,Ilist,Slist).}∪
[[E]]∪[[P]]∪[[A]]∪[[R]]∪[[C]].
在一个示例性实施例中,给定发出者214的列表(Ilist)和签署者210的列表(Slist),条款212的语义,例如,可以包括一个命题,它宣告条款212的语义是一个包括事件(E)216、当事人(P)218、行动(A)220、资源(R)222、条件(C)224、发出者214的列表(Ilist)和签署者210的列表(Slist)的条款。条款212的语义也可以包括元素E、P、A、R和C的语义。
在一个示例性实施例中,条款212的准予302、责任304、禁令306、声明308和意图310元素可以包括命题,代替Clause(E,P,A,R,C,Ilist,Slist),例如,如由下面给出的:
Grant(E,P,A,R,C,Ilist,Slist).
Duty(E,P,A,R,C,Ilist,Slist).
Ban(E,P,A,R,C,Ilist,Slist).
Claim(E,P,A,R,C,Ilist,Slist).
Intent(E,P,A,R,C,Ilist,Slist).
在一个示例性实施例中,发出者214的语义,例如,可以由下面给出:
设I是一个Issuer(发出者)。其语义[[I]]是它发出的Promise(承诺)P到∏的映射,使得[[I]]P是一组命题,其中一些具有首部Issuing(P,I),证明Issuer(发出者)I是否确实是P的发出者。该组可包括验证I在P上的任何数字签名的命题。
在一个示例性实施例中,事件(E)216条款元素,例如,可以包括条件。在一个示例性实施例中,事件216条件的语义[[E]],例如,可以由下面给出:
如果E是一个实例Event(事件),则
[[E]]=e[[E]],
其中e[[]]是实例Event(事件)到∏的映射,使得对于每个实例Event(事件)E,e[[E]]是一组命题,其中一些具有首部Event(E),证明Event(事件)E是否发生。
如果E=OnPerfomance/[Clause/[E,P,A,R,C],Claim1,...,ClaimN],则
[[E]]={Event(E)←Claim(E,P,A,R,C,Ilist,Slist),
Claim(E1,P1,A1,R1,C1,Ilist1,Slist1),...
Claim(EN,PN,AN,RN,CN,IlistN,SlistN).}∪
[[Claim1]]∪...∪[[ClaimN]].
如果E=AllEvents/[E1,...,En],则
[[E]]={Event(E)←Event(E1),...,Event(En).}∪
[[E1]]∪...∪[[En]].
如果E=AnyOneEvent/[E1,...,En],则
[[E]]={Event(E)←Event(E1).}∪...∪{Event(E)←Event(En).}∪
[[E1]]∪...∪[[En]].
如果E为空(或被省略),则[[E]]={Event([]).}。例如,这个条件总是符合时。
在一个示例性实施例中,当事人(P)218,例如,可以是单个实体,一组实体,等等。在一个示例性实施例中,当事人218的语义[[P]],例如,可以由下面给出:
如果P是一个实例Principal(当事人),则
[[P]]=p[[P]],
其中p[[]]是实例Principal(当事人)到∏的映射,使得对于每个实例Principal(当事人)P,p[[P]]是一组命题,其中一些具有首部MatchP(X,P),证明输入X是否匹配Principal(当事人)P。例如,如果P是XrML KeyHolder(密钥持有者)当事人,其语义包括命题MatchP(X,P)←X=P,例如,如果作为XML表达的X“在句法上”等于P(例如,按照某种XML标准形式(canonicalization))则X匹配P。
如果P=AllPrincipals/[P1,...,Pn],则
[[P]]={MatchP(X,P)←MatchP(X,P1),...,MatchP(X,Pn).}∪
[[P1]]∪...∪[[Pn]].
如果P=AnyOnePrincipals/[P1,...,Pn],则
[[P]]={MatchP(X,P)←MatchP(X,P1).}∪...∪
{MatchP(X,P)←MatchP(X,Pn).}∪
[[P1]]∪...∪[[Pn]].
如果P=OnBehalfPrincipals/[p1,p2],则
[[P]]={MatchP(X,P)←MatchP(X,P1),
Claim(E,P1,delegate,P2,C),
Event(E),Cond(C).}∪
[[P1]]∪[[P2]].
如果P为空(或者,例如被省略),则[[P]]={MatchP(X,[]).}。例如,输入X匹配任何Principal(当事人)。
在一个示例性实施例中,行动220,例如,可以包括单项行动,一组行动,等等。在一个示例性实施例中,行动220的语义[[A]],例如,可以由下面给出:
如果A是一个实例Act(行动),则
[[A]]=a[[A]],
其中a[[]]是实例Act(行动)到∏的映射,使得对于每个实例Act(行动)A,a[[A]]是一组命题,其中一些具有首部MatchA(X,A),证明输入X是否匹配Act(行动)A。例如,对于XML Play(播放)行动,其语义包括命题MatchA(X,A)←X=A。通常,Play(播放)的语义也可包括匹配更多限制性版本的Play(播放)(例如,诸如PlaySilent(无声播放)-无音频输出的播放)的命题。
如果A=AllActs/[A1,...,An],则
[[A]]=(MatchA[X,A]←MatchA(X,A1),...,MatchA(X,An).}∪
[[A1]]∪...∪[[An]].
如果A=AnyOneAct/[A1,...,An],则
[[A]]={MatchA(X,A)←MatchA(X,A1).}∪...∪
{MatchA(X,A)←MatchA(X,An).}∪
[[A1]]∪...∪[[An]].
在一个示例性实施例中,资源(R)222,例如,可以包括单一资源,一组资源,等等。在一个示例性实施例中,资源222的语义,例如,可以由下面给出:
如果R是一个实例Resouce(资源),则
[[R]]=r[[R]],
其中r[[]]是实例Resource(资源)到∏的映射,使得对于每个实例Resource(资源)R,r[[R]]是一组命题,其中一些具有首部MatchR(X,R),证明输入X是否匹配Resource(资源)R。
如果R=AllResources/[R1,...,Rn],则
[[R]]={MatchR(X,R)←MatchR(X,R1),...,MatchR(X,Rn).}∪
[[R1]]∪...∪[[Rn]].
如果R=AnyOneResource/[R1,...,Rn],则
[[R]]={MatchR(X,R)←MatchR(X,R1).}∪...∪
{MatchR(X,R)←MatchR(X,Rn).}∪
[[R1]]∪...∪[[Rn]].
如果R为空(或被省略),则[[R]]={MatchR(X,[])←false.}。例如,输入X一定匹配任何Resource(资源)。
在一个示例性实施例中,条件(C)224规定条件,其中条件224的语义[[C]],例如,可以由下面给出:
如果C是一个实例Condition(条件),则
[[C]]=c[[C]],
其中c[[]]是实例Condition(条件)到∏的映射,使得对于每个实例Condition(条件)C,c[[C]]是一组命题,其中一些具有首部Cond(C),证明是否符合Condition(条件)C。
如果C=AllConditions/[C1,...,Cn],则
[[C]]={Cond(C)←Cond(C1),...,Cond(Cn).}∪
[[C1]]∪...∪[[Cn]].
如果C=AnyOneCondition/[C1,...,Cn],则
[[C]]={Cond(C)←Cond(C1).}∪...∪{Cond(C):-Cond(Cn).}∪
[[C1]]∪...∪[[Cn]].
如果C为空(或被省略),则[[C]]={Cond([]).}。例如,这个条件总是符合时。
下面的示例性合同、义务、禁止、意向、断言等等,帮助例示示例性合同表达语言的表达性。有利的是,示例性实施例,例如,允许表达排他性,允许表达优先选择以帮助解决潜在的冲突和相重性,允许表达信任和约束策略,等等。
在一个示例性实施例中,Web服务引用,例如,可以由下面给出:
“发行服务器必须将任何音乐请求引向www.sourceretailer.com”。
示例性Web服务引用可以使用示例性合同表达语言来表达,例如,通过使用扩展“refx”,即引用扩展,它定义事件216元素,“receiveCR(接收回车)”,行动220元素,带有约束元素“redirectTo(重定向到)”的“redirect(重定向)”,资源222元素,“request(请求)”,以及条件224元素,″requestConstraint(请求约束条件)”,例如,如由下面给出的:
<contract>
  <promise>
    <duty>
      <refx:receiveCR/>
      +<r:keyHolder licensePartId=“DistributionServer”>
      <refx:redirect>
        <refx:redirectTo>
          <r:serviceReference>
            <r:uddi>
              <serviceKey>
                <uuid>12345678-1234-1234-1234-123456789abc</uuid>
              </serviceKey>
            </r:uddi>
            <r:serviceParameters>
              <r:datum>
                <website url=“www.someretailer.com”/>
              </r:datum>
              <r:datum>
           <refx:request licensePartIdRef=“CR”/>
         </r:datum>
       </r:serviceParameters>
     </r:serviceReference>
   </refx:redirectTo >
</refx:redirect>
<refx:request licensePartId=“CR”/>
       <refx:requestConstraint>
         <r:xmlExpression>/TYPE=“music”
         </r:xmlExpression>
       </refx:requestConstraint>
     </duty>
   <promise>
   signer licensePartId=“publisher”>
     +<dsig:Signature>
     <details>
       <timeOfIssue>2001-11-11T11:11:11</timeOfIssue>
     </details>
   </signer>
   <signer licensePartId=“distributor”>
   +<dsig:Signature>
     <details>
       <timeOfIssue>2001-11-11T11:11:11</timeOfIssue>
     </details>
   </signer>
 </contract>
在一个示例性实施例中,待售物品(goods-for-sale),例如,可以由下面给出:
“如果鲍伯向爱丽丝付500,000美元,则爱丽丝必须出售她的房屋给鲍伯。”
这个示例性待售物品可以使用示例性合同表达语言来表达,例如,通过使用扩展用于不动产扩展的“rex”,它定义事件216元素,“receivePayment(接收付费)”,行动220元素,带有约束“sellTo(出售给)”的“sell(出售)”,以及资源222元素,“property(财产)”,例如,如由下面给出的:
<contract>
  <promise>
    <duty>
      <rex:receivePayment>
        <sx:paymentFlat>
          <sx:rate currencyCode=“USD”>500000</sx:rate>
        </sx:paymentFlat>
        <sx:to>
          <!-Alice’s bank account->
          <sx:aba>
            <sx:institute>123456789</sx:institute>
            <sx:account>0987654321</sx:account>
          </sx:aba>
        </sx:to>
      </rex:receivePayment>
      +<r:keyHolder licensePartId=“Alice”>
      <rex:sell>
        <rex:sellTo>
          +<r:keyHolder licensePartId=“Bob”>
        </rex:sellTo>
      </rex:sell>
      <rex:property licensePartId=“AliceHouse”>
        <rex:location>
          <rex:address>SOME ADDRESS</rex:address>
        </rex:location>
      </rex:property>
    </duty>
  <promise>
  <signer license PartId=“Alice”>
    +<dsig:Signature>
    <details>
      <timeOfIssue>2001-11-11T11:11:11</timeOfIssue>
    </details>
  </signer>
  <signer licensePartId=“Bob”>
    +<dsig:Signature>
    <details>
      <timeOfIssue>2001-11-11T11:11:11</timeOfIssue>
    </details>
  </signer>
</contract>
在一个示例性实施例中,每月公寓租赁合同的一部分,例如,可以由下面给出:
“在本合同有效期内,在一个月的第一天,爱丽丝必须向鲍伯付600美元用于租借公寓。如果爱丽丝未能进行付费,则鲍伯有权将她驱逐出公寓。”
在一个示例性实施例中,可以基于上述表达建立一个合同,例如,可以包括:
责任:从2001年1月1日起,爱丽丝必须在每个月的第一天向鲍伯付600美元。
责任:鲍伯必须在爱丽丝支付租金的每个月允许她在公寓内居住。
准予:爱丽丝在她支付租金的每个月可居住在公寓内。
准予:如果爱丽丝没有支付租金(例如,违反付费义务),则鲍伯可驱逐她。
每月公寓租金合同的示例性部分可以使用示例性合同表达语言表达,例如,如由下面给出的:
<contract>
  <promise>
    <duty>
      <sx:validityTimePeriodic>
    <sx:start>2001-01-01T00:00:00</sx:start>
    <sx:period>P1M</sx:period>
    <sx:duration>P1D</sx:duration>
  </sx:validityTimePeriodic>
  +<r:keyHolder licensePartId=“Alice”>
  <rex:pay>
    <sx:validityTimePeriodic>
      <sx:duration>P1D</sx:duration>
    </sx:validityTimePeriodic>
  </rex:pay>
  <rex:fee>
    <sx:paymentFlat>
      <sx:rate currencyCode=“USD”>1000</sx:rate>
    </sx:paymentFlat>
    <sx:to>
      <!--Bob’s bank account-->
      <sx:aba>
        <sx:institute>123456789</sx:institute>
        <sx:account>0987654321</sx:account>
      </sx:aba>
    </sx:to>
  </rex:fee>
</duty>
<duty>
  +<r:keyHolder licensePartId=“Bob”>
  <rex:rent/>
  <rex:property licensePartId=“Apartment”>
    <rex:location>
      <rex:address>SOME ADDRESS</rex:address>
    </rex:location>
  </rex:property>
  <r:allConditions>
    <fulfillingObligation licensePartId=“AlicePays”>
      <r:keyHolder license PartIdRef=“Alice”/>
      <rex:pay/>
      <rex:fee>
        <sx:paymentFlat>
          <sx:rate currencyCode=“USD”>1000</sx:rate>
        </sx:paymentFlat>
        <sx:to>
          <!-Bob’s bank account->
          <sx:aba>
            <sx:institute>123456789</sx:institute>
            <sx:account>0987654321</sx:account>
          </sx:aba>
        </sx:to>
      </rex:fee>
      <sx:validityTimePeriodic>
        <sx:start>2001-01-01T00:00:00</sx:start>
        <sx:period>P1M</sx:period>
        <sx:duration>P1D</sx:duration>
      </sx:validityTimePeriodic>
    </fulfillingObligation>
    <rex:rentTo>
      <r:keyHolder licensePartIdRef=“Alice”/>
    </rex:rentTo>
  </r:allConditions>
</duty>
<grant>
  <r:keyHolder licensePartIdRef=“Alice”/>
  <rex:liveIn/>
  <rex:property licensePartIdRef=“Apartment”/>
  <fulfillingObligation licensePartIdRef=“AlicePays”/>
</grant>
<grant>
  <r:keyHolder/>
  <rex:evacuate/>
  <r:keyHolder/>
  <r:allConditions>
    <breachingObligation>
      <r:keyHolder licensePartIdRef=“Alice”/>
          <rex:pay/>
          <rex:fee>
            <sx:paymentFlat>
              <sx:rate currencyCode=“USD”>1000</sx:rate>
            </sx:paymentFlat>
            <sx:to>
              <!--Bob’s bank account-->
              <sx:aba>
                <sx:institute>123456789</sx:institute>
                <sx:account>0987654321</sx:account>
              </ax:aba>
            </sx:to>
          </rex:fee>
          <sx:validityTimePeriodic>
            <sx:start>2001-01-01T00:00:00</sx:start>
            <sx:period>P1M</sx:period>
            <sx:duration>P1D</sx:duration>
          </sx:validityTimePeriodic>
        </breachingObligation>
        <rex:evacuateFrom>
          <rex:property licensePartIdRef=“Apartment”/>
        </rex:evacuateFrom>
      </r:allConditions>
    </grant>
  </promise>
  <signer licensePartId=“Alice”>
    +<dsig:Signature>
    <details>
      <timeOflssue>2000-11-11T11:11:11</timeOfIssue>
    </details>
  </signer>
  <signer licensePartId=“Bob”>
    +<dsig:Signature>
    <details>
      <timeOfIssue>2000-11-11T11:11:11</timeOfIssue>
    </details>
  </signer>
</contract>
在一个示例性实施例中,一个在线零售商必须支付传输费用的义务,例如,可以由下面给出:
“Yahoo!必须对符合下列准则的所有销售向AT&T支付0.05的收入:1)产品为电子书籍,和2)消费者的开帐单地址在美国。”
因此,所负的义务是,如果发生由Yahoo!实施的任何销售交易,则Yahoo!在产品是电子书籍且消费者的开帐单地址在美国时向AT&T支付0.05的收入。这个示例性义务责任可以使用示例性合同表达语言表达,例如,如由下面给出的:
<duty>
  <umg:saleTransactionEventAtYahoo license PartId=“sale”/>
  <cpx:company>Yahoo!</cpx:company>
  <cpx:pay/>
    <cx:destination>
      <!-AT&Tas a key holder->
      <r:keyHolder>...</r:keyHolder/>
      </cx:destination>
  </cpx:pay>
  <csx:transactionMarkupPayment>
    <cx:rate>0.05</cx:rate>
    <umg:saleTransactionEventAtYahoo licensePartIdRef=“sale”/>
  </csx:transactionMarlupPayment>
  <r:allConditions>
    <umg:transactionProductType>e-book</umg:transactionProductType>
    <umg:transactionBillingAddress>
      <sx:country>US</sx:country>
    </umg:transactionBillingAddress>
  </r:all Conditions>
</duty>
在一个示例性实施例中,一项证明责任,例如,可以由下面给出:
“媒体播放器的每个修订版必须通过HREV提交给Haxor有限公司。”
因此,所负的义务是,如果发布媒体播放器的修订版,则Microsoft使用HREV协议将媒体播放器提交给Haxor有限公司。可供替换地,可以将Haxor有限公司视为证明服务且与该服务的通信要通过HREV协议。这个示例性证明责任可以使用示例性合同表达语言表达,例如,如由下面给出的:
<duty>
  <!--Define a variable for any revision of the media player released by Microsoft-->
   <for All varName=“mediaPlayer”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpeg7:Mpeg7/mpeg7:DescriptionUnit/mpeg7:Creation/mpeg7:Creator[mpeg7:Ro
    le/@href=“urn:mpeg:mpeg7:cs:MPEG7RoleCS:PUBLISHER”]/mpeg7:Organization/mp
    eg7:Name=“Microsoft”&&
    //mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATEMENT/mpeg7:Mp
    eg7/mpeg7:Description Unit/mpeg7:Creation/mpeg7:Title=“Media Player”
    </xmlExpression>
  </for All>
  <umg:eventOfProductReleasingByMicrosoft/>
    <r:resource varRef=“mediaPlayer”/>
  </umg:eventOfProductReleasingByMicrosoft>
  <!--Microsoft as a key holder-->
  <r:keyHolder>...</r:keyHolder/>
  <cx:copy/>
    <cx:destination>
      <!--Haxor as a key holder-->
      <r:keyHolder>...</r:keyHolder/>
    </cx:destination>
    <cpx:protocol>
     HREV
    </cpx:protocol>
  </cx:copy>
  <r:resource varRef=“medioPlayer”/>
</duty>
在一个示例性实施例中,一项引用责任,例如,可以由下面给出:
“由当前在日本的消费者请求的任何引用必须重定向到NTT的用于分辨率的引用服务。”
因此,“在日本”可以由请求者在请求时的位置来定义,且来自当前在日本的消费者的任何引用请求必须重定向到NTT的引用服务。这个示例性引用可以使用示例性合同表达语言表达,例如,如由下面给出的:
  <duty>
    <refx:receiveCR/>
    +<r:keyHolder licensePartId=“DistributionServer”>
    <refx:redirect>
      <refx:redirectTo>
        <r:serviceReference licensePartId=“NTTReferenceService”>
          <r:uddi>
            <serviceKey>
            <uuid>12345678-1234-1234-1234-123456789abc</uuid>
          </serviceKey>
        </r:uddi>
        <r:serviceParameters>
          <r:datum>
                     <refx:request licensePartIdRef=“CR”/>
          </r:datum>
        </r:serviceParameters>
      </r:serviceReference>
    </refx:redirectTo>
  </refx:redirect>
  <refx:request licensePartId=“CR”/>
  <refx:requestConstraint>
    <cx:territory>
      <cx:location>
          <cx:country>JP</cx:country>
          </cx:location>
        </cx:territory>
  </refx:request Constraint>
</duty>
在一个示例性实施例中,一种可以被禁止或禁令的再现设备(rendering device),例如,如由下面给出的:
“禁止Z45播放任何UMG内容。”
上述示例性禁止或禁令,例如,可以由下面给出:
当再现器(renderer)是设备Z45时,禁止任何人播放UMG内容。
上述示例性禁止或禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<ban>
 <!--Define a variable for any content published by UMG-->
  <forAll varName=“UMGContent”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpeg7:Mpeg7/mpeg7:DescriptionUnit/mpeg7:Creation/mpeg7:Creator[mpeg7:Ro
    le/@href=“urn:mpeg:mpeg7:cs:MPEG7RoleCS:PUBLISHER”]/mpeg7:Organization/mp
    eg7:Name=“UMG”</xmlExpression>
  </forAll>
  <cx:play/>
  <r:resource varRef=“UMGContent”/>
  <cx:renderer>
    <cpx:device type=“Z45”/>
  </cx:renderer>
</ban>
这个示例性禁止或禁令,例如,也可以由下面给出:
禁止任何人使用再现设备Z45播放任何UMG内容。
上述示例性禁止或禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<ban>
  <!--Define a variable for any content published by UMG-->
   <forAll varName=“UMGContent”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpeg7:Mpeg7/mpeg7:DescriptionUnit/mpeg7:Creation/mpeg7:Creator[mpeg7:Ro
    le/@href=“urn:mpeg:mpeg7:cs:MPEG7RoleCS:PUBLISHER”]/mpeg7:Organization/mp
    eg7:Name=“UMG”</xmlExpression>
  </forAll>
  <cx:play>
    <cx:renderer>
      <cpx:device type=“Z45”/>
    </cx:renderer>
  </cx:play>
  <r:resource varRef=“UMGContent”/>
</ban>
在一个示例性实施例中,可以禁止或禁令在一个国家销售一类内容,例如,如由下面给出的:
“禁止向目前在芬兰的购买者销售R级电影。”
上述示例性禁止或禁令例如可由下述给出:
禁示在芬兰的任何人得到任何R级电影。
上述示例性禁止或禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<ban>
  <!--Define a variable for any R-rated movie-->
   <forAll varName=“R-RatedMovie”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpaa:rate=“R”</xmlExpression>
  </forAll>
  <r:obtain/>
  <r:resource varRef=“R-RatedMovie”/>
  <sx:territory>
    <sx:location>
      <sx:country>FI</sx:country>
    </sx:location>
  </sx:territory>
  </ban>
上述示例性禁止或禁令,例如,也可以由下面给出:
禁止任何人向在芬兰的任何人销售R级电影。
上述示例性禁止或禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<ban>
  <!--Define a variable for any R-rated movie-->
   <for/All varName=“R-RatedMovie”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpaa:rate=“R”</xmlExpression>
  </forAll>
  <cpx:sell>
    <cpx:buyer>
      <sx:location>
        <sx:country>FI</sx:country>
      </sx:location>
    </cpx:buyer>
  </cpx:sell>
  <r:resource varRef=“R-RatedMovie”/>
</ban>
在一个示例性实施例中,可以禁止或禁令编码,例如,如由下面给出的:
“分类为‘Top-40(排名前40)’的UMG内容必须以不超过8位分辨率来编码。”
因此,禁止的是,在内容在排名前40列表中时,任何人以超过8位分辨率编码任何UMG内容。这个示例性禁止或禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<ban>
  <!--Define a variable for any content published by UMG-->
   <forAll varName=“UMGContent”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpeg7:Mpeg7/mpeg7:DescriptionUnit/mpeg7:Creation/mpeg7:Creator[mpeg7:Ro
    le/@href=“urn:mpeg:mpeg7:cs:MPEG7RoleCS:PUBLISHER”] /mpeg7:Organization/mp
    eg7:Name=“UMG”</xmlExpression>
  </forAll>
  <cpx:encode/>
      <!--It is assumed that resolution range is specified as 8,12,8-12([8,12]),-12(<=12),8-
  (>=8)-->
      <cx:resolutionRange unit=“bit”>8-</cpx:resolutionRange>
    </cpx:encode>
    <r:resource varRef=“UMGContent”/>
    <umg:top40Content/>
  </ban>
在一个示例性实施例中,使用再现应用播放歌曲的意向,例如,可以由下面给出:
“爱丽丝想要使用Microsoft媒体播放器播放UMG内容。”
因此,所想要的是,爱丽丝使用Microsoft媒体播放器作为再现应用播放任何UMG内容。这个示例性意图可以使用示例性合同表达语言表达,例如,如由下面给出的:
<intent>
  <!--Define a variable for any content published by UMG-->
  <forAll varName=“UMGContent”>
    <xmlExpression>//mpeg21:DIDL/mpeg21:ITEM/mpeg21:DESCRIPTOR/mpeg21:STATE
    MENT/mpeg7:Mpeg7/mpeg7:DescriptionUnit/mpeg7:Oeation/mpeg7:Creator[mpeg7:Ro
    le/@href=“urn:mpeg:mpeg7:cs:MPEG7RoleCS:PUBLISHER”]/mpeg7:Organization/mp
    eg7:Name=“UMG”</xmlExpression>
  </forAll>
  +<r:keyHolder licensePartId=“Alice”>
  <cx:play>
    <cx:renderer>
      <cpx:application type=“Microsoft Media Player”/>
    </cx:renderer>
  </cx:play>
  <r:resource varRef=“UMGContent”/>
</intent>
在一个示例性实施例中,一个证明,例如,可以由下面给出:
“密钥持有者具有名字爱丽丝。”
因此,声明的是,密钥持有者拥有名字属性,值为爱丽丝。
示例性声明可以使用示例性合同表达语言表达,例如,如由下面给出的:
<claim>
  +<r:keyHolder licensePartId=“Alice”>
  <cxs:possess/>
  <sx:commonName>Alice</sx:commonName>
</claim>
在一个示例性实施例中,一种使用状态,例如,可以由下面给出:
“爱丽丝在2001年播放了这首歌曲。”
因此,所声明的是,爱丽丝从2001年1月1日到12月31日播放了这首歌曲。这个示例性声明可以使用示例性合同表达语言表达,例如,如由下面给出的:
<claim>
  +<r:keyHolder licensePartId=“Alice”>
  <cx:play/>
  <r:resource licenseIdRef=“aSong”/>
  <validityInterval>
    <notBefore>2001-01-01T00:00:00</notBefore>
    <notAfter>2001-12-31T23:59:59</notAfter>
  </validityInterval>
</claim>
在一个示例性实施例中,可以使用示例性合同表达语言来规定一个合同条款,例如,以相互排他的方式,以不允许任何其它事发生的方式,等等。例如,可以使用示例性合同表达语言表达一个合同,该合同可以规定某人具有出版数字作品的排他权限,而访客用户,诸如未注册的访客用户,只可以浏览相应Web站点的公众区域。
在一个示例性实施例中,可以使用EPARC模型来模拟合同表达语言条款212。相应地,可以模拟有关事件216、当事人218、行动220、资源222和条件224的条款212。在一个示例性实施例中,排他性或“唯一的”限制可以从一个元素到另一个元素而变化。例如,重定向“只”从特定源引起内容引用(CR),不同于“只”重定向且别的什么也不做。在一个示例性实施例中,例如,可以用引起CR的源的排他列表来规定以前的限制,而可以用行动的排他列表来规定以后的限制。
有利的是,用于规定许可、义务、禁止等等的示例性合同表达语言的表达力也允许规定“唯一”类型的条款。在一个示例性实施例中,排他性的表达力,例如,可以由下面给出:
设E,P,A,R和C是某Event(事件),Principal(当事人),Act(行动),Resource(资源)和Condition(条件)。设G,D和R是相应的包括E,P,A,R,C的Grant(准予),Duty(责任)和Ban(禁令)。假设X∈{E P,A,R,c}为需要是排他的成分。设G(X)表示非排他地具有X的Grant(准予),而G[X]表示排他地具有X的Grant(准予),例如,G只用于X。同样,可以给出D(X),D[X],B(X)和B[X]。然后,“唯一”类型的条款可以使用非排他的Clause(条款)的组合来表达,如下面
G[X]≡G(x)∧B(~X)-排他的具有X的Grant(准予)等价于非排他的具有X的Grant(准予)和非排他的具有~X(非X)的Ban(禁令)。
D[X]≡D(X)∧G’(~X)-排他的具有X的Duty(责任)等价于非排他的具有X的Duty(责任)和非排他的具有~X(非X)的新G’。这里G’与G相同,除了它在G中用~A(不进行A的Act(行动))代替Act(行动)A。
B[X]≡B(X)∧G(~X-排他的具有X的Ban(禁令)等价于非排他的具有X的Ban(禁令)和非排他的具有~X(非x)的Grant(准予)。
在一个示例性实施例中,上述规则,例如,可以由下面给出:
G[X]<=>B[~X]-排他的具有X的Grant(准予)等价于排他的具有~X的Ban(禁令)。
在一个示例性实施例中,有利的是,可以提供一种“句法糖(syntactical sugar)”形式用于排他性。例如,条款212的每个元素可以添加附加的但可选的布尔类型的属性,即排他性,以表示该元素是否为排他的。在一个示例性实施例中,排他性属性可以取假值作为默认值,并当用“Exclusivity=True(排他性=真)”来规定排他性属性时,可以规定相应的元素为排他的。可以认为排他性属性为“句法糖”,因为可以使用标准化变换转换排他的条款,例如,将具有该属性为真的条款转换成非排他的条款,基于示例性排他性规则。
在一个示例性实施例中,一个在某个地域上排他的销售者,例如,可以由下面给出:
“Lycos在澳大利亚是‘我想念妈妈(I Remember Mama)’的唯一授权的销售者。”
因此,所准予的是,Lycos在澳大利亚销售‘I Remember Mama(我想念妈妈)’,并且还禁止任何其它人,例如除Lycos之外的,在澳大利亚销售它。这个示例性准予和禁令可以使用示例性合同表达语言表达,例如,如下面给出的:
<grant>
  <cpx:company>Lycos</cpx:company>
  <cpx:sell/>
  <r:resource licenseIdRef=“aSong”/>
  <sx:territory>
    <sx:location>
      <sx:country>AU</sx:country>
    </sx:location>
  </sx:territory>
</grant>
<ban>
  <forAll varName=“otherCompany”>
    <xmlExpression>//cpx:company!=“Lycos”</xmlExpression>
  </forAll>
  <r:principal varRef=“otherCompany”/>
  <cpx:sell/>
  <r:resource licenseIdRef=“aSong”/>
  <sx:territory>
    <sx:location>
      <sx:country>AU</sx:country>
    </sx:location>
  </sx:territory>
</ban>
在一个示例性实施例中,排他的产品类,例如,可以由下面给出:
“MGM许可银级(silver-class)零售商销售的只有超过2年的电影。”
因此,所准予的是,任何银级零售商可以销售任何超过2年的电影,并且还禁止任何银级零售商销售任何少于2年的电影。例如,“银级零售商”,“任何超过2年的电影”和“任何少于2年的电影”可以使用示例性合同表达语言来规定。这个示例性准予和禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<grant>
  <for All varName=“2YearsOldMovie”/>
  <forAll varName=“silverRetailer”/>
  <cpx:company varRef=“silverRetailer”/>
  <cpx:sell/>
  <r:resource varRef=“2YearsOldMovie”/>
</grant>
<ban>
  <for All varName=“lessThan2YearOldMovie”/>
  <for All varName=“silverRetailer”/>
  <cpx:company varRef=“silverRetailer”/>
  <cpx:sell/>
  <r:resource varRef=“lessThan2YearOldMovie”/>
</ban>
在一个示例性实施例中,排他的产品类,例如,也可以由下面给出:
“MGM许可超过2年的电影只由银级零售商来销售。”
因此,所准予的是,任何银级零售商销售任何超过2年的电影,并且还禁止任何不属于银级的零售商销售任何超过2年的电影。例如,“银级零售商”,“任何超过2年的电影”和“任何非银级零售商”可以使用示例性合同表达语言来规定。这个示例性准予和禁令可以使用示例性合同表达语言表达,例如,如由下面给出的:
<grant>
   <for All varName=“2YearsOldMovie”/>
   <for All varName=“silverRetailer”/>
   <cpx:company varRef=“silverRetailer”/>
  <cpx:sell/>
  <r:resource varRef=“2YearsOldMovie”/>
</grant>
<ban>
  <forAll varName=“2YearsOldMovie”/>
  <forAll varName=“nonSilverRetailer”/>
  <cpx:company varRef=“nonSilverRetailer”/>
  <cpx:sell/>
  <for All varName=“2YearsOldMovie”/>
</ban>
用示例性合同表达语言的禁止和排他性的表达力可以在所表达的合同中导致潜在的冲突。例如,一个合同可要求爱丽丝进行某事的义务,而另一个合同可要求爱丽丝不要进行同一件事的禁止。另外,当多个同一类型的条款212,例如准予320,可应用于同一合同或不同合同,可能需要判断合同之一比其它合同更为优先。
本发明包括这样的认识,即具有冲突和相重性的问题,例如,可以是如何识别潜在的冲突和相重性并解决它们。在一个示例性实施例中,诸如问题可以按照策略来解决,例如按照在较高级的合同中规定的策略。例如,在可能同样有多个较高级合同的情况下,冲突和相重性可递归地在较高级上发生。
尽管以普通且自动的方式来检测和解决冲突和相重性可以是令人想要的,但这可能是不实际的,例如,在要求高可伸缩性的全球分布式系统中同时对不完善的输入进行操作。例如,考虑将一个新合同添加到系统的任务。在小系统中,有可能检查和识别冲突,强制合法协商的覆盖(override)并应用这样的覆盖,例如,有可能触发其它检查和协商循环。相反,在大规模上这样一种运用一般是不实际的,因为新合同的输入可以变成一种极其昂贵的任务。
在一个示例性实施例中,可以使用“最大努力”而不是“必须解决”方法,它可以隐含找到在采取最前面的步骤来识别和解决冲突与允许“真冲突”的可能性并可使用地提供其解决方案之间的折衷。因此,使用示例性合同表达语言的系统,例如,可以配置为尽这样的系统的努力来检测和解决潜在的冲突。在一个示例性实施例中,复杂的系统可以配置成比稍欠复杂的系统在检测和解决潜在冲突方面进行更好的工作,只要复杂的系统和稍欠复杂的在没有冲突的情况下以相似的方式运转。
例如,对于简单的系统,只要检测到冲突,就可以将该冲突视为具有某种默认行为的异常,例如,发送陈述该冲突的消息到正在订合同的各方。重要的考虑可以是在这样一个系统中具有冲突的“成本”。例如,如果这样一个系统的主要目的是交换内容,偶然不能够解决消费者问题的成本是相当低的。如果,另一方面,不能够解决每个单个请求的“成本”(例如,或者直接的或者潜在的)很高,可以提供将识别和解决冲突配置在最前面的系统。
由不良输入引起的冲突一般不可能避免。然而,有利的是,可以使用示例性合同表达语言创建处理诸如此类问题的机制。示例性合同表达语言如何促进潜在冲突的检测和解决,例如,可以取决于对什么种类的冲突感兴趣。在没有规定禁止的能力例如“不得(must not)”和排他性(例如,“唯一”)的情况下,冲突可能在一个或多个合同之间存在。
另一方面,在同一条件下,有义务进行两件不同的事可能不导致冲突。然而,可能因不得在同一时间进行两件不同的事而导致潜在的冲突,例如,“出去进行购物”和在同时“呆在家里进行种花”。然而,这样的冲突几乎不是合同表达语言的问题,因为这类行动的语义自然地冲突。在这样的情况下,识别这样的冲突可以是合同管理系统的编程问题,例如,涉及可识别性和效率,例如在实时情况下。然而,例如,有利的是,可以使用示例性合同表达语言,允许设置解决冲突、解决相重性等等的优先权。
图5例示示例性优先选择策略模型500,它允许设置解决冲突和相重性的优先权并可以在图2的示例性合同数据模型200中使用。在图5中,有利的是,可以使用示例性合同表达语言来规定优先选择策略506。相应地,为了解决潜在的冲突和相重性,可以在条款212中建立优先选择关系。在一个示例性实施例中,可以定义这样的关系,例如,通过配置声明308来规定可能服从某条件C,一个条款A“先于”或例如优先于另一个条款,等等。有利的是,这样的优先选择策略可以模拟为一种断言,例如,如在图5中所示。
在示例性模型500中,策略506用附加的属性508例如“evaluationMechanism(评价机制)”来扩展承诺208,具有在承诺208的条款212上的受限制的语义。在策略506内,条款212相应于声明308,它可以规定,例如,如果发生E,则当符合条件C时条款A“先于”条款B。
在一个示例性实施例中,策略506的可选属性508“evaluationMechanism(评价机制)”,可以用于规定要如何考虑声明308。在一个示例性实施例中,,该可选属性可以取“随机”或默认值,“firstApplicable(第一个可应用的)”值,和“allApplicable(所有可应用的)”值。随机或默认值,例如,可以用于表示,可以以任何顺序考虑策略506中的声明308,例如,直到可以在声明308中找到一条可应用的声明。“firstApplicable(第一可应用的)”值,例如,可以用于规定,按照策略506中声明308的出现顺序,声明308中第一条可应用的声明可以是要考虑的声明。“allApplicable(所有可应用的)”值,例如,可以用于表达,应该以策略506中声明308的出现顺序,一个接一个地考虑声明308中的可应用的声明。
有利的是,使用示例性模型500,可以建立许多种类的优先选择策略。在一个示例性实施例中,一个清楚的偏序化(partial ordered)优先选择,例如,可以由下面给出:
如果一组Clause(条款){C1,...,Cn}是已知的,并为Cluase(条款)之间的优先选择关系给出偏序p,则可以以下面的方法形成Policy(策略):
对于任何一对Clause(条款)Ci和Cj,其中1≤i,j≤n,Policy(策略)包括(例如无条件的)声明,“Ci先于Cj”,
<policy>
...
<claim>
<clause licenseIdRef=″Ci″/>
<precede/>
<clause licenseIdRef=″Cj″/>
</claim>
...
</policy>
当且仅当
(Ci,Cj)∈p,(例如,按照顺序p,Ci先于Cj)。
在一个示例性实施例中,基于条款212的发出时间的优先选择,例如,可以由下面给出:
如果将在Clause(条款)的发出时间的线性顺序用作解决冲突的准则,则具有单个Claim(声明)的Polic)(策略)可以按下面来构造:
<policy>
  <claim>
    <for All varName=“A”/>
    <for All varName=“B”>
    <clause varRef=“A”/>
    <precede/>
    <clause varRef=“B”/>
    <csx:xmlBooleanExpression>
      op:dateTime-less-than(
      xs:dateTime(xf:document(../../clause[1])//issuer/details/timeOfIssue),
      xs:dateTime(xf:document(../../clause[2])//issuer/details/timeOfIssue)).
    </csx:xmlBooleanExpression>
  </claim>
</policy>
因此,较早发出的条款赢得优先选择。在一个示例性实施例中,当条款A和B在声明308中的出现被交换,则优先选择转到较后发出的条款。在一个示例性实施例中,元素“csx:xmlBooleanExpression”可以是一个元素,它包括布尔XPath表达,并且可以用作一个条件,它的真实值(truth-value)可以等于布尔XPath表达之一。
在一个示例性实施例中,基于条款212的发出者214的优先选择,例如,可以由下面给出:
如果使用在Clause(条款)的Issuer(发出者)上的偏序作为解决冲突的准则,则可以按下面构造具有单个Claim(声明)的策略:
  <policy>
    <claim>
      <forAll varName=“A”/>
      <forAll varName=“B”>
      <clause varRef=“A”/>
      <precede/>
      <clause varRef=“B”/>
      <allConditions>
        <csx:xmlBooleanExpression>
        xf:document(../../clause[1])//issuer=“Alice”</csx:xmlBooleanExpression>
      <csx:xmlBooleanExpression>
        xf:document(../../clause[2])//issuer=“Bob”</csx:xmlBooleanExpression>
    </allConditions>
  </claim>
</policy>
因此,由爱丽丝发出的承诺且因而在爱丽丝的承诺内的条款超过由鲍伯发出且因而在鲍伯的承诺内的条款而取得优先选择。
在一个示例性实施例中,基于承诺类型的优先选择,例如,可以由下面给出:
如果使用在Clause(条款)的类型(例如,“准予”,“责任”和“禁令”)上的偏序作为解决冲突的准则,则可以按下面构造具有单个Claim(声明)的策略:
<policy>
  <claim>
    <for All varName=“A”/>
    <for All varName=“B”>
    <clause varRef=“A”/>
    <precede/>
    <clause varRef=“B”/>
    <allConcditions>
      <csx:xmlBooleanExpression>
       xf:document(../../clause[1]).name=“Grant”</csx:xmlBooleanExpression>
      <csx:xmlBooleanExpression>
        xf:document(../../clause[2]).name=“Ban”</csx:xmlBooleanExpression>
    </allConditions>
  </claim>
</policy>
因此,表达为准予302的条款212可以优先于作为禁令306表达的条款212。
在一个示例性实施例中,不同优先选择的声明,例如,可以使用属性508“evaluationMechanism(评价机制)”结合在一起。例如,有利的是,通过将两个基于发出者214和条款212的类型宣告优选的声明308一起放在策略506中,可以建立组合的优先选择规则,第一个基于发出者214并随后基于条款212的类型,例如,如由下面给出的:
(“爱丽丝”,“准予”)<=(“爱丽丝”,“禁令”)<=(“鲍伯”,“准予”)<=(“鲍伯”,“禁令”)。
这个示例性策略/声明组合可以使用示例性合同表达语言表达,例如,如由下面给出的:
<policy evaluationMechanism=“allApplicable”>
  <claim>
    <for All varName=“A”/>
    <for All varName=“B”>
    <clause varRef=“A”/>
    <precede/>
    <clause varRef=“B”/>
    <allConditions>
      <csx:xmlBooleanExpression>
       xf:document(../../clause[1])//issuer=“Alice”</csx:xmlBooleanExpression>
      <csx:xmlBooleanExpression>
       xf:document(../../clause[2])//issuer=“Bob”</csx:xmlBooleanExpression>
    </allConditions>
  </claim>
  <claim>
    <for All varName=“A”/>
    <for All varName=“B”>
    <clause varRef=“A”/>
    <precede/>
    <clause varRef=“B”/>
    <allConditions>
      <csx:xmlBooleanExpression>
       xf:document(../../clause[1]).name=“Grant”</csx:xmlBooleanExpression>
      <csx:xmlBooleanExpression>
       xf:document(../../clause[2]).name=“Ban”</csx:xmlBooleanExpression>
    </allConditions>
  </claim>
</policv>
在一个示例性实施例中,“A或B,但更喜欢A”,例如,可以由下面给出:
“UMG可链接到CDNOW,UMG可链接到Amazon,以及如果允许的话UMG将链接到CDNOW。”
因此,所声明的是,用于链接到CDNOW的条款212先于用于链接到Amazon的条款212。这个示例性策略/声明组合可以使用示例性合同表达语言表达,例如,如由下面给出的:
<policy>
  <claim>
    <clause licenseIdRef=“licenseForLinkingToCDNOW”/>
    <precede/>
    <clause licenseIdRef=“licenseForLinkingToAmazon”/>
  </claim>
  </policy>
在一个示例性实施例中,一个取代法律的合同,例如,可以由下面给出:
“a)Amazon可销售‘The Monkees’插曲,
b)禁止在美国以外‘The Monkees:The Time Machine’插曲的所有销售,
c)Amazon选择在美国以外销售该插曲。”
因此,Amazon的策略是,用于销售“The Monkees”插曲的条款212优先于用于在美国以外“The Monkees:The Time Machine”插曲的禁止销售的条款212。这个示例性策略/声明组合可以使用示例性合同表达语言表达,例如,如由下面给出的:
<policy>
  <claim>
    <clause licenseIdRef=“licenseForSellingTheMonkeesEpsisodes”/>
    <precede/>
    <clausslicenseIdRef=“interdictForSellingTheMonkees-TheTimeMachineEpsisode”/>
  </claim>
  +<signer licensePartId=“Amazon”>
</policy>
在一个示例性实施例中,一种价格优先选择,例如,可以由下面给出:
“对于所有零售者和所有商品,如果从同一零售商有多于一个价格可用,则选择最低的价格。”
例如,Random House的策略是,如果(a)签署者是相同的,(b)提供的资源是相同的,且(c)价格,例如费(fee)/支付平(paymentFlat)/费用(rate),在条款A中少于在条款B中,则条款A优先于条款B。这个示例性策略/声明组合可以使用示例性合同表达语言表达,例如,如由下面给出的:
<policy>
  <claim>
    <forAll varName=“A”/>
    <forAll varName=“B”>
    <clause varRef=“A”/>
    <precede/>
  <clause varRef=“B”/>
  <csx:xmlBooleanExpression>
    op:equal(
      xf:document(../../clause[1])//r:issuer/ds:signature/ds:keyHolder,
      xf:document(../../clause[2])//r:issuer/ds:signature/ds:keyHolder)AND
    op:equal(
      xf:document(../../clause[1])//r:grant/r:resource,
      xf:document(../../clause[2])//r:grant/r:resource)AND
      op:less-than(
        op:number(xf:document(../../clause[1])//Grant/sx:fee/sx:paymentFlat/rate),
        op:number(xf:document(../../clause[2])//Grant/sx:fee/sx:paymentFlat/rate))
      </csx:xmlBooleanExpression>
  </claim>
  +<signer licensePartId=“RandomHouse”>
</policy>
有利的是,可以使用示例性合同表达语言来规定信任和约束关系。例如,如数字权限管理、内容引用、电子商务、其它分布式服务等等之类的应用,可以需要不知道彼此的实体之间的交互。在这样的先前不知道彼此的交互的当事人之外,要控制的资源可以从一个系统移到另一个系统,例如,当一个电影可以从一个发行者站点下载到用户PC并且对该PC的访问也需要控制。而且,某些当事人的行为可能由其它当事人定义的策略来调整,例如,当消费者的使用权限由内容所有者准予时。然而,在这样的情况下,用于建立和实施访问控制的传统假设可能不再有效。
有利的是,这样的策略可以表达为使用示例性合同表达语言规定的合同。本发明包括这样的认识,即当执行合同时,必须确定理解什么是信任的和合同所限制的是什么。例如,发出者I可以准予当事人P播放一个电影的权限,如基于示例性合同表达语言在合同中规定的。然而,P需要建立对I的某种级别的信任,例如,以保证I是给P授予这样的权限的合法授权者。
在另一个例子中,两个房主可以签署一份合同并要求房主们各自的家庭成员约束于这份合同。因此,需要规定约束关系以便判断谁受限于签署者以及例如相应的签名。
在示例性合同表达语言中,这样的信任和约束关系,例如,可以使用具有“信任(trust)”和“约束(bind)”的行动220的声明308来规定。有利的是,可以通过在声明308中规定可能服从事件(E)216和条件(C)224,当事人(P)218信任或约束于发出者(I)214或签署者(S)210,来规定这样的关系,例如,如由下面给出的:
Claim/[E,P,“信任”,I,C]
Claim/[E,P,“约束”,S,C]。
有利的是,也可以通过在声明308中规定可能服从事件(E)216和条件(C)224,当事人(P)218信任或约束于条款K,在条款212级别上定义这样的关系,例如,如由下面给出的:
Claim/[E,P,“信任”,K,C]
Claim/[E,P,“约束”,K,C]。
因此,这样的信任策略或约束策略,例如,可以作为断言建模。在一个示例性实施例中,作为行动220信任和约束的部分语义,任何人应该相信自己和他们所发出的一切,并且任何人应该约束于自己和他们所签署的一切。因此,可以无条件地作出下列声明,例如,如由下面给出的:
Claim/[_,P,“信任”,P,_]
Claim/[_,P,“约束”,P,_]。
例如,可以使用示例性合同表达语言来规定条款212之间的相关性。例如,条款212的有效性可取决于另一个条款212的有效性,诸如用于观看R级电影的准予302可以取决于用于当事人218至少18岁的断言的声明308。有利的是,条件224“有效”,例如,可以用于规定这样的相关性。在一个示例性实施例中,Clause(E,P,A,R,C)可以通过增加条件有效而变成取决于另一个条款的有效性,例如,如由下面给出的:
Clause(E,P,A,R,AllCondition/[Valid/[Clause’,Claim1,...,ClaimN],C]。
其中Claim1(声明1),...,ClaimN(声明N)是任何用于评价在当前上下文中Clause’(条款’)的Event(事件)和Condition(条件)的任何断言。
有利的是,可以使用示例性合同表达语言来规定履行和未履行相关,诸如补救。例如,为了规定补救和担保,使用规定在过去的需求中是否已经实现义务或禁止的条件。否则,某些其它义务、禁止和/或权限可能招致。有利的是,条件224“Exercised(行使的)”和“NotExercised(未行使的)”可以用于这样的目的。例如,Clause(E,P,A,R,C)可以通过增加条件NotExercised(未行使的)而变成取决于是否实现义务,例如,如由下面给出的:
Clause(E,P,A,R,AllCondition/[NotExercised/[Duty,StateReference,Count],C]).
同样,可以通过增加条件Exercised(行使的),Clause(E,P,A,R,C)变成取决于是否服从禁止,例如,如由下面给出的:Clause(E,P,A,R,AllCondition/[Exercised/[Ban,StateReference,Count],C]).
有利的是,可以使用示例性合同表达语言来规定委托。例如,委托在高度动态和大范围分布式系统中可以是重要的,因为委托提供用于以在定义合同或策略的时候不可预见或规定的方式将权限、义务、禁止等等传递给其它人的机制。有利的是,委托可以使用XrML中“DelegationControl(委托控制)”作为隐含的许可并还使用行动220“委托”,使得可以显式地规定委托作为许可、禁止等等,例如,如由下面给出的:
Grant/[E,P,“委托”,K,C],
Duty/[E,P,“委托”,K,C],
Ban/[E,P,“委托”,K,C].
其中K是任何Clause(条款),它可以接着是关于另一个委托的。
因此,当当事人P1将行动220委托给另一个当事人P2时,履行行动220的当事人P2可以变成复合当事人,例如,如由下面给出的:
OnBehalfPrincipal/[P2,P1].
有利的是,示例性合同表达语言可以支持许多示例性合同处理系统模型。例如,基于示例性数据模型200和示例性语义模型,可以使用示例性合同表达语言配置许多处理系统模型。在一个示例性实施例中,示例性系统模型,例如,基于用示例性合同表达语言规定的表达的逻辑语义,可以包括查询驱动模型,数据驱动模型,冲突或相重性驱动模型,反向推理模型,正向推理模型,冲突解决模型,等等。
在示例性查询驱动处理系统模型中,例如,对于一个或多个合同202,可以将以条款212形式的查询,和以声明308列表形式的上下文提交给系统用于处理。在合同202中的条款212,例如,与其签署者210一起,可以匹配该查询以产生查询应答。在一个示例性实施例中,可以基于在上下文中提供的信息和匹配用于形成查询应答的查询的条款212,简化事件216和条件224元素。
在示例性上下文驱动的处理系统模型中,例如,对于一个或多个合同202,可以将以声明308列表形式的上下文提交给系统用于处理。合同202中的条款212,例如,与其签署者210一起,并且可以将具有在上下文中满足的事件216和条件224元素作为应答交付。在一个示例性实施例中,可以形成应答的条款212可以是保持在上下文中的语句。
在示例性冲突或相重性驱动处理系统模型中,例如,对于一个或多个合同202,以一个或多个条款212形式设置冲突,例如,具有可以导致冲突的共同的当事人、行动、资源等等,并可以将以声明308列表形式的上下文提交给系统用于处理。可以以合同202中可以按照在合同202中定义的优先选择、冲突解决规则、冲突解决策略等等选择的条款212的最小子集的形式来提供冲突解决结果。在一个示例性实施例中,可以形成冲突解决结果的条款212可以是解决共同的当事人、行动、资源等等之间冲突的结果。
有利的是,示例性合同表达语言支持示例性上下文模型。在一个示例性实施例中,上下文可以包括一个或多个命题,例如,可以用于描述事务的状态,等等。在语义上,示例性上下文可以包括由一个或多个示例性合同表达语言声明308产生的一个或多个命题。有利的是,示例性上下文,例如,可以用于提供一组可以用于确认与事件216有关的条件、可以用于确认与条件224有关的条件、可以用于识别和匹配当事人218、行动220和资源222、可以用于形成发出者214和签署者210的信任关系等等的事实语句。
在一个示例性实施例中,示例性上下文,例如,可以包括宣告当事人(P)218拥有角色如管理员角色和拥有管理员角色,例如,由所有者发出的和由P签署的,信任发出者(I)214所发出的,并且如果P是相应语句的发出者214或签署者210之一,则约束于签署者(S)210所签署的,例如,如由下面给出的:
Claim([],P,拥有,管理员,[],Ilist,Slist)←成员(所有者,Ilist),成员(P,Slist)。
Claim(E,P,信任,I,C,Ilist,Slist)←Event(E),Cond(C),成员(P,Ilist)。
声明(E,P,约束,S,C,Ilist,Slist)←Event(E),Cond(C),成员(P,Slist)。
图6例示了基于示例性合同表达语言的示例性查询驱动处理系统600。在图6中,条款212形式的查询606可以由合同表达语言(CEL)处理器602相对于存储在合同数据库604中一个或多个的合同202和上下文608来处理,以便产生应答610给查询606。在一个示例性实施例中,基于合同202的语义模型和上下文608的语义模型,查询606可以包括条款212,例如,诸如Grant(E,P,A,R,C)等等。查询606可以按照由合同202和上下文608表达的命题来处理,例如,通过验证查询606是否为可以由合同202和上下文608给出的命题在逻辑上证明的,以便以匹配查询606的准予302、责任304、禁令306、条款308和/或意图310元素的形式产生应答610。
有利的是,通过使用示例性查询驱动的模型,复杂的处理系统和任务可以例如按照条款212的模态来配置。例如,当查询606的条款212包括意图310元素时,处理应答610可以包括一组匹配条款212的意图310元素的准予302、责任304、禁令306和声明308。在一个示例性实施例中,匹配意图310元素的准予302元素,例如,可以由下面给出:
Intent(E,P,A,R,C,)←Grant(E’,P’,A’,R’,C’,Ilist’,Slist’),
                               EventImplication(E,E’),
                               MatchP(P,P’),MatchA(A,A’),MatchR(R,R’),
                               CondImplication(C,C’),
                               Member(I,Ilist’),
                               ClauseOf(Grant(E’,P’,A’,R’,C’,Ilist’,Slist’),Pro),
                               Issuing(Pro,I),
                               Claim(E,P,trust,I,C,Ilist’,Slist’),
                               Write(Grant(E,P,A,R,C,Ilist’,Slist’)).
Intent(E,P,A,R,C)←Grant(E’,P’,A’,R’,C’,Ilist’,Slist’),
                             EventImplication(E,E’),
                             MatchP(P,P’),MatchA(A,A’),MatchR(R,R’),
                             CondImplication(C,C’),
                             Member(S,Slist’),
                             ClauseOf(Grant(E’,P’,A’,R’,C’,Ilist’,Slist’),Pro),
                             PromiseOf(Pro,CE),
                             Signing(CE,S),
                             Claim(E,P,bind,I,C,Ilist’,Slist’),
                             Write(Grant(E,P,A,R,C,Ilist’,Slist’)).
EventImplication(E,E’)←Event(E),Event(E’).
EventImplication(E,E’)←Event(E’).
EventImplication(E,E’).
CondImplication(C,C’)←Cond(C),Cond(C’).
CondImplication(C,C’)←Cond(C’).
CondImplication(C,C’).
上述示例性命题对,例如,可以用于输出匹配一个意图且由信任的发出者发出的准予,例如,关于包括该准予或者由受约束的签署者签署的承诺,例如,关于可以包括该承诺的合同,该承诺包括该准予。在一个示例性实施例中,当在示例性命题中的条款准予元素由责任、禁令和声明元素代替时,例如,以产生其它三个命题对,一个或多个准予、责任、禁令和声明可以作为对意图的应答而产生。在一个示例性实施例中,可以使用“EventImplication(事件蕴涵)”命题来规定一个事件(E)对于另一个事件的逻辑蕴涵(E’,例如,E→E’),并可以使用“CondImplication(条件蕴涵)”命题来规定一个条件(C)对于另一个条件(C’,例如,C→C’)的逻辑蕴涵。
在一个示例性实施例中,可以产生一个或多个准予、责任和禁令作为对用于产生责任的准予查询的应答,例如,如下面给出的:
    Grant(E,P,A,R,C)←Duty(E’,P’,A’,R’,C’,Ilist’,Slist’),
                          EventImplication(E,E’),
                      MatchP(P,P’),MatchA(A,A’),MatchR(R,R’),
                      CondImplication(C,C’),
                      Member(I,Ilist’),
                      ClauseOf(Duty(E’,P’,A’,R’,C’),Pro),
                      Issuing(Pro,I),
                      Claim(E,P,trust,I,C,Ilist’,Slist’),
                      Write(Duty(E,P,A,R,C,Ilist’,Slist’)).
Grant(E,P,A,R,C)←Duty(E’,P’,A’,R’,C’,Ilist’,Slist’),
                      EventImplication(E,E’),
                      MatchP(P,P’),MatchA(A,A’),MatchR(R,R’),
                      CondImplication(C,C’),
                      Member(S,Slist’),
                      ClauseOf(Duty(E’,P’,A’,R’,C’),Pro),
                      PromiseOf(Pro,E),
                      Signing(E,S),
                      Claim(E,P,bind,I,C,Ilist’,Slist’),
                      Write(Duty(E,P,A,R,C,Ilist’,Slist’)).
图7例示了基于示例性合同表达语言的示例性上下文驱动的处理系统700。在图7中,存储在合同数据库604中的一个或多个合同202可以由CEL处理器602相对于上下文608形式的触发706来处理,以便以给定上下文608中有效的合同202中所表达的条款的形式产生应答。在一个示例性实施例中,例如,基于示例性合同表达语言合同的示例性语义模型和上下文608的语义模型,示例性系统700可以审查由合同202表达的Clause(E,P,A,R,C,Ilist,Slist)形式的命题,可以评价事件(E)216和与其事件216和条件224有关的条件(C)224元素,并且可以输出具有满足其相应条件的这样的条款作为应答710。
有利的是,可以使用示例性上下文驱动的系统700建立系统应用以通知给定上下文内有效的许可、义务、禁止、意向等等,例如,以便履行和执行一组合同。在一个示例性实施例中,应答可以通过评价命题来产生,其中当每一个被评价为真时,输出有效的准予302、责任304、禁令306或意图310元素,例如,如由下面给出的:
ValidGrant()←Grant(E,P,A,R,C,Ilist,Slist),
              Event(E),Cond(C),
              Write(Grant(E,P,A,R,C,Ilist,Slist)).
ValidDuty()←Duty(E,P,A,R,C,Ilist,Slist),
             Event(E),Cond(C),
             Write(Duty(E,P,A,R,C,Ilist,Slist)).
ValidBan()←Ban((E,P,A,R,C,Ilist,Slist),
            Event(E),Cond(C),
            Write(Ban(E,P,A,R,C,Ilist,Slist)).
ValidIntent()←Intent(E,P,A,R,C,Ilist,Slist),
               Event(E),Cond(C),
               Write(Intent(E,P,A,R,C,Ilist,Slist)).
图8例示了基于示例性合同表达语言的示例性冲突或相重性驱动处理系统800。在查询驱动600和上下文驱动700处理系统模型中,合同202的处理可以导致一个或多个具有潜在冲突的条款212,例如,如应用于同一当事人、行动或资源等等的准予与禁令或者责任与禁令。合同202的处理也可以导致一个或多个具有潜在相重性的条款212,例如,多重准予,或者准予与责任,等等。
为了解决上述冲突和相重性,有利的是,可以用示例性合同表达语言来规定示例性优先选择策略。在一个示例性实施例中,优先选择策略可以相对简单,例如,诸如禁令覆盖(override)责任,后者覆盖准予,等等,或者相对复杂,使用条款的发出者的授权者,例如,诸如由较高的授权者发出的条款优先于其它,等等。另外,优先选择策略可以基于条款的特殊性,例如,诸如更专用的条款优先于更通用的条款,等等。而且,优先选择策略可以基于条款的发出时间,例如,诸如最近发出的条款优先于旧的条款,等等。
在图8中,在示例性冲突或相重性驱动处理系统800模型中,冲突或相重性输入806形式的、具有潜在冲突或相重性的两个或多个条款302-310,例如,可以由合同表达语言(CEL)判优器(arbitrator)802相对于包括一个或多个声明308的上下文608和一组存储在策略数据库804中的优先选择策略来处理。在一个示例性实施例中,优先选择关系,如由优先选择策略定义的,例如,可以由示例性系统800应用于输入条款302-310,以解决结果810的形式确定哪个或哪些输入条款302-310优先于其它。
上述问题,例如,可以类似于图论问题。例如,每个输入条款302-310可以是从一连接到另一个的一个顶点或两个顶点,如果一个条款优先于其它条款。问题可以是找出哪个或哪些顶点是图中的“源”顶点或节点,其中“源”节点是没有连接到它的输入连接的节点。直接的解决方案可以是测试,对于给定的顶点,是否存在具有连接到给定顶点的另一个顶点,且如果给定顶点没有到它的连接,则给定顶点可以是“源”。基于这样的解决方案,可以使用这个算法,例如,用于评价命题:
ConflictResolve(ClauseList,ClauseList,OutputList,SomePrincipal).
并如由下面给出的:
ConflictResolve([W|X],Y,Z,P)←Overridden(W,Y,I),ConflictResolve(X,Y,Z,P).
ConflictResolve([W|X],Y,[W|Z],P)←ConflictResolve(X,Y,Z,P).
Overridden(W,[X|Y],P)←Claim(E,W,procede,X,C,Ilist,Slist),
                         Event(E),Cond(C),
                         Member(I,Ilist),
                         ClauseOf(Claim(E,W,procede,X,C),Pro),
                         Issuing(Pro,I),
                         Claim(E,P,trust,I,C,Ilist’,Slist’).
Overridden(W,[X|Y])←Claim(E,W,procede,Y,C,Ilist,Slist),
                      Event(E),Cond(C),
                      Member(S,Slist),
                      ClauseOf(Claim(E,W procede,Y,C),Pro),
                      PromiseOf(Pro,CE),
                      Signing(CE,S),
                      Claim(E,P,bind,I,C,Ilist’,Slist’),
上述示例性算法,例如,可以基于图论解决方案的实现来解决在条款列表“ClauseList(条款列表)”中的潜在冲突和相重性,并在列表“OutputList(输出列表)”中输出解决结果810。在一个示例性实施例中,可以使用参数“SomePricipal(某当事人)”以保证在可以由当事人信任或可以由当事人受约束的优先选择策略中陈述的优先选择关系。
图9例示了基于示例性合同表达语言的示例性复合或混合处理系统900。在图9中,示例性处理系统900模型,有利的是,在CEL处理器602和CEL判优器802的帮助下,可以支持用于将存储在策略数据库804中的优先选择策略应用于对存储在合同数据库604中的查询处理结果910的工作流。
示例性CEL处理器602,例如,可以将查询906形式的条款212作为输入,以及使用一个或多个声明308作为上下文608的描述并可以用于定义对象、主题等的系统环境、使用状态、属性列表等等。CEL处理器602参考一组合同202,例如,作为合同数据库604形式的知识库,并产生一组可能的中间结果910给查询906作为应答。在一个示例性实施例中,中间结果910可以包括一个或多个准予、责任、禁令、声明或意图302-310。
在一个示例性实施例中,当示例性系统900基于查询906产生两个或多个910时,可以调用、开始示例性CEL判优器802等等。CEL判优器802可以应用优先选择策略组,例如,作为策略数据库804形式的知识库,以便确定结果910中的优先选择。
在一个示例性实施例中,可以将策略规定为一组输入声明308。例如,可以使用每个声明308来比较两个承诺208并可以用于规定一个承诺比另一个承诺更优先,例如,诸如以“可能在某条件下,承诺A先于承诺B”的形式。因此,CEL判优器802的输出912可以包括诸如优先选择解的结果。在一个示例性实施例中,如果只剩下一个承诺,则优选获得确定,例如,按照可用的策略。然而,如果有两个或多个承诺剩下,则例如可以不完全地确定优先选择,并在必要时可以使用外部机制、错误消息等等。
在另一个示例性实施例中,处理系统模型可以配置为,例如,基于查询驱动600、上下文驱动700和冲突或相重性驱动800这些系统模型中的一个或多个。另外,有利的是,可以这样配置冲突或相重性驱动处理系统800模型的顺序,每个具有不同的优先选择策略组,用于按照例如来自不同授权者、管理域等的优先选择策略来解决冲突。
图10例示了基于示例性合同表达语言的示例性联动系统(linked sytem)1000。在图10中,示例性查询驱动600、上下文驱动700和冲突和相重性驱动800这些系统模型可以与其它系统组件1002集成,后者可以履行如在条款212中规定的行动220。有利的是,示例性系统1000,例如,可以用于产生事件216,可以用于修改系统上下文等等。
图11是例示图6的系统600的示例性查询驱动处理的流程图。在图11中,在步骤1102,例如,可以获得条款212用于处理,并在步骤1104可以将条款212作为查询606提交。在步骤1106,可以基于由一个或多个声明308定义的上下文608,将查询606与来自数据库604的合同202中的条款匹配。如果存在匹配,如由步骤1108判断的,则可以作为应答610输出合同202中匹配查询606的条款,例如,包括一个或多个元素302-310。否则,在步骤1112,可以返回合适的消息。可以通过重复步骤1102-1112,提交其它的条款212作为用于查询驱动处理的查询。
图12是例示图7的系统700的示例性上下文驱动处理的流程图。图12中,在步骤1202,例如,可以获得上下文608形式的触发706用于处理,并在步骤1204可以提交由一个或多个声明308定义的上下文608用于处理。在步骤1206,可以将上下文608与来自数据库604的合同202中的条款匹配。如果存在匹配,如由步骤1208判断的,则可以输出与应答710一样有效的、合同202中匹配608的条款,例如,包括一个或多个视为有效的元素302-310。否则,在步骤1212,可以返回合适的消息。通过重复1202-1212,可以提交其它的上下文608用于上下文驱动处理。
图13是例示图8的系统800的示例性冲突或相重性驱动处理的流程图。在图13中,在步骤1302,例如,可以获得识别为具有冲突或相重性的两个或多个条款302-310用于处理,并在步骤1304可以作为冲突或相重性输入806提交条款302-310。在步骤1306,可以基于由一个或多个声明308定义的上下文608和在一个或多个来自数据库604的合同202中规定的优先选择策略,解决冲突或相重性。如果可以解决冲突或相重性,如由步骤1308判断的,可以作为解决结果810输出决定的条款,例如,包括一个或多个正在解决的元素302-310。否则,在步骤1312,可以返回合适的消息。通过重复步骤1302-1312,可以提交识别为具有冲突或相重性的其它条款302-310用于冲突或相重性驱动处理。
图14是例示图9和10的系统的示例性复合或混合和联动的处理。在图14中,步骤1402-1406相应于图11的示例性查询驱动处理的步骤1102-1112,步骤1416-1420相应于图12的示例性上下文驱动处理的步骤1202-1212,而步骤1408-1412相应于图13的示例性冲突或相重性驱动处理的步骤1302-1312。在步骤1414,例如,可以基于作为在步骤1412的解决结果的决定的条款输出,履行由行动220元素规定的一个或多个行动。可以通过步骤1402-1420来履行其它处理。
有利的是,示例性合同表达语言定义处理基于其的合同表达所使用的语法,其中本发明包括这样的认识,即定义一种语法可以是一项设计的最具挑战性的方面。因而,示例性合同表达语言定义EPARC的各个元素之间的标准化数学关系,有利的是,使人和机器能够一致地解释和实施示例性合同表达语言。所定义的语法还允许示例性合同表达语言扩展。因此,几乎无限数量的新合同结构和词汇表可以用由示例性合同表达语言定义的语法来表达。
参考图1-14描述的示例性系统的设备和子系统可以例如,通过通信网络170通信,并可以包括任何合适的、能够执行所揭示的示例性实施例的过程的服务器、工作站、个人计算机(PC)、膝上型计算机、PDA、因特网装置、机顶盒、调制解调器、手持设备、电话、蜂窝式电话、无线设备等等。这些设备和子系统,例如,可以使用任何合适的协议相互通讯,并可以使用通用计算机系统来实现,等等。可以使用一个或多个接口机制,例如,因特网访问、以任何合适形式的电信,诸如语音、调制解调器等,无线通信介质,等等。因此,通信170可以包括,例如,无线通信网络、蜂窝式通信网络、卫星通信网络、公共交换电话网络(PSTN)、分组数据网络(PDN)、因特网、企业内部互联网、混合通信网络,它们的组合,等等。
如上面提到的,要理解,示例性系统,例如,如参考图1-14描述的,是为了示例性目的,而用于实现所揭示的示例性实施例的专用硬件的许多变体是可能的。例如,可以通过一个或多个经编程的计算机系统或设备,实现示例性系统的设备和子系统的功能。要实现这样的变体以及其它变体,可以编程单个计算机系统来执行示例性系统的一个或多个设备和子系统的功能。另一方面,可以用两个或多个经编程的计算机系统或设备代替示例性系统的任何一个设备或子系统。因此,分布式处理的原则和优点,诸如冗余、复制等等,如果需要,也可以实现,例如,以增加参考图1-14描述的示例性系统的稳健性和性能。
可以使用参考图1-14描述的示例性系统储存与在此描述的各种过程有关的信息。可以在示例性系统的设备和子系统的一个或多个存储器诸如硬盘、光盘、磁光盘、RAM等中存储该信息。一个或多个设备和子系统的数据库可以存储用于实现示例性实施例的信息。可以使用包括在一个或多个存储器诸如上面列出的存储器中的数据结构诸如记录、表、阵列、字段、图、树、列表等来组织数据库。
可以使用一个或多个按照所揭示的示例性实施例的教导编程的通用计算机系统、微处理器、数字信号处理器、微控制器等等方便地实现参考图1-14描述的示例性系统的所有部分或一部分。可以由具有普通的专业技术的程序员基于所揭示的示例性实施例容易地准备合适的软件。另外,可以通过准备专用集成电路或通过互连组件电路的合适网络来实现示例性系统。
有利的是,可以在离线系统、在线系统等中,并在诸如TV应用、计算机应用、DVD应用、VCR应用、装置应用、CD播放器应用等等之类的应用中,使用在此描述的示例性实施例。另外,用于传送示例性实施例的合同表达语言表达、权限表达等的信号,可以配置为在人类可见频谱内、在人类可听频谱内、不在人类可见频谱内、不在人类可听频谱内、它们的组合等等传送。
尽管按照合同、法律界等内的应用描述了示例性实施例,但示例性实施例可应用于任何合适的应用,诸如数字或非数字内容、设备、软件、服务、货品、资源等,并可以用在技术、界面、语言、语法、内容、权限、提供(offering)、服务、速度、大小、限制、设备等等中的变体来实施。
尽管已经结合许多示例性实施例和实现描述了本发明,但本发明不受限于它们,而是覆盖落在所附权利要求书的范围内的各种修改和等价布置。
附录
本发明可以使用在此引证的文章、书籍、规范等等中描述的技术、系统、方法、算法、概念等,所有这些的全部内容这里通过引用都包括在此。
[1]可在环球网上的xrml.org处得到的,ContentGuard,Inc.的可扩展权限标记语言(XrML)版本2.0,。
[4]可在环球网上的ietf.org/rfc/rfc2119.txt处得到的,Bradner的“Key wordsfor use in RFCs to Indicate Requirement Level(在RFC中用于表示要求级别的关键词)”,IETF RFC 2119。
[11]可在环球网上的w3.org/2001/XMLSchema得到的W3C XML大纲(Schema)。
[12]可在环球网上的w3.org/2000/09/xmldsig#得到的W3C XML签字(Signature)。
[13]可在环球网上的w3.org/2001/04/xmlenc#得到的W3C XML加密(Encrytion)。
[14]Calamari等人的Contracts(合同),第3版,Black Letter Series(黑体字系列),West Group,St.Paul,MN,1999年。
[16]Calamari等人的The Law of Contracts(合同法),West Wadsworth,第4版,1998年七月。
[17]Atiyah的An Introduction to the Law of Contract(合同法介绍),ClarendonLaw Series(牛津大学法律系列),第4版,Clarendon Press,Oxford,1989年。
[19]Dijkstra的A Discipline of Programming(编程规范),Prentice-Hall,1976年。
[20]Ulman的Principles of Database and Knowledge-Base Systems(数据库和知识库系统原理),第I卷,1988年,和第II卷,1989年,Computer Science Press。
[21]Hanson等人的“An overview of production rules in database systems(数据库系统中产生式规则的概述)”,Knowledge Engineering Review(知识工程评论),第8卷,第2号,第121-143页,1993年。
[22]Russell等人的Artificial Intelligence:A Modern Approach(人工智能:现代方法),Prentice Hall Series in Artificial Intelligence(Prentice Hall关于人工智能的系列),1995年。
[23]Hohfeld的“Some fundamental legal conceptions as applied in judicialreasoning(司法推理中应用的一些基本法律概念)”,Yale Law Journal(耶鲁法律杂志),第23卷,1913年,在W.W.Cook(版本)中重印,Fundamental Legal Conceptionsas Applied in Judicial Reasoning(司法推理中应用的基本法律概念),和OtherLegal Essays(其它法律文章),Yale University Press,1966年。
[24]Hilpinen(版本)的Denotic Logic:Introductory and SystematicReadings(道义逻辑:介绍性和有系统的读物),Dordrecht,1971年。
[25]Jones等人的“On the characterization of a trusting agent-aspects ofa formal approach(关于信任代理的特征-形式方法的诸方面)”,Workshop onDeception,Trust and Fraud in Agent Societies(关于代理社会中的欺骗、信任和诡计的工作室),2000年。
[26]Elgesem的“The modal logic of agency(代理的模态逻辑)”,Journal ofPhilosophical Logic(哲学逻辑的杂志),1997年,第2卷,第2号,第1-46页。
[27]Widom等人的Active Database Systems(活动的数据库系统),Morgan-Kaufmann,1995年。
[28]Brownston等人的Programming Expert Systems in OPS5:An Introduction toRule-Based Programming(在OPS5中编程专家系统:基于规则的编程的介绍),Addison-Wesley,1985年。
[29]可在环球网上的www-dse.doc.ic.ac.uk/Research/policies得到的,Damianou等人的“A Survey of Policy Specification Approaches(策略规范方法的概观)”,2002年。
[30]Ullman的Principles of Database and Knowledge-base Systems(数据库和知识库系统的原理),第II卷,Rockville,MD,Computer Science Press,1989年。
[31]Sterling等人的The Art of Prolog:Advanced ProgrammingTechniques(Prolog的艺术:高级编程技术),第2版,1994年。
[32]Lampson等人的“Authentication in Distributed Systems:Theory andPractice(在分布式系统中的认证:理论与实践)”,ACT Trans.(ACT会议集),ComputerSystems(计算机系统)10,4(1992年11月),第265-310页。
[33]Manna等人的The Temporal Logic of Reactive and Concurrent Systems:Specification,Springer-Verlag(反应和并发系统的时序逻辑:规范,springer-Verlag),纽约,1991年。

Claims (42)

1.规定一种合法表达的方法,供在处理所述合法表达的系统中使用,其特征在于,所述方法包括:
提供一种合法表达语言,包括下列各个元素中的至少一个:
责任元素,规定当事人必须履行行动的义务,
禁令元素,规定当事人不得执行行动的禁止,
意图元素,规定当事人想要履行行动的意向,以及
声明元素,规定当事人一定履行行动的断言;以及
由所述系统解释使用所述合法表达语言规定的合法表达。
2.如权利要求1所述的方法,其特征在于,包括:
由所述系统实施所述合法表达,包括下列内容中的至少一项:
基于所述责任元素,通过验证所述当事人已经履行了所述行动,实施所述义务,以及
基于所述禁令元素,通过验证所述当事人还没有履行所述行动,实施所述禁止。
3.如权利要求1所述的方法,其特征在于,包括:
以所述合法表达语言提供准予元素,规定当事人可履行行动的许可;以及
由所述系统实施所述合法表达,包括下列内容中至少一项:
基于所述准予元素,通过验证所述当事人可履行所述行动,实施所述许可,
基于所述意图元素,通过验证所述当事人想要履行所述行动,实施所述意向,以及
基于所述声明元素,通过验证所述当事人一定履行所述行动,实施所述断言。
4.如权利要求3所述的方法,其特征在于,包括:
以所述合法表达语言提供,
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应当事人元素,规定各相应的当事人,
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应资源元素,规定与各相应行动相关联的资源,以及
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应条件元素,规定与各相应行动相关联的条件。
5.如权利要求3所述的方法,其特征在于,包括:
以所述合法表达语言提供与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应事件元素,规定触发所述义务、所述禁止、所述许可、所述意向和所述断言的各相应事件。
6.如权利要求3所述的方法,其特征在于,以所述合法表达语言提供与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应行动元素,规定各相应行动。
7.如权利要求3所述的方法,其特征在于,包括:
将所述准予元素、所述责任元素、所述禁令元素、所述声明元素和所述意图元素与所述合法表达语言的一个条款元素相关联。
8.如权利要求7所述的方法,其特征在于,包括:
将所述条款元素与所述合法表达语言的承诺元素相关联,所述承诺元素以所述合法表达语言规定承诺;以及
将所述条款元素与所述合法表达语言的发出者元素相关联,所述发出者元素规定所述条款的发出者。
9.如权利要求1所述的方法,其特征在于,包括:
使用所述合法表达规定合同的签署者,所述合法表达具有与其相关联的签署者元素。
10.如权利要求1所述的方法,其特征在于,包括:
使用所述合法表达规定与合同相关联的许可证,所述合法表达具有与其相关联的许可证元素。
11.如权利要求1所述的方法,其特征在于,包括:
使用所述合法表达规定与合同相关联的元数据,所述合法表达具有与其相关联的元数据元素。
12.如权利要求1所述的方法,其特征在于,包括:
所述合法表达语言以基于语法的语言为基础。
13.如权利要求7所述的方法,其特征在于,包括:
用一个或多个所述声明元素规定优先选择策略,规定处理和接受相应的一个或多个所述条款元素的行为之一的优先选择。
14.如权利要求13所述的方法,其特征在于,所述优先选择策略包括基于所述一个或多个所述条款元素的出现顺序的所述优先选择。
15.如权利要求13所述的方法,其特征在于,所述优先选择策略包括基于所述一个或多个所述条款元素的发出时间的所述优先选择。
16.如权利要求13所述的方法,其特征在于,所述优先选择策略包括基于所述一个或多个所述条款元素的发出者的所述优先选择。
17.如权利要求13所述的方法,其特征在于,所述优先选择策略包括基于所述一个或多个条款元素的类型的所述优先选择。
18.如权利要求13所述的方法,其特征在于,所述优先选择策略包括所述优先选择,它基于所述一个或多个所述条款元素出现顺序、所述一个或多个所述条款元素的发出时间、所述一个或多个所述条款元素的发出者和所述一个或多个所述条款元素的类型这些内容中至少两项的组合。
19.如权利要求7所述的方法,其特征在于,包括:
建立一种信任关系,包括,
基于包括信任元素的所述行动元素,在所述声明元素中规定当事人信任包括条款的发出者的资源。
20.如权利要求7所述的方法,其特征在于,包括:
建立一种约束关系,包括,
基于包括约束元素的所述行动元素,在所述声明元素中规定当事人约束于包括合同的签署者的资源。
21.如权利要求7所述的方法,其特征在于,包括:
建立一种信任关系,包括,
基于包括信任元素的所述行动元素,在所述声明元素中规定当事人信任包括条款的资源。
22.如权利要求7所述的方法,其特征在于,包括:
建立一种约束关系,包括,
基于包括约束元素的所述行动元素,在声明元素中,规定当事人约束于包括条款的资源。
23.如权利要求7所述的方法,其特征在于,包括:
提供查询驱动处理,包括,
提交条款作为查询,并提交包括一个或多个所述声明元素的上下文,
将所述条款与合同中的一个或多个条款匹配,所述合同在所述上下文中是有效的,以及
将所述合同中匹配所述查询并且在所述上下文中有效的条款输出为查询应答。
24.如权利要求7所述的方法,其特征在于,包括:
提供上下文驱动处理,包括,
响应于触发提交上下文,所述上下文包括一个或多个声明元素,
匹配合同中在所述上下文中是有效的一个或多个条款,以及
输出所述合同中的、在所述上下文中有效的条款。
25.如权利要求13所述的方法,其特征在于,包括:
提供冲突或相重性驱动处理,包括,
提交两个或多个具有冲突或相重性的条款,
基于上下文和所述优先选择策略解决所述冲突或相重性,所述上下文包括一个或多个声明元素,以及
输出决定的条款作为解决结果。
26.如权利要求7所述的方法,其特征在于,包括:
提供查询驱动处理,包括,
提交条款作为查询,并且提交包括一个或多个所述声明元素的上下文,
将所述条款与合同中在所述上下文中是有效的一个或多个条款匹配,以及
输出所述合同中匹配所述查询并且在所述上下文中有效的条款作为查询应答;
提供上下文驱动处理,包括,
响应于触发提交上下文,所述上下文包括一个或多个声明元素,
匹配合同中在所述上下文中是有效的一个或多个条款,以及
输出所述合同中的、在所述上下文中有效的条款;
提供冲突或相重性驱动处理,包括,
提交两个或多个具有冲突或相重性的条款,所述两个或多个条款来自所述查询应答和所述有效的条款中的至少一个,
基于上下文和所述优先选择策略解决所述冲突或相重性,所述上下文包括一个或多个声明元素,以及
输出决定的条款作为解决结果;以及
基于所述解决结果,履行在所述行动元素中规定的行动。
27.一种处理合法表达的系统,其特征在于,包括:
用于提供一种合法表达语言的装置,包括下列元素中的至少一个:
责任元素,规定当事人必须履行行动的义务,
禁令元素,规定当事人不得执行行动的禁止,
意图元素,规定当事人想要履行行动的意向,以及
声明元素,规定当事人一定履行行动的断言,以及
解释使用所述合法表达语言规定的合法表达的装置。
28.如权利要求27所述的系统,其特征在于,所述用于提供的装置和所述用于解释的装置包括计算机系统的设备。
29.如权利要求27所述的系统,其特征在于,所述用于提供的装置和所述用于解释的装置包括记录在介质上的计算机可读指令。
30.一种适于在一个系统中使用的合法表达,所述系统用于处理所述合法表达,所述合法表达包括下列元素中的至少一个:
责任元素,规定当事人必须履行行动的义务,
禁令元素,规定当事人不得执行行动的禁止,
意图元素,规定当事人想要履行行动的意向,以及
声明元素,规定当事人一定履行行动的断言,以及
其中,计算机系统可以解释所述合法表达。
31.如权利要求30所述的合法表达,其特征在于,计算机系统可以以下述方式实施下列内容中至少一项:通过验证所述当事人已经履行了所述行动,基于所述责任元素实施所述义务,以及通过验证所述当事人还没有履行所述行动,基于所述禁令元素实施所述禁止。
32.如权利要求30所述的合法表达,其特征在于,包括:
准予元素,规定当事人可履行行动的许可,
通过它,计算机系统可以以下述方式实施下列各项内容的至少一项,基于所述准予元素通过验证所述当事人可以履行所述行动,实施所述许可,基于所述意图元素通过验证所述当事人想要履行所述行动,实施所述意向,以及基于所述声明元素通过验证所述当事人一定履行所述行动,实施所述断言。
33.如权利要求32所述的合法表达,其特征在于,包括:
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应当事人元素,规定相应的当事人;
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应资源元素,规定与各相应行动相关联的资源;以及
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应条件元素,规定与各相应行动相关联的条件。
34.如权利要求32所述的合法表达,其特征在于,包括:
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应事件元素,规定触发所述义务、所述禁止、所述许可、所述意向和所述断言的各相应事件。
35.如权利要求32所述的合法表达,其特征在于,包括:
与所述责任元素、所述禁令元素、所述准予元素、所述意图元素和所述声明元素相关联的各相应行动元素,规定各相应行动。
36.如权利要求32所述的合法表达,其特征在于,包括:
与所述准予元素、所述责任元素、所述禁令元素、所述声明元素和所述意图元素相关联的条款元素。
37.如权利要求36所述的合法表达,其特征在于,包括:
与所述条款元素相关联的承诺元素,规定在所述合法表达中的承诺;以及
将所述条款元素与所述合法表达语言的发出者元素相关联,所述发出者元素规定所述条款的发出者。
38.如权利要求30所述的合法表达,其特征在于,包括:
签署者元素,规定使用所述合法表达规定的合同的签署者。
39.如权利要求30所述的合法表达,其特征在于,包括:
许可证元素,规定与使用所述合法表达规定的合同相关联的许可证。
40.如权利要求30所述的合法表达,其特征在于,包括:
元数据元素,规定与使用所述合法表达规定的合同相关联的元数据。
41.如权利要求30所述的合法表达,其特征在于,所述合法表达以合法表达语言为基础。
42.如权利要求41所述的合法表达,其特征在于,所述合法表达语言包括基于语法的语言。
CN038130157A 2002-04-29 2003-04-29 用于规定和处理合法表达的系统和方法 Pending CN1659559A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US37580802P 2002-04-29 2002-04-29
US60/375,808 2002-04-29
US41178902P 2002-09-19 2002-09-19
US60/411,789 2002-09-19

Publications (1)

Publication Number Publication Date
CN1659559A true CN1659559A (zh) 2005-08-24

Family

ID=29406735

Family Applications (2)

Application Number Title Priority Date Filing Date
CN03815403XA Pending CN1666207A (zh) 2002-04-29 2003-04-29 采用法律表述语言的权利管理系统
CN038130157A Pending CN1659559A (zh) 2002-04-29 2003-04-29 用于规定和处理合法表达的系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN03815403XA Pending CN1666207A (zh) 2002-04-29 2003-04-29 采用法律表述语言的权利管理系统

Country Status (9)

Country Link
US (4) US20040024670A1 (zh)
EP (2) EP1502221A4 (zh)
JP (2) JP2006501536A (zh)
KR (2) KR100671073B1 (zh)
CN (2) CN1666207A (zh)
AU (2) AU2003243179B2 (zh)
CA (1) CA2484493A1 (zh)
MX (2) MXPA04010541A (zh)
WO (2) WO2003094077A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112883687A (zh) * 2021-02-05 2021-06-01 北京科技大学 一种基于合同文本标记语言的法律合同交互式标注方法

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711554B1 (en) 1999-12-30 2004-03-23 Lee Salzmann Method and system for managing and preparing documentation for real estate transactions
US9032097B2 (en) * 2001-04-26 2015-05-12 Nokia Corporation Data communication with remote network node
US8180904B1 (en) 2001-04-26 2012-05-15 Nokia Corporation Data routing and management with routing path selectivity
US8990334B2 (en) * 2001-04-26 2015-03-24 Nokia Corporation Rule-based caching for packet-based data transfer
US9143545B1 (en) * 2001-04-26 2015-09-22 Nokia Corporation Device classification for media delivery
US20060167985A1 (en) * 2001-04-26 2006-07-27 Albanese Michael J Network-distributed data routing
US20060195402A1 (en) * 2002-02-27 2006-08-31 Imagineer Software, Inc. Secure data transmission using undiscoverable or black data
US6996544B2 (en) * 2002-02-27 2006-02-07 Imagineer Software, Inc. Multiple party content distribution system and method with rights management features
US7725404B2 (en) * 2002-02-27 2010-05-25 Imagineer Software, Inc. Secure electronic commerce using mutating identifiers
US7376624B2 (en) * 2002-02-27 2008-05-20 Imagineer Software, Inc. Secure communication and real-time watermarking using mutating identifiers
US7676420B1 (en) * 2002-06-19 2010-03-09 Accenture Global Services Gmbh Electronic settlement of petroleum and gas distributions
US9553879B2 (en) * 2003-06-06 2017-01-24 Core Wireless Licensing S.A.R.L. Method and apparatus to represent and use rights for content/media adaptation/transformation
US7299171B2 (en) * 2004-08-17 2007-11-20 Contentguard Holdings, Inc. Method and system for processing grammar-based legality expressions
CN102831676B (zh) * 2004-11-02 2015-07-08 大日本印刷株式会社 管理系统
US9400875B1 (en) 2005-02-11 2016-07-26 Nokia Corporation Content routing with rights management
US20060225055A1 (en) * 2005-03-03 2006-10-05 Contentguard Holdings, Inc. Method, system, and device for indexing and processing of expressions
US8126969B1 (en) * 2005-03-08 2012-02-28 At&T Intellectual Property Ii, L.P. Policy based dissemination control of electronic messages
US20110153509A1 (en) 2005-05-27 2011-06-23 Ip Development Venture Method and apparatus for cross-referencing important ip relationships
US7730523B1 (en) * 2005-06-17 2010-06-01 Oracle America, Inc. Role-based access using combinatorial inheritance and randomized conjugates in an internet hosted environment
EP1929685A4 (en) * 2005-09-29 2011-12-21 Contentguard Holdings Inc DIGITAL RIGHTS MANAGEMENT SYSTEM AND METHOD USING ADVANCED COPY HAVING TRANSMIT RIGHTS AND MANAGED COPY CUTTERS
US20080120239A1 (en) * 2006-11-21 2008-05-22 General Instrument Corporation Method and System for Adapting Pre-Defined Rights of a Digital Content
JP5061242B2 (ja) 2007-09-12 2012-10-31 ソニー株式会社 オープンマーケットコンテンツ配信
US8200736B2 (en) 2007-12-24 2012-06-12 Qualcomm Incorporated Virtual SIM card for mobile handsets
US20090191846A1 (en) * 2008-01-25 2009-07-30 Guangming Shi Biometric smart card for mobile devices
US20090222926A1 (en) * 2008-02-28 2009-09-03 Honeywell International Inc. Software license management system that functions in a disconnected or intermittently connected mode
US20090222505A1 (en) * 2008-02-28 2009-09-03 Honeywell International Inc. Peer to peer software license management system for temporarily relocating available software licenses
DE102009017730A1 (de) * 2008-04-30 2009-11-05 Continental Teves Ag & Co. Ohg Fahrzeugschlüssel zum Speichern einer Fahrzeugkennung
US8655826B1 (en) 2008-08-01 2014-02-18 Motion Picture Laboratories, Inc. Processing and acting on rules for content recognition systems
US20100131513A1 (en) 2008-10-23 2010-05-27 Lundberg Steven W Patent mapping
US20100161488A1 (en) 2008-12-22 2010-06-24 Paul Michael Evans Methods and systems for biometric verification
US20100212016A1 (en) * 2009-02-18 2010-08-19 Microsoft Corporation Content protection interoperrability
US8634828B2 (en) * 2009-06-08 2014-01-21 Qualcomm Incorporated Method and apparatus for switching virtual SIM service contracts based upon a user profile
US8639245B2 (en) * 2009-06-08 2014-01-28 Qualcomm Incorporated Method and apparatus for updating rules governing the switching of virtual SIM service contracts
US20100311402A1 (en) * 2009-06-08 2010-12-09 Prasanna Srinivasan Method and apparatus for performing soft switch of virtual sim service contracts
US8649789B2 (en) * 2009-06-08 2014-02-11 Qualcomm Incorporated Method and apparatus for switching virtual SIM service contracts when roaming
US8811969B2 (en) * 2009-06-08 2014-08-19 Qualcomm Incorporated Virtual SIM card for mobile handsets
US8352560B2 (en) * 2009-06-30 2013-01-08 International Business Machines Corporation Controlling location and time preferences for messages
US8676180B2 (en) * 2009-07-29 2014-03-18 Qualcomm Incorporated Virtual SIM monitoring mode for mobile handsets
US8443202B2 (en) * 2009-08-05 2013-05-14 Daon Holdings Limited Methods and systems for authenticating users
US20100185868A1 (en) * 2010-03-21 2010-07-22 William Grecia Personilized digital media access system
US8402555B2 (en) 2010-03-21 2013-03-19 William Grecia Personalized digital media access system (PDMAS)
US8825846B2 (en) * 2010-12-10 2014-09-02 Max Goncharov Proactive intellectual property enforcement system
US8863256B1 (en) 2011-01-14 2014-10-14 Cisco Technology, Inc. System and method for enabling secure transactions using flexible identity management in a vehicular environment
US9904726B2 (en) 2011-05-04 2018-02-27 Black Hills IP Holdings, LLC. Apparatus and method for automated and assisted patent claim mapping and expense planning
US20120304075A1 (en) * 2011-05-23 2012-11-29 Dworkin Ross E System and method for management of motions
US20130085946A1 (en) 2011-10-03 2013-04-04 Steven W. Lundberg Systems, methods and user interfaces in a patent management system
US20130275275A1 (en) * 2012-04-13 2013-10-17 Thought Equity Motion, Inc. Digital content marketplace
US9299049B2 (en) * 2013-03-15 2016-03-29 Sap Se Contract-based process integration
US9350735B1 (en) * 2013-12-31 2016-05-24 Emc Corporation Context-based dynamic information rights management
US20150262145A1 (en) * 2014-03-11 2015-09-17 Mark A. Aspenson Distribution and sales system for products and services
US10713895B2 (en) * 2015-09-28 2020-07-14 Interblock D.D. Demonstration mode in skill-based gaming technology
US10296907B1 (en) 2016-02-01 2019-05-21 United Services Automobile Association (Usaa) Systems and methods for electronic presentation of financial instrument offers
US10139951B2 (en) 2016-11-09 2018-11-27 Dell Products L.P. Information handling system variable capacitance totem input management
US10496216B2 (en) 2016-11-09 2019-12-03 Dell Products L.P. Information handling system capacitive touch totem with optical communication support
US10139930B2 (en) 2016-11-09 2018-11-27 Dell Products L.P. Information handling system capacitive touch totem management
US10146366B2 (en) 2016-11-09 2018-12-04 Dell Products L.P. Information handling system capacitive touch totem with optical communication support
US10139973B2 (en) 2016-11-09 2018-11-27 Dell Products L.P. Information handling system totem tracking management
US10332325B2 (en) 2017-09-05 2019-06-25 Suprema Inc. Access control system and access control method using the same
US10459528B2 (en) 2018-02-28 2019-10-29 Dell Products L.P. Information handling system enhanced gesture management, control and detection
US10795502B2 (en) 2018-06-28 2020-10-06 Dell Products L.P. Information handling system touch device with adaptive haptic response
US10852853B2 (en) 2018-06-28 2020-12-01 Dell Products L.P. Information handling system touch device with visually interactive region
US10635199B2 (en) 2018-06-28 2020-04-28 Dell Products L.P. Information handling system dynamic friction touch device for touchscreen interactions
US10817077B2 (en) 2018-06-28 2020-10-27 Dell Products, L.P. Information handling system touch device context aware input tracking
US10761618B2 (en) 2018-06-28 2020-09-01 Dell Products L.P. Information handling system touch device with automatically orienting visual display
US10664101B2 (en) 2018-06-28 2020-05-26 Dell Products L.P. Information handling system touch device false touch detection and mitigation
US20210319180A1 (en) * 2020-01-24 2021-10-14 Thomson Reuters Enterprise Centre Gmbh Systems and methods for deviation detection, information extraction and obligation deviation detection
US20210398232A1 (en) * 2020-06-17 2021-12-23 Jpmorgan Chase Bank, N.A. System and method for implementing a market data contract analytics tool
CN111835584A (zh) * 2020-06-19 2020-10-27 深圳奇迹智慧网络有限公司 物联网产品的巡检方法、装置、计算机设备和存储介质
US11734356B2 (en) * 2020-09-11 2023-08-22 Jpmorgan Chase Bank, N.A. System and method for implementing an open policy agent bridge

Family Cites Families (204)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2258112A5 (zh) 1973-11-30 1975-08-08 Honeywell Bull Soc Ind
CH624877A5 (zh) 1977-05-13 1981-08-31 Idc Chemie Ag
US4278837A (en) 1977-10-31 1981-07-14 Best Robert M Crypto microprocessor for executing enciphered programs
US4159468A (en) 1977-11-17 1979-06-26 Burroughs Corporation Communications line authentication device
GB2022969B (en) 1978-04-12 1982-06-09 Data Recall Ltd Video display control apparatus
US4361851A (en) 1980-01-04 1982-11-30 Asip William F System for remote monitoring and data transmission over non-dedicated telephone lines
AU556499B2 (en) 1981-05-22 1986-11-06 Data General Corporation Data processing system
US4423287A (en) 1981-06-26 1983-12-27 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US4429385A (en) * 1981-12-31 1984-01-31 American Newspaper Publishers Association Method and apparatus for digital serial scanning with hierarchical and relational access
US4578531A (en) 1982-06-09 1986-03-25 At&T Bell Laboratories Encryption system key distribution method and apparatus
US4816658A (en) 1983-01-10 1989-03-28 Casi-Rusco, Inc. Card reader for security system
EP0148235B1 (en) * 1983-06-30 1988-10-05 Independent Broadcasting Authority Encrypted broadcast television system
US4658093A (en) 1983-07-11 1987-04-14 Hellman Martin E Software distribution system
US4652990A (en) 1983-10-27 1987-03-24 Remote Systems, Inc. Protected software access control apparatus and method
US4740890A (en) 1983-12-22 1988-04-26 Software Concepts, Inc. Software protection system with trial period usage code and unlimited use unlocking code both recorded on program storage media
US4621321A (en) 1984-02-16 1986-11-04 Honeywell Inc. Secure data processing system architecture
US4952209A (en) * 1985-10-07 1990-08-28 Muehlbauer Ernst Applicator syringe for a dental compound
US4787035A (en) * 1985-10-17 1988-11-22 Westinghouse Electric Corp. Meta-interpreter
LU86203A1 (fr) 1985-12-11 1987-07-24 Cen Centre Energie Nucleaire Procede et appareil verifiant l'authenticite de documents lies a une personne et l'identite de leurs porteurs
US5319710A (en) 1986-08-22 1994-06-07 Tandem Computers Incorporated Method and means for combining and managing personal verification and message authentication encrytions for network transmission
EP0257585B1 (en) 1986-08-22 1992-11-25 Nec Corporation Key distribution method
US5014234A (en) 1986-08-25 1991-05-07 Ncr Corporation System with software usage timer and counter for allowing limited use but preventing continued unauthorized use of protected software
JPH087720B2 (ja) 1986-09-16 1996-01-29 富士通株式会社 複数サービス用icカードの領域アクセス方法
US4977594A (en) 1986-10-14 1990-12-11 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US5109413A (en) 1986-11-05 1992-04-28 International Business Machines Corporation Manipulating rights-to-execute in connection with a software copy protection mechanism
EP0268139A3 (en) 1986-11-05 1991-04-10 International Business Machines Corporation Manipulating rights-to-execute in connection with a software copy protection mechanism
US4796220A (en) 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US4868376A (en) * 1987-05-15 1989-09-19 Smartcard International Inc. Intelligent portable interactive personal data system
US5390297A (en) 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US4937863A (en) 1988-03-07 1990-06-26 Digital Equipment Corporation Software licensing management system
US5247575A (en) 1988-08-16 1993-09-21 Sprague Peter J Information distribution system
US4888638A (en) 1988-10-11 1989-12-19 A. C. Nielsen Company System for substituting television programs transmitted via telephone lines
US4953209A (en) 1988-10-31 1990-08-28 International Business Machines Corp. Self-verifying receipt and acceptance system for electronically delivered data objects
US4956863A (en) 1989-04-17 1990-09-11 Trw Inc. Cryptographic method and apparatus for public key exchange with authentication
US5129083A (en) * 1989-06-29 1992-07-07 Digital Equipment Corporation Conditional object creating system having different object pointers for accessing a set of data structure objects
US5138712A (en) 1989-10-02 1992-08-11 Sun Microsystems, Inc. Apparatus and method for licensing software on a network of computers
GB9004901D0 (en) * 1990-03-05 1990-05-02 Space Communications Sat Tel L Television scrambler
EP0450841B1 (en) 1990-03-29 1996-08-21 Gte Laboratories Incorporated Video control system
US5174641A (en) 1990-07-25 1992-12-29 Massachusetts Institute Of Technology Video encoding method for television applications
US5058162A (en) 1990-08-09 1991-10-15 Hewlett-Packard Company Method of distributing computer data files
JPH05134957A (ja) * 1990-10-10 1993-06-01 Fuji Xerox Co Ltd データ管理システム
US5263162A (en) 1990-11-07 1993-11-16 Hewlett-Packard Company Method of validating a label translation configuration by parsing a real expression describing the translation configuration
DE69228350T2 (de) 1991-05-08 1999-09-23 Digital Equipment Corp Verwaltungssschnittstelle und format für lizenzverwaltungssystem
WO1992020021A1 (en) 1991-05-08 1992-11-12 Digital Equipment Corporation License management system
US5204897A (en) * 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US5260999A (en) 1991-06-28 1993-11-09 Digital Equipment Corporation Filters in license management system
US5940504A (en) 1991-07-01 1999-08-17 Infologic Software, Inc. Licensing management system and method in which datagrams including an address of a licensee and indicative of use of a licensed product are sent from the licensee's site
US5142578A (en) 1991-08-22 1992-08-25 International Business Machines Corporation Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
US5276444A (en) * 1991-09-23 1994-01-04 At&T Bell Laboratories Centralized security control system
US5557518A (en) 1994-04-28 1996-09-17 Citibank, N.A. Trusted agents for open electronic commerce
US5453601A (en) * 1991-11-15 1995-09-26 Citibank, N.A. Electronic-monetary system
WO1993011480A1 (en) 1991-11-27 1993-06-10 Intergraph Corporation System and method for network license administration
EP0622003B1 (en) 1992-01-08 2001-10-17 Broadband Innovations, Inc. Multichannel television signal scrambling and descrambling system and method
JP2659896B2 (ja) 1992-04-29 1997-09-30 インターナショナル・ビジネス・マシーンズ・コーポレイション 構造化文書複製管理方法及び構造化文書複製管理装置
US5412717A (en) 1992-05-15 1995-05-02 Fischer; Addison M. Computer system security method and apparatus having program authorization information data structures
US5237611A (en) 1992-07-23 1993-08-17 Crest Industries, Inc. Encryption/decryption apparatus with non-accessible table of keys
US5287408A (en) 1992-08-31 1994-02-15 Autodesk, Inc. Apparatus and method for serializing and validating copies of computer software
US5293422A (en) * 1992-09-23 1994-03-08 Dynatek, Inc. Usage control system for computer software
JP3358627B2 (ja) * 1992-10-16 2002-12-24 ソニー株式会社 情報記録再生装置
US5414852A (en) 1992-10-30 1995-05-09 International Business Machines Corporation Method for protecting data in a computer system
GB9303595D0 (en) 1993-02-23 1993-04-07 Int Computers Ltd Licence management mechanism for a computer system
US5337357A (en) 1993-06-17 1994-08-09 Software Security, Inc. Method of software distribution protection
US5386369A (en) 1993-07-12 1995-01-31 Globetrotter Software Inc. License metering system for software applications
US6135646A (en) 1993-10-22 2000-10-24 Corporation For National Research Initiatives System for uniquely and persistently identifying, managing, and tracking digital objects
US5625690A (en) 1993-11-15 1997-04-29 Lucent Technologies Inc. Software pay per use system
US5495411A (en) 1993-12-22 1996-02-27 Ananda; Mohan Secure software rental system using continuous asynchronous password verification
US5504816A (en) 1994-02-02 1996-04-02 Gi Corporation Method and apparatus for controlling access to digital signals
US5553143A (en) 1994-02-04 1996-09-03 Novell, Inc. Method and apparatus for electronic licensing
US5787172A (en) * 1994-02-24 1998-07-28 The Merdan Group, Inc. Apparatus and method for establishing a cryptographic link between elements of a system
US5563946A (en) 1994-04-25 1996-10-08 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: method and apparatus for passing encrypted files between data processing systems
US5799087A (en) 1994-04-28 1998-08-25 Citibank, N.A. Electronic-monetary system
US5636346A (en) 1994-05-09 1997-06-03 The Electronic Address, Inc. Method and system for selectively targeting advertisements and programming
US5564038A (en) 1994-05-20 1996-10-08 International Business Machines Corporation Method and apparatus for providing a trial period for a software license product using a date stamp and designated test period
US5477263A (en) 1994-05-26 1995-12-19 Bell Atlantic Network Services, Inc. Method and apparatus for video on demand with fast forward, reverse and channel pause
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
EP0690399A3 (en) 1994-06-30 1997-05-02 Tandem Computers Inc Remote controlled financial transaction system
US5557678A (en) 1994-07-18 1996-09-17 Bell Atlantic Network Services, Inc. System and method for centralized session key distribution, privacy enhanced messaging and information distribution using a split private key public cryptosystem
US5535276A (en) 1994-11-09 1996-07-09 Bell Atlantic Network Services, Inc. Yaksha, an improved system and method for securing communications using split private key asymmetric cryptography
US5838792A (en) 1994-07-18 1998-11-17 Bell Atlantic Network Services, Inc. Computer system for centralized session key distribution, privacy enhanced messaging and information distribution using a split private key public cryptosystem
JPH0854951A (ja) 1994-08-10 1996-02-27 Fujitsu Ltd ソフトウェア使用量管理装置
US5737420A (en) 1994-09-07 1998-04-07 Mytec Technologies Inc. Method for secure data transmission between remote stations
US6189037B1 (en) 1994-09-30 2001-02-13 Intel Corporation Broadband data interface
FI100137B (fi) 1994-10-28 1997-09-30 Vazvan Simin Reaaliaikainen langaton telemaksujärjestelmä
US5727065A (en) * 1994-11-14 1998-03-10 Hughes Electronics Deferred billing, broadcast, electronic document distribution system and method
US5638443A (en) * 1994-11-23 1997-06-10 Xerox Corporation System for controlling the distribution and use of composite digital works
US5629980A (en) 1994-11-23 1997-05-13 Xerox Corporation System for controlling the distribution and use of digital works
US5634012A (en) 1994-11-23 1997-05-27 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
JPH08263438A (ja) 1994-11-23 1996-10-11 Xerox Corp ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法
US6963859B2 (en) 1994-11-23 2005-11-08 Contentguard Holdings, Inc. Content rendering repository
US5715403A (en) 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
JP4386898B2 (ja) 1994-12-13 2009-12-16 インターシア ソフトウェア エルエルシー 暗号鍵システム
US5485577A (en) 1994-12-16 1996-01-16 General Instrument Corporation Of Delaware Method and apparatus for incremental delivery of access rights
US7162635B2 (en) * 1995-01-17 2007-01-09 Eoriginal, Inc. System and method for electronic transmission, storage, and retrieval of authenticated electronic original documents
SE504085C2 (sv) 1995-02-01 1996-11-04 Greg Benson Sätt och system för att hantera dataobjekt i enlighet med förutbestämda villkor för användare
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
CN101398871B (zh) 1995-02-13 2011-05-18 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US5530235A (en) * 1995-02-16 1996-06-25 Xerox Corporation Interactive contents revealing storage device
US5632681A (en) 1995-03-07 1997-05-27 International Business Machines Corporation Universal electronic video game renting/distributing system
US6246767B1 (en) * 1995-04-03 2001-06-12 Scientific-Atlanta, Inc. Source authentication of download information in a conditional access system
US6157719A (en) 1995-04-03 2000-12-05 Scientific-Atlanta, Inc. Conditional access system
US6424717B1 (en) * 1995-04-03 2002-07-23 Scientific-Atlanta, Inc. Encryption devices for use in a conditional access system
US5717604A (en) 1995-05-25 1998-02-10 Wiggins; Christopher Network monitoring system for tracking, billing and recovering licenses
US5790677A (en) * 1995-06-29 1998-08-04 Microsoft Corporation System and method for secure electronic commerce transactions
FR2736783B1 (fr) * 1995-07-13 1997-08-14 Thomson Multimedia Sa Procede et appareil d'enregistrement et de lecture avec un support d'enregistrement de grande capacite
US5764807A (en) * 1995-09-14 1998-06-09 Primacomp, Inc. Data compression using set partitioning in hierarchical trees
KR0166923B1 (ko) 1995-09-18 1999-03-20 구자홍 디지탈 방송 시스템의 불법 시청 및 복사 방지방법 및 장치
US5765152A (en) * 1995-10-13 1998-06-09 Trustees Of Dartmouth College System and method for managing copyrighted electronic media
US6279112B1 (en) 1996-10-29 2001-08-21 Open Market, Inc. Controlled transfer of information in computer networks
US5825876A (en) * 1995-12-04 1998-10-20 Northern Telecom Time based availability to content of a storage medium
US5708709A (en) 1995-12-08 1998-01-13 Sun Microsystems, Inc. System and method for managing try-and-buy usage of application programs
AU1690597A (en) * 1996-01-11 1997-08-01 Mitre Corporation, The System for controlling access and distribution of digital property
US5870475A (en) 1996-01-19 1999-02-09 Northern Telecom Limited Facilitating secure communications in a distribution network
US5754840A (en) * 1996-01-23 1998-05-19 Smartpatents, Inc. System, method, and computer program product for developing and maintaining documents which includes analyzing a patent application with regards to the specification and claims
US5973756A (en) * 1996-02-06 1999-10-26 Fca Corporation IR Transmitter with integral magnetic-stripe ATM type credit card reader & method therefor
US5848378A (en) 1996-02-07 1998-12-08 The International Weather Network System for collecting and presenting real-time weather information on multiple media
US5987134A (en) * 1996-02-23 1999-11-16 Fuji Xerox Co., Ltd. Device and method for authenticating user's access rights to resources
AU1317597A (en) 1996-03-18 1997-10-10 News Datacom Limited Smart card chaining in pay television systems
US5673316A (en) 1996-03-29 1997-09-30 International Business Machines Corporation Creation and distribution of cryptographic envelope
EP0891669B1 (en) 1996-04-01 2000-08-02 Macrovision Corporation A method for controlling copy protection in digital video networks
US5751813A (en) 1996-04-29 1998-05-12 Motorola, Inc. Use of an encryption server for encrypting messages
US5850433A (en) * 1996-05-01 1998-12-15 Sprint Communication Co. L.P. System and method for providing an on-line directory service
WO1997043761A2 (en) 1996-05-15 1997-11-20 Intertrust Technologies Corp. Cryptographic methods, apparatus and systems for storage media electronic rights management in closed and connected appliances
JP2810033B2 (ja) 1996-07-08 1998-10-15 村越 弘昌 稼働管理システム及び稼働管理方法
US5850443A (en) 1996-08-15 1998-12-15 Entrust Technologies, Ltd. Key management system for mixed-trust environments
FR2752655B1 (fr) * 1996-08-20 1998-09-18 France Telecom Procede et equipement pour affecter a un programme de television deja en acces conditionnel un acces conditionnel complementaire
GB2316503B (en) 1996-08-22 2000-11-15 Icl Personal Systems Oy Software licence management
US5812664A (en) * 1996-09-06 1998-09-22 Pitney Bowes Inc. Key distribution system
US5850444A (en) 1996-09-09 1998-12-15 Telefonaktienbolaget L/M Ericsson (Publ) Method and apparatus for encrypting radio traffic in a telecommunications network
US6052780A (en) 1996-09-12 2000-04-18 Open Security Solutions, Llc Computer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information
US5825879A (en) 1996-09-30 1998-10-20 Intel Corporation System and method for copy-protecting distributed video content
US6006332A (en) 1996-10-21 1999-12-21 Case Western Reserve University Rights management system for digital media
JPH10133955A (ja) 1996-10-29 1998-05-22 Matsushita Electric Ind Co Ltd 可搬型メディア駆動装置とその方法、及び可搬型メディアとネットワークの連携装置とその方法
US6108372A (en) 1996-10-30 2000-08-22 Qualcomm Inc. Method and apparatus for decoding variable rate data using hypothesis testing to determine data rate
ATE224124T1 (de) 1997-01-27 2002-09-15 Koninkl Philips Electronics Nv Verfahren und vorrichtung zur übertragung von inhaltsinformation und darauf bezogener zusatzinformation
GB9703193D0 (en) * 1997-02-15 1997-04-02 Philips Electronics Nv Television
NZ500198A (en) 1997-03-21 2001-11-30 Canal Plus Sa Broadcast and reception system, and conditional access system
US6108420A (en) 1997-04-10 2000-08-22 Channelware Inc. Method and system for networked installation of uniquely customized, authenticable, and traceable software application
EP0983664A1 (en) * 1997-05-07 2000-03-08 Neomedia Technologies, Inc Scanner enhanced remote control unit and system for automatically linking to on-line resources
JP3613929B2 (ja) * 1997-05-07 2005-01-26 富士ゼロックス株式会社 アクセス資格認証装置および方法
US6112239A (en) * 1997-06-18 2000-08-29 Intervu, Inc System and method for server-side optimization of data delivery on a distributed computer network
GB9714227D0 (en) 1997-07-04 1997-09-10 British Telecomm A method of scheduling calls
JP3613936B2 (ja) 1997-07-07 2005-01-26 富士ゼロックス株式会社 アクセス資格認証装置
US6584565B1 (en) 1997-07-15 2003-06-24 Hewlett-Packard Development Company, L.P. Method and apparatus for long term verification of digital signatures
EP1000509B1 (en) 1997-08-01 2002-11-27 Scientific-Atlanta, Inc. Encryption device for use in a conditional access system
EP1000511B1 (en) 1997-08-01 2001-11-14 Scientific-Atlanta, Inc. Conditional access system
JP3671611B2 (ja) 1997-08-05 2005-07-13 富士ゼロックス株式会社 アクセス資格認証装置および方法
EP0944011A4 (en) * 1997-08-05 2000-08-23 Enix Corp COLLECTING FINGERPRINTS
JP3622433B2 (ja) 1997-08-05 2005-02-23 富士ゼロックス株式会社 アクセス資格認証装置および方法
US6091777A (en) 1997-09-18 2000-07-18 Cubic Video Technologies, Inc. Continuously adaptive digital video compression system and method for a web streamer
IL121862A (en) 1997-09-29 2005-07-25 Nds Ltd West Drayton Distributed ird system for pay television systems
US6112181A (en) 1997-11-06 2000-08-29 Intertrust Technologies Corporation Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US6044466A (en) 1997-11-25 2000-03-28 International Business Machines Corp. Flexible and dynamic derivation of permissions
US6141754A (en) 1997-11-28 2000-10-31 International Business Machines Corporation Integrated method and system for controlling information access and distribution
US6084969A (en) 1997-12-31 2000-07-04 V-One Corporation Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network
WO1999035782A1 (en) 1998-01-02 1999-07-15 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
JP4113274B2 (ja) * 1998-02-05 2008-07-09 富士ゼロックス株式会社 認証装置および方法
EP0934765A1 (en) 1998-02-09 1999-08-11 CANAL+ Société Anonyme Interactive gaming system
JP3867388B2 (ja) * 1998-02-12 2007-01-10 富士ゼロックス株式会社 条件付き認証装置および方法
EP1343318A3 (en) 1998-03-16 2005-04-13 Intertrust Technologies Corp. Methods and apparatus for continuous control and protection of media content
US6189146B1 (en) * 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
EP0946022B1 (en) 1998-03-26 2013-12-18 Nippon Telegraph And Telephone Corporation Email access control scheme for communication network using identification concealment mechanism
US6282653B1 (en) 1998-05-15 2001-08-28 International Business Machines Corporation Royalty collection method and system for use of copyrighted digital materials on the internet
FI107984B (fi) 1998-05-20 2001-10-31 Nokia Networks Oy Palvelun luvattoman käytön estäminen
US6216112B1 (en) * 1998-05-27 2001-04-10 William H. Fuller Method for software distribution and compensation with replenishable advertisements
US6219652B1 (en) * 1998-06-01 2001-04-17 Novell, Inc. Network license authentication
EP0964572A1 (en) 1998-06-08 1999-12-15 CANAL+ Société Anonyme Decoder and security module for a digital transmission system
US6169976B1 (en) * 1998-07-02 2001-01-02 Encommerce, Inc. Method and apparatus for regulating the use of licensed products
US6865675B1 (en) 1998-07-14 2005-03-08 Koninklijke Philips Electronics N.V. Method and apparatus for use of a watermark and a unique time dependent reference for the purpose of copy protection
US6275531B1 (en) 1998-07-23 2001-08-14 Optivision, Inc. Scalable video coding method and apparatus
US6226618B1 (en) 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
AU5781599A (en) 1998-08-23 2000-03-14 Open Entertainment, Inc. Transaction system for transporting media files from content provider sources tohome entertainment devices
US6397333B1 (en) 1998-10-07 2002-05-28 Infineon Technologies Ag Copy protection system and method
GB2342827A (en) * 1998-10-11 2000-04-19 Mark Baker A system for authentication, data security, digital rights management and encryption for use with electronic commerce and electronic business systems
US6327652B1 (en) * 1998-10-26 2001-12-04 Microsoft Corporation Loading and identifying a digital rights management operating system
JP2000215165A (ja) 1999-01-26 2000-08-04 Nippon Telegr & Teleph Corp <Ntt> 情報アクセス制御方法および装置と情報アクセス制御プログラムを記録した記録媒体
CA2290170C (en) * 1999-01-29 2005-06-14 International Business Machines Corporation Improved digital signature
EP1026898A1 (en) 1999-02-04 2000-08-09 CANAL+ Société Anonyme Method and apparatus for encrypted transmission
US20020019814A1 (en) * 2001-03-01 2002-02-14 Krishnamurthy Ganesan Specifying rights in a digital rights license according to events
US6973444B1 (en) 1999-03-27 2005-12-06 Microsoft Corporation Method for interdependently validating a digital content package and a corresponding digital license
US7114179B1 (en) 1999-04-07 2006-09-26 Swisscom Mobile Ag Method and system for ordering, loading and using access tickets
US6453305B1 (en) 1999-05-21 2002-09-17 Compaq Computer Corporation Method and system for enforcing licenses on an open network
WO2000073922A2 (en) 1999-06-01 2000-12-07 Cacheflow, Inc. Content delivery system
AU6074100A (en) 1999-07-06 2001-01-22 Transcast International, Inc. Enabling viewers of television systems to participate in auctions
FR2796183B1 (fr) * 1999-07-07 2001-09-28 A S K Ticket d'acces sans contact et son procede de fabrication
US6796555B1 (en) * 1999-07-19 2004-09-28 Lucent Technologies Inc. Centralized video controller for controlling distribution of video signals
NZ516822A (en) 1999-08-06 2004-05-28 Lexis Nexis System and method for classifying legal concepts using legal topic scheme
US20020056118A1 (en) * 1999-08-27 2002-05-09 Hunter Charles Eric Video and music distribution system
US6289455B1 (en) * 1999-09-02 2001-09-11 Crypotography Research, Inc. Method and apparatus for preventing piracy of digital content
GB2354102B (en) 1999-09-08 2004-01-14 Barron Mccann Ltd Security system
US6401211B1 (en) * 1999-10-19 2002-06-04 Microsoft Corporation System and method of user logon in combination with user authentication for network access
US6246797B1 (en) 1999-11-12 2001-06-12 Picsurf, Inc. Picture and video storage management system and method
DE19956359A1 (de) 1999-11-24 2001-05-31 Alcatel Sa Kartenbuchung mittels einer virtuellen Eintrittskarte
US6738901B1 (en) * 1999-12-15 2004-05-18 3M Innovative Properties Company Smart card controlled internet access
US6961902B2 (en) * 2000-03-07 2005-11-01 Broadcom Corporation Interactive system for and method of automating the generation of legal documents
US20020107809A1 (en) * 2000-06-02 2002-08-08 Biddle John Denton System and method for licensing management
US7225231B2 (en) * 2000-09-20 2007-05-29 Visto Corporation System and method for transmitting workspace elements across a network
DE10047091A1 (de) 2000-09-21 2002-04-11 Merck Patent Gmbh Flüssigkristalline Mischungen
US20020077984A1 (en) 2000-12-19 2002-06-20 Mark Ireton Enabling protected digital media to be shared between playback devices
US20020161645A1 (en) * 2001-04-10 2002-10-31 Walker Jay S. Method and apparatus for offering forward commitment agreements
US8001053B2 (en) 2001-05-31 2011-08-16 Contentguard Holdings, Inc. System and method for rights offering and granting using shared state variables
US7774280B2 (en) 2001-06-07 2010-08-10 Contentguard Holdings, Inc. System and method for managing transfer of rights using shared state variables
US8001054B1 (en) 2001-07-10 2011-08-16 American Express Travel Related Services Company, Inc. System and method for generating an unpredictable number using a seeded algorithm
AU2003282576A1 (en) 2002-10-09 2004-05-04 Legal Igaming, Inc. System and method for connecting gaming devices to a network for remote play
JP5168039B2 (ja) 2008-09-12 2013-03-21 王子ホールディングス株式会社 感熱記録体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112883687A (zh) * 2021-02-05 2021-06-01 北京科技大学 一种基于合同文本标记语言的法律合同交互式标注方法

Also Published As

Publication number Publication date
MXPA04010604A (es) 2004-12-13
EP1436754A4 (en) 2010-03-24
US20040049462A1 (en) 2004-03-11
CN1666207A (zh) 2005-09-07
AU2003243179A1 (en) 2003-11-17
KR100755631B1 (ko) 2007-09-04
US20200090079A1 (en) 2020-03-19
KR20050006217A (ko) 2005-01-15
US8543511B2 (en) 2013-09-24
JP2005524177A (ja) 2005-08-11
AU2003232016A1 (en) 2003-11-17
CA2484493A1 (en) 2003-11-13
JP2006501536A (ja) 2006-01-12
US20040024670A1 (en) 2004-02-05
WO2003094077A1 (en) 2003-11-13
EP1502221A4 (en) 2009-08-05
MXPA04010541A (es) 2005-02-17
EP1502221A1 (en) 2005-02-02
EP1436754A1 (en) 2004-07-14
WO2003094076A1 (en) 2003-11-13
US10430729B2 (en) 2019-10-01
AU2003243179B2 (en) 2005-04-14
KR100671073B1 (ko) 2007-01-17
US20130346324A1 (en) 2013-12-26
KR20040104669A (ko) 2004-12-10

Similar Documents

Publication Publication Date Title
CN1659559A (zh) 用于规定和处理合法表达的系统和方法
CN1276321C (zh) 用于安全交易管理和电子权利保护的系统和方法
CN100345157C (zh) 数字内容的播放器、其识别方法及跟踪其使用的系统
CN1231039A (zh) 个人信息安全与交换的工具
CN1839403A (zh) 经改进的慈善管理系统和商务方法
CN1579065A (zh) 用于数据供应、交易和电子投票的方法和系统
CN1163805C (zh) 跟踪最终用户电子内容使用的系统
CN1619490A (zh) 系统的集成设计,部署和管理阶段
CN101080737A (zh) 程序性交易的自动授权
CN1244936A (zh) 用于电子事务系统和信赖服务器
CN101076828A (zh) 执行自动授权的程序性交易
CN1542665A (zh) 计算机化争议解决系统和方法
CN1860761A (zh) 用于对等服务编排的可互操作系统和方法
CN1653463A (zh) 用于处理使用权利表达的方法和装置
CN1679026A (zh) Web服务设备和方法
CN1695339A (zh) 用于万维网服务的动态互通性合同
CN1322322A (zh) 数据提供系统及其方法
CN1214352C (zh) 一种从用户站点向外部站点发布使用数据的方法
CN1650303A (zh) 联网服务许可系统和方法
CN1737841A (zh) 一种户外待位广告牌的网上交易方法
CN1543619A (zh) 商品或证券的定价和分配系统与方法
CN1716150A (zh) 一种从用户站点向外部站点发布使用数据的方法
CN1993693A (zh) 用于传送咨询者转卖商交易信息的方法和系统
CN1716303A (zh) 一种从用户站点向外部站点发布使用数据的方法
Contreras Technical standards and bioinformatics

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication