The disclosed technology can be used to develop systems and perform methods in which restriction, use, and/or interaction values can be assigned to license attributes associated with a first license to specify particular restrictions, uses (e.g., distribution), and interactions (e.g., manipulations) pertaining to a first protectable content. These restriction, use, and/or interaction values can be compared with corresponding attribute values associated with a second license and a second protectable content and such comparisons can serve as a basis for determining attributes associated with a third protectable content, where the third protectable content is based on a combination of at least some aspects of the first protectable content and the second protectable content. The first and/or second protectable content can correspond to one or more multimedia presentations, video segments, audio segments, textual representations, works of art, visual representations, technological... |
Citations|
| US5313616 | Sep 18, 1990 | May 17, 1994 | 88Open Consortium, Ltd. | Method for analyzing calls of application program by inserting monitoring routines into the executable version and redirecting calls to the monitoring routines | | US5343527 | Oct 27, 1993 | Aug 30, 1994 | International Business Machines Corporation | Hybrid encryption method and system for protecting reusable software components | | US5469354 | Feb 28, 1992 | Nov 21, 1995 | Hitachi, Ltd. | Document data processing method and apparatus for document retrieval | | US5577249 | Aug 8, 1995 | Nov 19, 1996 | International Business Machines Corporation | Method for finding a reference token sequence in an original token string within a database of token strings using appended non-contiguous substrings | | US5765152 | Oct 13, 1995 | Jun 9, 1998 | Trustees of Dartmouth College | System and method for managing copyrighted electronic media | | US5774883 | May 25, 1995 | Jun 30, 1998 | | Method for selecting a seller's most profitable financing program | | US5796830 | Jul 29, 1996 | Aug 18, 1998 | International Business Machines Corporation | Interoperable cryptographic key recovery system | | US5892900 | Aug 30, 1996 | Apr 6, 1999 | InterTrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection | | US5893095 | Mar 28, 1997 | Apr 6, 1999 | Virage, Inc. | Similarity engine for content-based retrieval of images | | US5917912 | Jan 8, 1997 | Jun 29, 1999 | InterTrust Technologies Corporation | System and methods for secure transaction management and electronic rights protection | | US5958051 | Jan 9, 1997 | Sep 28, 1999 | Sun Microsystems, Inc. | Implementing digital signatures for data streams and data archives | | US6029002 | Nov 13, 1995 | Feb 22, 2000 | Peritus Software Services, Inc. | Method and apparatus for analyzing computer code using weakest precondition | | US6035402 | Dec 20, 1996 | Mar 7, 2000 | GTE CyberTrust Solutions Incorporated | Virtual certificate authority | | US6072493 | Mar 30, 1998 | Jun 6, 2000 | BellSouth Corporation | System and method for associating services information with selected elements of an organization | | US6148401 | Nov 19, 1997 | Nov 14, 2000 | AT&T Corp. | System and method for providing assurance to a host that a piece of software possesses a particular property | | US6188995 | Jul 28, 1997 | Feb 13, 2001 | Apple Computer, Inc. | Method and apparatus for enforcing software licenses | | US6189146 | Mar 18, 1998 | Feb 13, 2001 | Microsoft Corporation | System and method for software licensing | | US6226618 | Aug 13, 1998 | May 1, 2001 | International Business Machines Corporation | Electronic content delivery system | | US6240409 | Jul 31, 1998 | May 29, 2001 | The Regents of the University of California | Method and apparatus for detecting and summarizing document similarity within large document sets | | US6249769 | Nov 2, 1998 | Jun 19, 2001 | International Business Machines Corporation | Method, system and program product for evaluating the business requirements of an enterprise for generating business solution deliverables | | US6260141 | Mar 1, 2000 | Jul 10, 2001 | | Software license control system based on independent software registration server | | US6263348 | Jul 1, 1998 | Jul 17, 2001 | Serena Software International, Inc. | Method and apparatus for identifying the existence of differences between two files | | US6275223 | Jul 8, 1998 | Aug 14, 2001 | Nortel Networks Limited | Interactive on line code inspection process and tool | | US6282698 | Dec 4, 1998 | Aug 28, 2001 | Lucent Technologies Inc. | Detecting similarities in Java sources from bytecodes | | US6330670 | Jan 8, 1999 | Dec 11, 2001 | Microsoft Corporation | Digital rights management operating system | | US6381698 | Sep 8, 2000 | Apr 30, 2002 | AT&T Corp | System and method for providing assurance to a host that a piece of software possesses a particular property | | US6393438 | Jun 15, 2001 | May 21, 2002 | Serena Software International, Inc. | Method and apparatus for identifying the existence of differences between two files | | US6397205 | Nov 22, 1999 | May 28, 2002 | Duquesne University of the Holy Ghost | Document categorization and evaluation via cross-entrophy | | US6480834 | Nov 17, 1999 | Nov 12, 2002 | Serena Software, Inc. | Method and apparatus for serving files from a mainframe to one or more clients | | US6480959 | Nov 20, 1998 | Nov 12, 2002 | Jamama, LLC | Software system and associated methods for controlling the use of computer programs | | US6493709 | Mar 18, 1999 | Dec 10, 2002 | The Regents of the University of California | Method and apparatus for digitally shredding similar documents within large document sets in a data processing environment | | US6499035 | Jul 15, 1998 | Dec 24, 2002 | Microsoft Corporation | Licensing java objects | | US6546114 | Sep 7, 1999 | Apr 8, 2003 | Microsoft Corporation | Technique for detecting a watermark in a marked image | | US6557105 | Apr 14, 1999 | Apr 29, 2003 | Tut Systems, Inc. | Apparatus and method for cryptographic-based license management | | US6574348 | Sep 7, 1999 | Jun 3, 2003 | Microsoft Corporation | Technique for watermarking an image and a resulting watermarked image | | US6658626 | Sep 3, 1999 | Dec 2, 2003 | The Regents of the University of California | User interface for displaying document comparison information | | US6862696 | May 3, 2001 | Mar 1, 2005 | Cigital | System and method for software certification | | US6931532 | Oct 21, 1999 | Aug 16, 2005 | International Business Machines Corporation | Selective data encryption using style sheet processing | | US6941459 | Oct 21, 1999 | Sep 6, 2005 | International Business Machines Corporation | Selective data encryption using style sheet processing for decryption by a key recovery agent | | US6954747 | Nov 14, 2000 | Oct 11, 2005 | Microsoft Corporation | Methods for comparing versions of a program | | US6961849 | Oct 21, 1999 | Nov 1, 2005 | International Business Machines Corporation | Selective data encryption using style sheet processing for decryption by a group clerk | | US6976170 | Oct 15, 2001 | Dec 13, 2005 | | Method for detecting plagiarism | | US6978367 | Oct 21, 1999 | Dec 20, 2005 | International Business Machines Corporation | Selective data encryption using style sheet processing for decryption by a client proxy | | US6981023 | Mar 8, 2000 | Dec 27, 2005 | | Message routing | | US6983371 | Nov 13, 2000 | Jan 3, 2006 | International Business Machines Corporation | Super-distribution of protected digital content | | US7197156 | Sep 23, 1999 | Mar 27, 2007 | Digimarc Corporation | Method and apparatus for embedding auxiliary information within original data | | US7254587 | Jan 12, 2004 | Aug 7, 2007 | International Business Machines Corporation | Method and apparatus for determining relative relevance between portions of large electronic documents | | US7305701 | Apr 30, 2001 | Dec 4, 2007 | Microsoft Corporation | Methods and arrangements for controlling access to resources based on authentication method | | US20020065781 | Apr 27, 2001 | | | Licensed digital material distribution system and method | | US20020138441 | Aug 3, 2001 | | | Technique for license management and online software license enforcement | | US20020138477 | Oct 30, 2001 | | | Configurable software system and user interface for automatically storing computer files | | US20020138764 | Jan 31, 2002 | | | System and method for an automatic license facility | | US20020162030 | Apr 30, 2001 | | | Methods and arrangements for controlling access to resources based on authentication method | | US20020188608 | Jun 12, 2001 | | | Automated license dependency resolution and license generation | | US20020194010 | Jun 15, 2001 | | | System and related methods for managing and enforcing software licenses | | US20030018891 | Jun 7, 2002 | | | Encrypted packet inspection | | US20030074163 | Oct 12, 2001 | | | Method and system for automated integration of design analysis subprocesses | | US20030079174 | Oct 18, 2001 | | International Business Machines Corporation | Apparatus and method for source compression and comparison | | US20030125975 | Nov 12, 2002 | | Siemens Aktiengesellschaft | Method for generating licenses | | US20030126456 | Nov 12, 2002 | | Siemens Aktiengesellschaft | Method for licensing software | | US20030159055 | Sep 28, 2001 | | | System and method for verifying integrity of system with multiple components | | US20030163684 | Dec 16, 2002 | | | Method and system to securely distribute content via a network | | US20030167236 | Mar 31, 2003 | | CONTENTGUARD HOLDINGS, INC. | Method and apparatus for repackaging portions of digital works as new digital works | | US20030172035 | Mar 8, 2002 | | | Method and system for managing software licenses | | US20040068734 | Oct 7, 2002 | | Microsoft Corporation | Software license isolation layer | | US20040073789 | Oct 15, 2002 | | | Method for collaborative software licensing of electronically distributed computer programs | | US20040162827 | Feb 18, 2004 | | Nahava Inc. | Method and apparatus for fundamental operations on token sequences: computing similarity, extracting term values, and searching efficiently | | US20050015343 | Sep 11, 2003 | | | License management device, license management method, and computer program | | US20050039034 | Jul 31, 2003 | | International Business Machines Corporation | Security containers for document components | | US20050060643 | Aug 12, 2004 | | MiaVia, Inc. | DOCUMENT SIMILARITY DETECTION AND CLASSIFICATION SYSTEM | | US20050065930 | Sep 12, 2003 | | | Navigating a software project repository | | US20050114840 | Nov 25, 2003 | | | Software tool for detecting plagiarism in computer source code | | US20050125358 | Dec 4, 2003 | | Black Duck Software, Inc. | Authenticating licenses for legally-protectable content based on license profiles and content identifiers | | US20050125359 | Dec 4, 2003 | | Black Duck Software, Inc. | Resolving license dependencies for aggregations of legally-protectable content | | US20050166094 | Nov 3, 2004 | | | Testing tool comprising an automated multidimensional traceability matrix for implementing and validating complex software systems | | US20050216898 | Sep 13, 2004 | | | System for software source code comparison | | US20050235342 | Jan 16, 2004 | | | Cryptography correctness detection methods and apparatuses | | US20060015465 | Feb 25, 2005 | | | Apparatus, method and program for license information ascertainment | | US20060031364 | Aug 20, 2005 | | | Message routing | | US20060031686 | Jul 27, 2005 | | Purdue Research Foundation | Method and system for tamperproofing software | | US20060107070 | Oct 17, 2005 | | | Method and system for secure computational outsourcing and disguise | | US20060122983 | Aug 18, 2005 | | | Locating electronic instances of documents based on rendered instances, document fragment digest generation, and digest based document fragment determination | | US20060155975 | Nov 13, 2003 | | Koninklijke Philips Electronics N.V. | Method and apparatus for processing conditonal branch instructions | | US20060195540 | May 10, 2006 | | | MESSAGE ROUTING WITH TELECOMMUNICATION NUMBER ADDRESSING AND KEY MANAGEMENT | | US20070157311 | Dec 29, 2005 | | Microsoft Corporation | Security modeling and the application life cycle | | US20070162890 | May 11, 2006 | | Microsoft Corporation | SECURITY ENGINEERING AND THE APPLICATION LIFE CYCLE | | US20070299825 | Sep 20, 2005 | | KODERS, INC. | Source Code Search Engine | | US20080215897 | Apr 14, 2008 | | INTERNATIONAL BUSINESS MACHINES CORPORATION | Security Containers for Document Components | | US20080304669 | Jun 11, 2007 | | THE BOEING COMPANY | RECIPIENT-SIGNED ENCRYPTION CERTIFICATES FOR A PUBLIC KEY INFRASTRUCTURE |
Referenced by|
| US7657866 | Apr 28, 2005 | Feb 2, 2010 | OpenLogic, Inc. | Providing documentation for assembling, installing, and supporting of software stacks | | US7661089 | Apr 28, 2005 | Feb 9, 2010 | OpenLogic, Inc. | Tools for stacking uncoordinated software projects | | US7665086 | Apr 28, 2005 | Feb 16, 2010 | OpenLogic, Inc. | Software project filter | | US7669199 | Apr 28, 2005 | Feb 23, 2010 | OpenLogic, Inc. | Installation of software stacks including uncoordinated projects | | US8091142 | Apr 26, 2005 | Jan 3, 2012 | Microsoft Corporation | Supplementary trust model for software licensing/commercial digital distribution policy |
Claims1. A method comprising: - identifying, by a processor, a first license associated with a first protectable content;
- associating, by a processor, a portion of a plurality of license attributes with the first license;
- assigning, by a processor, a restriction value to each of the associated license attributes, the restriction values of the associated license attributes specifying particular restrictions pertaining to the first protectable content;
- assigning, by a processor, at least one use value and at least one interaction value to a portion of the associated license attributes, the at least one use value representing a degree of distribution of the first protectable content and the at least one interaction value representing a degree of manipulation of the first protectable content;
- comparing, by a processor, the assigned restriction, use, and interaction values of the at least some of the associated license attributes with corresponding attribute values associated with a second license, the second license being associated with a second protectable content;
- detecting, by a processor, whether an event occurred associated with the comparison, wherein the event is at least one of an incompatibility, an error, and a warning;
- responsive to the comparison and the event detection, determining, by a processor, license attributes associated with a third protectable content, the third protectable content comprising a portion of the first protectable content and a portion of the second protectable content; and
- storing in a computer readable memory the determined license attributes associated with the third protectable content;
- wherein each processor is implemented in a digital data processing device.
2. The method of claim 1, wherein the first protectable content and the second protectable content correspond to different software elements. 3. The method of claim 2, wherein the software elements are compliant with an open source definition. 4. The method of claim 2, wherein the first protectable content is compliant with an open source definition and the second protectable content is not compliant with the open source definition. 5. The method of claim 1, wherein the first protectable content corresponds to at least one of a multimedia presentation, a video segment, an audio segment, a textual representation, a work of art, a visual representation, a technological know-how, a business know-how, and a contract right. 6. The method of claim 1, wherein the license attributes associated with the first license correspond to at least one of a software code format, a software naming convention, a software code annotation, a warranty, a reverse-engineering activity, a patent litigation activity, a standards body, a violation of intellectual property rights, and a textual description of at least one aspect of the first license. 7. The method of claim 1, wherein the assigned restriction values correspond to at least one of a prohibition, a requirement, and a nullity. 8. The method of claim 1, wherein the assigned restriction values are set to at least one of true, false, required, don't care, forbidden, 1, 0, −1, and text. 9. The method of claim 1, wherein the assigned use values correspond to at least one of an acquisition, a personal use, a research use, an organizational use, a limited distribution, and an unlimited distribution of at least one aspect of the first protectable content. 10. The method of claim 1, wherein the assigned interaction values correspond to at least one of an original element, a modified element, a group of distinct elements, a group of interconnected elements, a group of elements capable of providing a desired functionality, a plurality of interoperable groups of elements capable of providing a plurality of functions, an unrestricted manipulation of elements, and an unrestricted ownership of elements of at least one aspect of the first protectable content. 11. The method of claim 1, further comprising: - analyzing, by a processor, the first protectable content to identify the first license.
12. The method of claim 1, further comprising: - storing, by a processor, the restriction values, use values, and interaction values assigned to the at least some of the associated license attributes of the first license;
- storing, by a processor, the corresponding attribute values associated with the second license;
- based on the comparison of values, identifying, by a processor, values associated with the attributes associated with the third protectable content, the third protectable content being associated with a third license;
- storing, by a processor, the identified values associated with the attributes of the third protectable content; and
- using the stored attribute values of at least one of the first license, second license, and third license to determine, by a processor, attributes of a fourth protectable content, the fourth protectable content being based on a combination including at least some aspects of at least one of the first protectable content, second protectable content, and third protectable content.
13. The method of claim 1, further comprising: - storing, by a processor, the restriction values, use values, and interaction values assigned to the at least some of the associated license attributes of the first license;
- storing, by a processor, the corresponding attribute values associated with the second license;
- based on the comparison of values, identifying, by a processor, values associated with the attributes associated with the third protectable content, the third protectable content being associated with a third license;
- storing, by a processor, the identified values associated with the attributes of the third protectable content; and
- using the stored attribute values associated with the third protectable content to determine, by a processor, attribute values of a fourth protectable content, the fourth protectable content being based on a combination including at least some aspects of the third protectable content.
14. The method of claim 13, further comprising: - based on the attribute values of the fourth protectable content, determining, by a processor, a plurality of license alternatives for the fourth protectable content.
15. The method of claim 14, further comprising: - selecting, by a processor, one of the plurality of license alternatives based on an operational environment associated with the fourth protectable content.
16. The method of claim 14, further comprising: - storing, by a processor, the plurality of license alternatives in a network-accessible location.
17. The method of claim 1, further comprising: - providing a third license representative of the attributes associated with the third protectable content.
18. The method of claim 1, further comprising: - based on the attributes associated with the third protectable content, determining, by a processor, a plurality of license alternatives for the third protectable content.
19. The method of claim 18, further comprising: - selecting, by a processor, one of the plurality of license alternatives based on an operational environment associated with the third protectable content.
20. The method of claim 18, further comprising: - storing, by a processor, the plurality of license alternatives in a network-accessible location.
21. The method of claim 1, wherein the at least one assigned use value is equivalent to a default use value associated with the first license. 22. The method of claim 1, wherein the at least one assigned use value overrides a default use value associated with the first license. 23. The method of claim 1, wherein the at least one assigned interaction value is equivalent to a default interaction value associated with the first license. 24. The method of claim 1, wherein the at least one assigned interaction value overrides a default interaction value associated with the first license. 25. The method of claim 1, wherein the assigned restriction, use, and interaction values of the at least some of the associated license attributes of the first license override at least some of the corresponding attribute values associated with the second license to form attribute values associated with the third protectable content. 26. The method of claim 1, wherein the assigned restriction, use, and interaction values of the at least some of the associated license attributes of the first license coexist along with at least some of the corresponding attribute values associated with the second license as at least some attribute values of the attributes associated with the third protectable content. 27. The method of claim 1, further comprising: - generating, by a processor, information associated with the detected event, the event information including indicia pertaining to at least one of an event type, a frequency of occurrence of the event type, a related use value, a related interaction value, and an identifier associated with at least one of the first license and second license; and
- storing, by a processor, the event information in a data structure.
28. The method of claim 1, further comprising assigning, by a processor, at least one source value to each of the attributes associated with the third protectable content, the source values identifying attribute information associated with at least one of the first and second licenses that affected values associated with particular ones of the attributes of the third protectable content. |