CN101416148B - System and method for a virtual content repository - Google Patents

System and method for a virtual content repository Download PDF

Info

Publication number
CN101416148B
CN101416148B CN2005800111751A CN200580011175A CN101416148B CN 101416148 B CN101416148 B CN 101416148B CN 2005800111751 A CN2005800111751 A CN 2005800111751A CN 200580011175 A CN200580011175 A CN 200580011175A CN 101416148 B CN101416148 B CN 101416148B
Authority
CN
China
Prior art keywords
node
content
vcr
attribute
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2005800111751A
Other languages
Chinese (zh)
Other versions
CN101416148A (en
Inventor
罗德尼·麦考利
詹姆斯·欧文
贾尔皮什·帕塔迪亚
布拉德·波斯纳
亚历山大·图圣特
克里斯托弗·E·贝尔斯
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.)
Oracle International Corp
Original Assignee
Oracle International Corp
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 Oracle International Corp filed Critical Oracle International Corp
Priority claimed from PCT/US2005/012509 external-priority patent/WO2005101191A2/en
Publication of CN101416148A publication Critical patent/CN101416148A/en
Application granted granted Critical
Publication of CN101416148B publication Critical patent/CN101416148B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

Provided is a system and a method for providing one or more content services to a repository in a plurality of repositories (714, 716, 718), the system comprising: a virtual content repository (700) including one or more content services (708, 710); the plurality of repositories integrated into the virtual content repository; and a logical namespace (400) capable of encompassing the plurality of repositories.

Description

The system and method for virtual content repository
Technical field
The present invention openly relates to Content Management, is specifically related to make contents versionization (versioning) and the content that can limit life cycle is provided.
Background technology
Content repository management and visit to mass data storage is provided, described mass data is stored for example newapaper file storehouse, advertisement, inventory (inventory), image collection etc.Content repository can be the key component such as the such network application of door, and what it must be in response to the user provides dissimilar contents alternately and promptly.Yet, when attempting to integrate more than one seller's content repository, may encounter difficulties.Each content repository may have its oneself proprietary application programming interfaces and content service (for example, be used to search for operating content, versioned, life cycle and data layout agreement).And, storage vault being added into when using at every turn, this application software must be modified so that adapt to these difference.Needed is a kind of system and method for unanimity, is used for mutual and be used for providing a cover unified content service to all storage vaults (comprising that those lack the storage vault of this service) with diverse storage vault.
Description of drawings
Fig. 1 is the graphical representation of exemplary of the functional system layer among the various embodiment of the present invention.
Fig. 2 is the graphical representation of exemplary of the life cycle among the various embodiment of the present invention.
Fig. 3 is the graphical representation of exemplary that calls the outside sight (scenario) of life cycle in various embodiments.
Fig. 4 is the exemplary user interfaces among the various embodiment of the present invention.
Fig. 5 is the graphical representation of exemplary that can be used to storage vault is connected to object/interface of VCR in various embodiment of the present invention.
Fig. 6 is the graphical representation of exemplary that can be used as the object/interface of service model in various embodiment of the present invention.
Fig. 7 is the graphical representation of exemplary of the content creating when forbidding the VCR content service according to various embodiments of the present invention.
Fig. 8 is the graphical representation of exemplary of the content creating when enabling the VCR content service according to various embodiments of the present invention.
Fig. 9 is a graphical representation of exemplary of revising the node among the VCR according to various embodiments of the present invention when enabling content service.
Figure 10 is the graphical representation of exemplary of the node announced in VCR when enabling content service according to various embodiments of the present invention.
Figure 11 is the graphical representation of exemplary of the node among (retire) VCR of living in retirement when enabling content service according to various embodiments of the present invention.
Embodiment
In the figure of accompanying drawing part as example rather than as the restriction diagram of the present invention aspect, similar in the accompanying drawings mark is represented similar element.It should be noted that: in this is open, may not be embodiment, and this quoting means at least one at identical to " one (an) ", " one (one) " and quoting of " various " embodiment.In the following description, state many specific detail so that provide to comprehensive description of the present invention.Yet, it will be apparent to those skilled in the art that: do not having that the present invention is tried out.In other example, do not describe well-known characteristic in detail so that do not make indigestion of the present invention.
Fig. 1 is the graphical representation of exemplary of functional system layer according to various embodiments of the present invention.Separate although this figure depicts assembly logically as, such describes just for purposes of illustration.It will be apparent to those skilled in the art that: the assembly of being drawn among this figure can be arbitrarily combined or be divided into discrete software, firmware and/or hardware.And, those skilled in the art also will be very clear: such assembly, no matter how they make up or divide, and can both carry out on identical computing equipment, perhaps can be distributed in the various computing equipment that connects by one or more networks or other means of communication that is fit to.
The data storage that content repository 112 expressions can be searched for.Such system can be with structured content and the related corpus (corpus) that advances can search for of destructuring content (for example, the paper document of digital scanning, extend markup language, portable document format, HTML (Hypertext Markup Language), Email, image, video and audio stream, original binary data etc.).Content repository can be coupled to Content Management System, perhaps combines with Content Management System.Content Management System can provide content life cycle management, versioned, content to check and the content of approval, automated content classification, event driven contents processing, Process Tracking and other system of arriving transmits.For instance, if the user fills in a loan application on network gateway, this door can be transmitted to content repository with this application so, content repository and then contact banking system, receives the notice of loan approval, upgrades this loan application and notify this user by presenting this approval in-formation with the form that is fit to this network gateway in this storage vault.
The logical expressions that one content repository (hereinafter referred to as " VCR ") virtual or associating is one or more independent content repositories make them occur and conduct as single content repository from the position of application layer 120.VCR also can add content service in the storage vault that self lacks described content service to.In various embodiments and as an illustration, this can partly realize by using API (application programming interfaces) 100 and SPI (ISP's interface) 102.The entity that API describes in the described application layer can be how and some programmed logic or functional interface.Application layer can comprise application and the segmentation thereof of using described API, such as process, thread, servlet, portlet service routine (portlet), object, storehouse and other application component that is fit to.SPI describes ISP's (for example, content repository, Content Management System) and can how to be integrated in certain system.Described SPI will with directly the isolating from API alternately of storage vault.In various embodiments, this can realize in when operation, run time between the API storehouse dynamically link to the SPI storehouse or load the SPI storehouse.In another embodiment, SPI can make that API and SPI can be by network services as the part of server processes.SPI can use the means of any number to communicate by letter with described storage vault, the storer that described means include but not limited to share, remote procedure call and/or by one or more intermediate server processes.
API and SPI can be defined as the set of class/interface, data structure and/or method/function, and its co-operation can be visited and utilize (a plurality of) VCR service so that a program means is provided by it.As an illustration, can describe API and SPI in detail with object oriented programming languages, described object oriented programming languages is Java for example TM(can obtain) and C# (can obtain) from the Microsoft company of the Redmond of Washington from the Sun Microsystems company limited of the Mountain View of California.API and SPI can appear (expose) in several modes, include but not limited to static library, dynamic link library, distributed objects, server, class/interface instance and other means that are fit to.
In various embodiments, API provides the unified view of all storage vaults to application layer, makes the navigation, CRUD operation (CRUD), versioned, life cycle and the search operation that start from this application layer operate them as described storage vault is a storage vault.The storage vault of realizing SPI can " insert " VCR.SPI is included in a socket and the service of supporting the API function on the storage vault grade.API and SPI content shared model, described content model are expressed as the combined arrangement of all storage vaults in the nodename space (namespace) of layering.The node that suppose a node N, is lower than N on level is called as the son of N, and the node that is higher than N on level is called as the father of N.The rank at the top of this level is called as the associating root.To the degree of depth of grade without limits.In various embodiments, storage vault is the son of associating root.Self can have son each storage vault.
As an illustration, API can be used so that mutual with VCR in content mining function (mining facility) 104, process/thread 106, signature library 108, Integrated Development Environment (IDE) 110 and other storehouse 118.IDE can provide the ability of alternatively setting up life cycle and/or contents view for the user.The content mining function can comprise the service of extracting content based on parameter from VCR automatically.Java ServerPages TMSignature library makes door can be with VCR mutual and its content is appeared on the webpage.(can obtain Java ServerPages from Sun Microsystems company limited TM).In addition, it will be apparent to those skilled in the art that: the application of many other types and component software use API and drop on equally fully in the scope of the present disclosure and the spirit.
In various embodiments, API can comprise the optimization of the interactive performance of improvement and VCR.The node that can use one or more cache memories 116 to cushion Search Results and/or visit recently.In various embodiments, cache memory can comprise node cache memory and scale-of-two cache memory.The node cache memory can be used to provide the fast access to the node of nearest visit, and the scale-of-two cache memory can be used to provide to the node cache memory in the fast access of each node associated content/data.API also can provide and make application, instrument and the storehouse can configuration cache memory and the configuration feature 114 of VCR.In various embodiments, this function can be used as Java expansion management (Java Management Extension) (can obtain from SunMicrosystems company limited) and realizes.
In various embodiments, between API and SPI, share the model of the model, content and the data type that are used for representational level information.In this model, node can representational level information, interior perhaps pattern information.With hierarchical file system in the similar name space of file sub-directory, the level node can as with the container of other node.The pattern node is represented predefined data type.Content node is represented content/data.Node can have by the defined shape of their attribute.Attribute Association title, data type and optional value (value that is suitable for the type).In a particular embodiment, the attribute of content node comprises value.As an illustration, type can be any kind described in the table 1.It will be apparent to those skilled in the art that: many types are possible and drop on fully in the scope of the present disclosure and the spirit.
Attribute type Describe
Substantially Text, number, date, Boolean, selection, image, sound, bit mask, audio/video are represented, binary data
Pattern Based on this attribute of pattern node definition
Link Be positioned at the pointer of the data of node outside/quote
Search Will be in order to seek another node among the VCR by the expression formula of evaluation
Institute mapped data storehouse The reflection of existing database tabulation or view.
Table 1: the Exemplary attributes type among the various embodiment
In various embodiments, attribute also can indicate its whether be necessary, its whether be read-only, whether default value be provided, with and whether stipulated the attribute selection.It is single non-limited value, single limited value, multiple non-limited value, or multiple limited value that attribute is selected the indication attribute.Single attribute only has a value and multiple attribute can have more than one value.If attribute is limited, its (a plurality of) value is selected from a limited class value so.If but the attribute right and wrong are limited, can provide any (a plurality of) value to it.Attribute also can be designated as primary attribute.As an illustration, the primary attribute of node can be considered to its default content.For example, if node has comprised the binary attribute of preserving image, it also can comprise the inferior binary attribute of the thumbnail of representing this image so.If this thumbnail is a primary attribute, so can be acquiescently with its demonstration such as the software application of browser.
The named set of one or more attribute types is pattern (schema).The pattern node is the placeholder (place holder) of pattern.In various embodiments, pattern can be used to the attribute of defining node.As an illustration, for purposes of discussion can people (Person) pattern description with three attributes (name, address, date of birth (Name, Address, DateofBirth)) is as follows:
Schema?Person={
<Name=Name,Type=Text>,
<Name=Address,Type=Address>,
<Name=DateofBirth,Type=Date>}
Various embodiment allow to come defined node based on pattern.As an illustration, can give content node John with the attribute identical with described pattern people (Person):
Content Node JohnIs a Person(content node John is the people)
In the case, node John will have following attribute: name, address, date of birth.As selection, node can use one or more patterns to define each attribute.Sometimes this is called nested type.In the following description, John is defined as having information (Info) attribute that itself comprises attribute name, address, date of birth.In addition, John also has client identity (CustomerId) attribute:
Content?Node? John={
<Name=Info,Type=Person>,
<Name=CustomerId,Type=Number>}
Can and/or form in each storage vault of VCR logically defining mode at VCR.In a particular embodiment, pattern can be from least one other mode inheritance attribute.Mode inheritance can be not limited on the degree of depth.In other words, Mode A can be inherited from Mode B, and Mode B itself can be inherited from pattern C, or the like.If several patterns comprise the attribute of repetition, can dispose " base (base) " pattern so, other pattern can be inherited from described basic mode formula.For example, employee (Employee) pattern can be inherited the people's pattern that comprises attribute name, address, date of birth, employee's pattern is added himself attribute (that is, employee identification, employ date and salary (EmployeeID, Date of Hire and Salary)):
Schema?Employee?inherits?from?Person={
<Name=EmployeeID,Type=Number>,
<Name=DateofHire,Type=Date>,
<Name=Salary,Type=Number>}
Therefore, as defined above, employee's pattern has following Column Properties: name, address, date of birth, employee identification, employ date and salary.If people's pattern make himself from another mode inheritance attribute, those attributes also will belong to the employee so.
In various embodiments, node has name/identifier, and can use the path of specifying node location in the VCR name space to specify or the described node of addressing able to programmely.As an illustration, the path from associating root ('/') to the node of being discussed (' c ') can be specified in this path:
/a/b/c
In this example, '/' of beginning expression associating root, ' a ' represents the storage vault under this associating root, ' b ' is the level node in ' a ' storage vault, and ' c ' is the node of being discussed.This path also can identify the attribute (" property1 ") about node:
/a/b/c.property1
In aspect these embodiment, if system can infer the position of node based on contextual information, appearing at the preceding path part of nodename so can omit.
In various embodiments, the pattern that defines in a storage vault or VCR can be from the one or more mode inheritances that define among identical storage vault, different storage vault or VCR.In aspect some of these embodiment,, can in VCR, define the succession pattern automatically so by API if the related one or more storage vaults of heritable pattern are not supported to inherit.In one embodiment, in VCR, define the succession pattern acquiescently.
As an illustration, be arranged in the Person mode inheritance of employee's pattern under the mode layer minor node that is arranged in the BEA storage vault of Avitech storage vault:
Schema/Avitech/Employee?inherits?from?BEA/Schemas/Person=
{
<Name=EmployeeID,Type=Number>,
<Name=DateofHire,Type=Date>,
<Name=Salary,Type=Number>}
In various embodiments, link attribute type (seeing Table 1) allows content to reuse and comprises the not content under the control of VCR.As an illustration, any one in following can be quoted/be pointed to the value that is associated with link attribute: the content node among the VCR, about the individual attribute of the content node among the VCR, the file on the file system, object or any identifier that other is fit to that URL (URL(uniform resource locator)) is identified.In various embodiments, when editor had the content node of link attribute type, the user can designated links destination (for example, the type user interface is browsed in use).Aspect some of these embodiment, if content node or the content node attribute that has moved quoted in link, this system can resolve (resolve) this link automatically to reflect reposition so.
In various embodiments, type can have expression formula for the value of searching (referring to table 1), and described expression formula can be by evaluation so that search for the example of (a plurality of) content node that satisfies this expression formula in VCR.The node (if any) that satisfies this expression formula can be used to processing subsequently.In various embodiments, search expression formula and can comprise the one or more expression formulas that can replace from following expression formula variable: comprise anything in the scope of content node, user profiles (profile), request or the session of searching attribute.In various embodiments, expression formula can comprise mathematics, logic and Boolean operator, function/method call, grand, SQL (Structured Query Language (SQL)) and any query language that other is fit to.In various embodiments, expression formula can pretreated one or many so that performance variable is replaced, constant merges and/or grand expansion.It will be apparent to those skilled in the art that: the expression formula of many other types is possible and drops on fully within this scope of disclosure and the spirit.
In various embodiments, when editor had the content node of searching attribute type, the user can pass through the user interface editing expression formula, and described user interface allows the user by directly with its input and/or by selecting its ingredient to construct expression formula.In addition, user interface can make the result of user's preview evaluation of expression.
Database Mapping attribute type (referring to table 1) allows to select (cull) (i.e. mapping) information and come it is handled by nodal community from one or more database tables (or other database object).As an illustration, company may have such " content " such as the news article of the storage of embarking on journey in one or more RDBMS (relational database management system) table.Company may wish to realize utilizing this " content " by their door.And they may wish to come it is managed as the information in this table is present among the VCR.In case, resemble the conduct (rather than in database table) in VCR of its content as the content node attribute of Database Mapping type by instantiation.In one embodiment, the same manner conduct is pressed in all API operations of this attribute, but finally the information in the tables of data is operated.
In various embodiments, given Database Mapping attribute type can have expression formula (for example SQL), it is when by evaluation, and resolving to can be by this system by the row and column in the database table of one or more accesss to netwoks the database object of any kind of (or resolve to).The Database Mapping attribute can use intrinsic database table/object or about the data base view of those table/objects.It should be appreciated by those skilled in the art that: the disclosure is not limited to the database or the analytical expression of any particular type.
In aspect some embodiment, can create the pattern that maps to any row in the database table automatically.This system can check the data structure of this table and use corresponding to filling this pattern in advance from the Database Mapping attribute of the row of showing.This tabular title can be used as the default property title, and the data type of same every row will be determined the data type of each corresponding attribute.Which attribute is this system also can indicate be listed as corresponding to major key (primary key) in this pattern.If in new model, will not use particular column, can they be gone mapping (that is, cancellation is selected) by user or process from table.Content node can be based on such pattern, and when with the content node instantiation, it can be tied to the row (or other database object) in the database table automatically.In various embodiments, the user can come alternatively specified database object by the browsing database table.
In various embodiments, can use indicating template (" template ") to come displaying contents based on pattern.Template can realize various " views ".As an illustration, view can be " complete (full) ", " breviary " and " tabulation ", but additional " view " can be defined by the terminal user.Full view can be maximum or the whole Pageview figure of content.Thumbnail view will be very little view, and List View can be worked as when the page (for example, products catalogue result of page searching) go up to show a plurality of content node as " tabulation " and used.In various embodiments, the association between pattern and the template can be an one-to-many.Template can be designated as the acquiescence template of pattern.In some of these embodiment, can specify template by means of Integrated Development Environment (IDE).
In various embodiments and as an illustration, can use HTML (HTML (Hypertext Markup Language)) and JSP (Java
Figure G05811175120061019D000081
Server Pages) realizes indicating template.As further instruction, can visit such indicating template as the JSP mark of independent variable from the identifier of webpage by the received content node.The pattern of this node and the acquiescence indicating template that is associated can be derived and present to given content node.As selection, the JSP mark can adopt additional independent variable specify except the acquiescence view.In another embodiment, pattern that can content-based node (for example, in advance or when operation dynamically) generates indicating template automatically.In other embodiments, can determine view (for example, complete, breviary, tabulation) automatically based on the content of HTTP request.
In various embodiments, the role is a dynamic set of user.As an illustration, the role can be based on by the common functional responsibility of its member.In aspect these embodiment, the role can be defined by one or more member's standards (membership criteria).Role-map is such process, promptly determines by this process whether the user satisfies member's standard of given role.For purposes of discussion, the role can be described below:
Role=PMembers+[Membership?Criteria]
Wherein, PMembers is potential member's (a plurality of) user, (a plurality of) group and/or other (a plurality of) role's (if any) the set in pond that form to obey this role of member's standard.For user that will become the role or process, they must belong to PMembers and satisfy member's standard.Member's standard can comprise one or more conditions.As an illustration, such condition can include, but are not limited to one or more (may be nested and mix) boolean, mathematics, function, relation and/or logical expression.As an illustration, consider following keeper (Administrator) role:
Administrator=Joe,Mary,SuperUser+CurrentTime>5:00pm
This role has as two users (Joe and Mary) of its potential member and belongs to the user of the user's group that is called power user (SuperUser).Member's standard comprises the current time condition after the 5:00 in the afternoon that needs.Therefore, if the user is Joe, Mary or belongs to SuperUser group that and current time in the afternoon after the 5:00, this user is the member of administrator role so.
In various embodiments, the role can be associated with (a plurality of) resource (Resource).As an illustration, resource can be any system and/or use assets (for example, VCR node and nodal community, VCR pattern and pattern attribute, operating-system resources, resources of virtual machine, J2EE application resource and any other can be used by certain software/firmware or as the entity of the part of certain software/firmware).In general, resource can be disposed in one or more levels so that set up father/subrelation (for example, VCR hierarchical name spaces and mode inheritance level).In some of these embodiment, that follows the role holds model (containment model), makes child resource inherit the role who is associated with their father.In addition, the child resource father role that can cover them with they self role.
In various embodiments, member's standard can be at least in part based on the attribute of node.For example, this allows such role, and described role can liken the information about user/process to the content among the VCR.In various embodiments, can use dot notation accessing nodal community able to programme: Article.Creator is founder (Creator) attribute of article (Article) node.As an illustration, suppose the Article node, its expression news article also comprises two attributes: founder and state (State).System's founder's attribute automatically is set to create the user's of this article name.Status attribute is indicated the current state (for example, this article is rough draft (Draft) or has gone through to announce) of this article from the position of announcing life cycle (publicationlifecycle).In this example, definition two roles (referring to table 2).
Role's title Relevant with what PMembers Member's standard
Submission person Article Article.Creator Article.State=Draft
The ratifier Article The editor Article.State=(having submitted to or approved)
Table 2: the exemplary role among the embodiment
Submission person is relevant with the article node with ratifier role.Content node according to this schema instanceization will be inherited these roles.If attempting to visit the user of this article is that the founder of article and the state of article are rough drafts, this user can be submission person role so.Equally, be to have submitted to or approved if the user belongs to the state of editor's group and article, this user can belong to ratifier role so.
In various embodiments, strategy (policy) can be used to determine that the main body (Subject) (for example, (a plurality of) user, (a plurality of) group and/or (a plurality of) role) of strategy can use what ability or the privilege (Privilege) of given resource.For purposes of discussion, strategy can be described below:
Policy=Resource+Privilege(s)+Subjects+[Policy?Criteria]
Policy mappings is such process, by it policy criteria (if any) evaluation is awarded the one or more privileges on the access resources to determine which main body.Policy criteria can comprise one or more conditions.As an illustration, such condition can include, but are not limited to one or more (may be nested or mix) boolean, mathematics, function, relation and/or logical expression.The aspect of some embodiment allows policy mappings just in time to take place before the visit decision that proposes resource.
With role class seemingly, in some of these embodiment, follow the model that holds of strategy, make child resource can inherit the strategy that is associated with their father.In addition, child resource can cover their parent policy with they self strategy.
In various embodiments, can control visit about the strategy of node to the privilege that is associated with node.As an illustration, given following strategy:
Policy1=Printer504+Read/View+Marketing
Policy2=Printer504+All+Engineering
Sell (Marketing) role and can read/check and browse Printer504 (printer 504) resource, can fully visit (" all (ALL) ") to it and design (Engineering) role.These privileges in table 3, have been summarized.Policy1 only allows to sell the attribute that user among the role checks Printer504, and Policy2 allows engineering role's user to check and revise its attribute, so that based on Printer504 (supposing that it is a pattern) content creating node, and deletes this resource.
The role Create Read/check Upgrade Deletion Browse
Sell x x
Engineering x x x x x
Table 3: the exemplary privilege of " Printer504 " node among the various embodiment
The aspect of some among these embodiment comprises the implicit level of privilege, if wherein strategy has been authorized the father privilege, authorizes the son privilege of father's privilege so automatically.For instance, the Browse privilege can be considered to the privilege of the advantage minimum of Printer504 node.The interpolation of any other privilege will impliedly comprise to be browsed.For example, if next step is to read/check ability, the selection of reading so/checking will impliedly comprise browses privilege.
In various embodiments, strategy and role's the model that holds is expanded strategy and the role who attaches to the inheritance of attribute node that allows node.Role/strategy about attribute also can cover heritable role/strategy.For purposes of illustration, suppose the following strategy of power supply (Power) attribute about Printer504:
Policy3=Printer504.Power+Update+Marketing
In Policy3, sell the role and be awarded the right (for example, control is opened and still turn-offed this printer) of upgrading the power attributes of printer resource Printer504.Acquiescently, also authorized according to implicit privilege hierarchy and read/checked attribute.(do not browse privilege for this attribute.) referring to table 4.As selection, if there is not implicit privilege hierarchy, so power attributes will from his father Printer504 inherit sell the role read/check privilege.Although do not have specified policy, can inherit the privilege that meets the engineering role from father node for power attributes and engineering role.These privileges in table 4, have been summed up.
The role Create Read/check Upgrade Deletion
Sell x x
Engineering x x x x
Table 4: the exemplary privilege of " power supply " attribute in " Printer504 " node
In various embodiments, can specially permit ability based on the schema instance node.This can be used to control the content which kind of type user or process can create.In order to illustrate, the strategy below supposing:
Policy4=Press_Release+Instantiate+Marketing,Manager
Policy4 regulation only can be by as the node of selling and/or user/process of the member of administrator role comes instantiation to create based on pattern communication original text (Press_Release).These embodiment some aspect in, these tactful knowledge of can using user interface limit available user and select (choice) (for example, the user should see and select them that it is had the pattern of instantiation (Instantiate) privilege).
In various embodiments, strategy can be placed on the pattern.The example of pattern (for example, content node) is unless can inherit these strategies by more local strategy covering.For purposes of illustration, suppose following strategy:
Policy5=Press_Release+Read/View+Everyone
Policy6=Press_Release+All+Public_Relation
The role Create example Read/check Upgrade Deletion Browse
Everyone x x
Public relation (Public Relation) x x x x x
Table 5: the exemplary privilege of " Press Release " pattern
With reference to Fig. 5 and as an illustration, suppose that the content node example is based on that Press Release pattern creates.Acquiescently, it will have and the identical role/strategy of Press Release pattern.If add a strategy to node with type ascribed role " Editor " privilege of new node more, this result can add so.In other words, everyone and public relation will keep their initial privilege.
In various embodiments, strategy can be placed on the attribute in the pattern, comprises that attribute selects.(it is one group of predetermined admissible value of given attribute that attribute is selected.For example, " color " attribute may have attribute selection " red ", " green " and " indigo plant ").The example of pattern (for example in content node) is unless covered by more local strategy inheriting these attribute strategies.
In various embodiments, content and pattern node can be deferred to following life cycle.In aspect some of these embodiment, life cycle can be explained: one group of state that node can pass through; As the part of state-transition and the action that takes place or take place owing to state-transition; With the actor that can participate in life cycle.As an illustration, life cycle can be used to imitate the content approval process of tissue.In various embodiments, life cycle can be nested in the life cycle.This allows to divide complicated life cycle so that easily handle and develop.Various embodiment comprise that life cycle defines, can expand the interactive life cycle design instrument of Life Cycle System, generation and/or the definition of modification life cycle and is used for life cycle and the parts of other system interaction.If content repository is not to support life cycle inherently, VCR can provide support so.
In various embodiments, life cycle can be associated with node or this attribute as node.In aspect these embodiment, if life cycle is associated with the level node, the son of this level node will also be associated with this life cycle so.Equally, if life cycle is associated with pattern, the node based on this schema instanceization will also be associated with this life cycle so.Life cycle also can directly be associated with content node.
In various embodiments and as an illustration, node can be converted to new state from current state.Before changing, during or afterwards, can carry out one or more actions.This node can be operated and/or utilize to action alternatively on this node.Action can comprise the processing of any kind that can call in the process of life cycle.As example, action can comprise function/method call, remote procedure call, interprocess communication, in-process communication, with hardware device interface, the Version Control that node checked in/detect, node is assigned to user, group or role, node is carried out certain handles (according to can be to any strategy of node definition), provides notice and other processing that is fit to user, group and/or role.Action can be defined as (a plurality of) order, (a plurality of) instruction, (a plurality of) expression formula or other can be explained or be shone upon discern the structure of required processing.For example, can be such as the high level active instruction of " announce (publish) " so that content node come forth, and make Email or other message be sent to certain party.It will be appreciated by those skilled in the art that: any action all drops within the scope of the present disclosure and the spirit.
In table 6 and Fig. 2, illustrate the exemplary life cycle of the content node of expression news article.The determination point that state is illustrated as in Fig. 2 between document icon (204,208,212,216) and the state is illustrated as circle (206,210,214).Transformation between the state is illustrated as line, and described line is oriented the order of show state.These embodiment some aspect in, the transformation between the state can be passed through one or more determination points.Determination point is visual placeholder (for example, the icon in the IDE graphic editor), is used to be restricted to (a plurality of) user, (a plurality of) group and (a plurality of) role's transformation; And be used to stipulate to follow (a plurality of) action of state variation, if any.Determination point can connection status at least one other state.Action can by the strategy that is associated with node and with the life cycle state be key assignments (for example, state can be the attribute of node) and/role controls, to allow some the class user/process privilege under the different conditions.
Current state Action The role NextState
Beginning Rough draft
Rough draft Submit to The founder Ready with issued for approval
Ready with issued for approval Accept The ratifier Announce
Ready with issued for approval Refusal The ratifier Rough draft
Announce Live in retirement Editor founder Live in retirement
Announce Upgrade The founder Rough draft
Table 6: the exemplary life cycle among the various embodiment
Exemplary life cycle among Fig. 2 is in initial state 202 beginnings, and this state is converted to NextState without restriction in life cycle, and promptly the rough draft state 204.Transformation can be not limited or be subject to (a plurality of) user, (a plurality of) group and/or (a plurality of) role's set.In aspect these embodiment, can give the user with role assigment by appointing (delegated) management.As example, the approval ability can be based on the ability in appointing administrative model.In one embodiment, restriction can be stipulated: have only some authorized users/process can make it to occur the transformation of NextState.In various embodiments, state-transition can be by by the mutual user of instrument and node and/or by VCR API and the mutual process initiation of node.In aspect some of these embodiment, the current state of node is the attribute of node.As example, revise status attribute (for example, it is changed over " rough draft " from " ", suppose that the user is authorized to do like this), can cause the generation of the life cycle processing followed, for example carry out action to this transformation qualification.
News article can be revised by (a plurality of) user and/or (a plurality of) process when being in the rough draft state, and is submitted then with issued for approval.As example, the user can detect news article (supposing that it is under Version Control), and it is made amendment, and checking in then, this has the article of variation.Before this article was checked in, the user can be made status attribute into " ready with issued for approval " from " rough draft " so that be drawn out to ready transformation with issued for approval 208 states.In order to further specify, user interface can present button or menu option, makes can to select the founder when the user has finished editor to article.Necessarily selected, article can be committed to the life cycle that it can advance to NextState automatically.In this diagram, be restricted to the user who is in founder role to ready transformation with the issued for approval state by determination point D1206.Therefore, it is ready with the issued for approval state to have only user/process of creating this article that this article is transformed into.
Also have the action of following from rough draft to ready transformation, that is, submit to issued for approval.For instance, this action can make notice be sent to checking article so that ratify interested people.Replacedly, or in addition, new article can be assigned to user/group/role.Therefore, its be in ready with the issued for approval state in, the user/process that is among specified user/group/role can be checked it.With the issued for approval state, there is transformation from ready by determination point D2 210.User/process that D2 determination point regulation is in ratifier role can cause to rough draft state 204 or to the transformation of publication status 212.If this transformation to the rough draft state, will be refusal this article with this transformation associated action so.Unaccepted article will repeat from rough draft to ready life cycle path with issued for approval.Yet, if this transformation to publication status, this action will be to accept this article so.In case this article is in publication status, the user/process that is in editor or founder role just can cause to the transformation of the state 216 of living in retirement.The user who is in founder role can cause to the transformation of rough draft state.Transformation from publication status to the rough draft state causes more new element, and the transformation from publication status to the state of living in retirement causes the action of living in retirement.
In aspect these embodiment, the role can be organized into role's level, make senior role can skip the rudimentary role's of needs state-transition.As an illustration, suppose that ratifier role is than founder's role hierarchy height.If the current life cycle state of article is a rough draft, the user who is in ratifier role so can skip and readyly be converted to publication status with the issued for approval state and with this article always.In one embodiment, even skipped readyly, also can call automatically and determination point D1 and D2 associated action with the issued for approval state.
In various embodiments and as an illustration, can use text editor and/or IDE to define life cycle.The user can (for example, XML) create the definition of complete life cycle with language according to text editor.In graphics environment, the user can create different states, they is linked together to change with expression then.In one embodiment, the graphic depiction of life cycle can be revealed as shown in Fig. 2 like that.The diagrammatic representation of state and judgement node can be placed to IDE painting canvas (canvas) and go up and be connected to form transformation.The role and the action that can allow user interactions ground regulation to be associated with Drawing Object associated attributes list (sheet) with state and/or transformation.In aspect these embodiment, the user can be easily switched between the figure of life cycle and text representation, because these two kinds of expressions are equal to.
In various embodiments, can call third party's life cycle engine.This allows additional function seamlessly to be merged in the life cycle model.In one embodiment, this can realize by lifecycle action from life cycle inside.In another embodiment, can call third party's life cycle by readjustment (callback) mechanism.As an illustration, for example be modified and/or its status attribute when having changed when content node/sight, VCR API can respond particular event and call third party's life cycle.In this explanation, when these incidents take place, realize that the process of third party's life cycle can be registered so that receive readjustment.Readjustment notice can also comprise the VCR node identifier and optionally comprise such as the such contextual information of information about user/process of causing this incident.
In various embodiments, can use life cycle from other process.VCR API comprises the life cycle interface of the life cycle definition that allows access node.In addition, the life cycle interface by provide such as the current state of determining node, based on according to current state can with transformation select to be placed on this node in the new state and to call the function such with the ability of state-transition associated action, allow the process drive node through life cycle.
Fig. 3 is the diagram of calling the exemplary external sight of life cycle in various embodiments.As shown in Figure 3, the user can create the visual representation of sight according to IDE.In this diagram, sight comprises starting point 302 icons, and then represents the client requests control icons 304 of the process of reception client requests thereafter.After receiving this request, this sight enters " while " circulation 306.In this circulation, the life cycle control icons 308 of expression VCR life cycle makes the life cycle that is associated be called.The life cycle control can have the identification life cycle with and will drive the association attributes of the node that passes through this life cycle.In aspect these embodiment, control can be Java TMControl.The life cycle control can use the life cycle interface drive node of VCR API to pass through life cycle.After this life cycle finishes, this sight call notification control 310, it can be so that the notice that life cycle finishes be sent to various user/processes.
The various embodiment of system comprise the Version Control ability that can be used for node, make the history of in the lifetime of node maintenance state.In various embodiments, node version that version is considered to announce.Aspect some of these embodiment, can give version name (or other identifier that is fit to) and can conduct interviews to it with its storage or by version list with particular sections spot correlation connection.In aspect these embodiment, do not provide support to versioned if node continues to be present in wherein storage vault, VCR can provide this support so.
In various embodiments, the version of node also can comprise sign and the description or the note of the user/process of this version of last change.In VCR, can move or duplicate the node that is under the Version Control.In various embodiments, between mobile or replicative phase, the history of version is advanced with node.When user or process mobile content node, the history of that node moves with it.Under the situation of returning (roll back), can in history, indicate father's version of returning.In various embodiments, the version of node can be return (that is, recovering) to previous versions.In aspect these embodiment, when returning, the selected content node version that will recover becomes the latest edition of content node.In aspect these embodiment, give the version of being return new version identifier (for example, old edition this shop+1) automatically.
Each node can have lock (for example, marker (semaphore) or be used to is controlled other mode that is fit to the visit of node).Lock prevents that more than one user/process from revising node simultaneously.When node was detected Version Control, the user obtained this lock.Lock obtains and prevents that other people from detecting the version that is associated with this node till it is checked in.Can on node rank or release level, use lock.If use the lock of release level, can detect the more than one version of node simultaneously.For given node, storage vault and/or VCR, can the On/Off Version Control.In one embodiment, do not utilize the node of Version Control in its version list, to have only single version.
Versioned comprises that user or process detect the node version so that editor's ability.As an illustration, the user can click the item (referring to Fig. 4 and appended text) in the tree-like browser view of VCR.In aspect these embodiment, user or process can select to detect which version of node.Tree-like browser can show (for example, by popup menu or ToolTips (tool tip)) following information for each version: preserve version number/identifier, last time the date of version, user/process of carrying out preservation last time and optional (a plurality of) note.In various embodiments, the user can select the version that will detect under the help such as the such user interface of tree-like browser, by alternatively browsing the vncsion history of specific node.In one embodiment, if there is not indicated release, then detect the nearest version of node acquiescently.
In one embodiment, user interface can provide presenting of nodal community.For example, the user can select ' content of edit ' button so that the attribute of editor's node.If also do not detected, then this action can attempt to detect this node.In various embodiments, given user's the node that has detected appears in user's the work space (referring to Fig. 4).The user can preserve their work till the time of checking in.In various embodiments, the node that is ' saved ' does not change version or causes version to increase.From other user's angle, this node remains and is detected.In case the user has finished editor, just any change can be dropped into or the VCR that checks in.
In case check in, in system, just the redaction of node can have been used.In various embodiments, the node that checks in makes node appear among the VCR rather than appears in user's the work space.At the time durations that checks in, user/process can be imported the description of the change that node is done.This description can be saved with this version.With node check in work space also make relevant lock be released (so that other people can edit) and, if open versioned, then create the redaction of node.Yet if the user only preserves their work rather than it is checked in, this node will be retained in the work space and will not produce new version so.In aspect these embodiment,, this node is checked in this node can be submitted to this life cycle so if life cycle is associated with node.
As an illustration and with reference to Fig. 2, the user who is in founder role can change to " ready with issued for approval " by the state with news article and subsequently it is checked in and submits news article to so that approval.In one embodiment, making can be used for the user to the drop-down list of the state of its designated state attribute.Can filter drop-down list based on user's the role and/or the stage of life cycle.After checking in, the work space that is in ratifier role's user upgrades so that this news article is shown as the item that is assigned to the user.In various embodiments, the ratifier also may receive the alarm (for example, Email, instant message, the page etc.) that this news article of indication can be used for checking.If the ratifier selects to edit this news article, this ratifier can detect it so.In case the ratifier obtains this lock, disappear in each ' specified item ' part of work space of other that this will be from ratifier role.
In various embodiments, user/process can navigate to node and carry out the deletion action.In one embodiment, deletion of node changes its state (for example, to live in retirement or delete).The user can see all deleted nodes and select permanent delet that they still unerase to them afterwards.In another embodiment, deletion of node is for good and all removed it from VCR.In one embodiment, not why and deletion of node the life cycle state of pipe node.In one embodiment, if node is detected, can not delete this node so.In one embodiment, it is deleted that deletion of node causes all sons of node.In one embodiment, the son that checks in of the quilt of a deletion of node.Still in another embodiment, deleted node (alternatively and its son) can be cancelled deletion.
Fig. 4 is the exemplary user interfaces in various embodiment of the present invention.For instance, user interface can comprise following one or more: 1) graphical user interface (GUI) (for example, presenting with HTML (Hypertext Markup Language)); 2) ability of response sound and/or voice command; 3) response is from the ability of the input of remote control equipment (for example, cell phone, PDA or other remote control that is fit to); 4) ability of response posture (for example, facial and other); 5) response is from the ability of the order of the process on identical or another computing equipment; With 6) response is from the ability of the input of computer mouse and/or keyboard.The disclosure is not limited to any particular user interface.Those skilled in the art will recognize that many other user interface embodiment are possible, and drop on fully within the scope of the present disclosure and the spirit.
Can comprise the tree-like browser of mutual figure as known in the art according to various embodiment and user interface as an illustration, VCR and their work space be explored (explore) and mutual with VCR and their work space to allow the user.Tree-like browser provides the hierarchical view of node and pattern.The indentation degree indication father/subrelation of node.In various embodiments, tree-like browser can provide one or more views of VCR.The node that these views can include, but is not limited to announce, unpub node, the node of having lived in retirement, deleted node, appointed node, blocked node and the node that waits for ratification.In aspect these embodiment, the user can be customized to this tree-like browser and comprise one or more in these views.These views can be rendered as the discrete tree or the tree of merging.In various embodiments, for specific (a plurality of) user custom views automatically.For example, can use role and/or the strategy of modifying node to filter this view.As an illustration, appointed view will only illustrate the node that is applicable to given user with the view that waits for ratification.In one embodiment, this can realize by the node of checking the life cycle that role and the given user of filtering can not be mutual with it in life cycle changes.
As an illustration, tree-like browser can appear VCR 400, that is, and and the associating root.It comprises two storage vaults (Neptune 402 and Pluto 412) and common layer minor node 426.In various embodiments, can decorate node so that indicate their purposes with relevant visible symbol with file.In aspect these specific embodiments, the selection of folder icon or level nodename makes the content of node expand below it in this tree.In aspect these embodiment further, the selection of the node of any kind can allow the user to edit the attribute of this node.In one embodiment, can be in VCR (comprise and being located immediately under the associating root (not shown)) defining mode Anywhere.In various embodiments, the pattern (for example, 428,430 and 434) that does not define in storage vault is considered to virtual.Neptune storage vault 402 comprises two storage vault nodes: communication original text 404 and old model 408.The communication original text comprises that name is called Japanese account (Japan Account) 406 content node, and its current locked (for example, being detected) is as indicated by the padlock icon that is close to its title.Have only the user who this node has been detected to edit it.Other people can see it according to role and/or authority selectivity.Old model level node comprises the pattern that current unblocked name is called account's pattern 410.In aspect these embodiment, can see the attribute of node by selecting node in the tree-like browser.If it is locked that selected node does not have, lock can representative of consumer be attempted to obtain automatically by system so.
The Pluto storage vault comprises pattern 414 and two top layer level nodes (416,418).One of level node, that is, 2003 p.m.entrys 416 have the file symbol of pure color (solid color), and another has the profile of file symbol 418.In one embodiment, special visible symbol (for example, pure color folder icon) can have pattern associated therewith and/or life cycle to user's marker minor node.In various embodiments, pattern and/or life cycle are associated with the level node cause pattern and/or life cycle being imposed to the son of this level node or inheriting by the son of this level node.2004 p.m.entry level nodes comprise the content node 422 and the blocked content node 424 of another level node 420, non-locking.
In various embodiments, user interface can provide logic working space file 436, and it provides new, that detected and the fast access appointed to the user.Appointed is those items that are assigned to one or more users, group and/or role according to life cycle or some other modes that is fit to.In this diagram, there are two nodes that are assigned to the user: Japanese account 444 and internal memo pattern 446.Different with current undetected internal memo pattern, because the appearance that Japanese account has padlock with its next door appears in the VCR tree, so the user has detected Japanese account nodes.Because office worker (staff) changing pattern 434 does not appear at their work space, so the user does not detect it (that is, another user or process detect it).In various embodiments, by selecting office worker's changing pattern 434, the user can find that who holds this lock and when they obtain it.
In various embodiments and as further illustration, can create new node.The new node of creating can appear in the user's who creates them the work space, till they come forth in VCR.Some aspect of these embodiment allows the user to create new node by user interface, and described user interface makes the user can select new node will reside in which VCR, storage vault or level node.The user can indicate whether should be new node and keep vncsion history and can add attribute or with the basis of pattern as its attribute to it.Also can stipulate the life cycle of new node.Can upgrade of the interpolation of tree-like browser with the reflection new node.
Fig. 5 is at the graphical representation of exemplary that storage vault is connected to operable object/interface among the VCR among the various embodiment.Although it logically is discrete that this figure depicts assembly as, such describes just for purposes of illustration.It will be apparent to those skilled in the art that the assembly of describing can be arbitrarily made with or be divided into discrete software, firmware and/or hardware in this figure.And, those skilled in the art also will very clear, such assembly, no matter how they are made up or cut apart, can on identical computing equipment, carry out, perhaps can be distributed on the various computing equipment that connects by one or more networks or other communication mode that is fit to.
From the viewpoint of application program 500, storage vault manager 502 can be as the expression of VCR.In aspect these embodiment, the storage vault manager is attempted (utilizing user or process voucher (credential) alternatively) all available repositories (for example 512-516) all is connected to VCR.In various embodiments, this can be based on Java TMAuthentication vs. authorization service (can obtain) from SUN Microsystems company.Person of skill in the art will appreciate that: under the situation that does not deviate from the scope of the present disclosure and spirit, many mandated programs all are possible.Each available content repository is represented by SPI storage vault object 506-510.The storage vault manager can call method of attachment (connect () method) on the storage vault object set.In various embodiments, the storage vault manager is back to application program with the tabulation of storage vault session object, and an object representation is attempted a connected storage vault.Can any mistake in the connection procedure be described by the session object state.In another embodiment, the storage vault manager can be connected to the particular memory bank of having given the thesaurus title.In various embodiments, the title of storage vault can be URI (a unified resource identifier).
Fig. 6 is the graphical representation of exemplary that can be used as the object/interface of service model in various embodiment of the present invention.Although it logically is discrete that this figure depicts assembly as, such describes just for purposes of illustration.It will be apparent to those skilled in the art that the assembly of describing can be arbitrarily made with or be divided into discrete software, firmware and/or hardware in this figure.And, those skilled in the art also will very clear, such assembly, no matter how they are made up or cut apart, can on identical computing equipment, carry out, perhaps can be distributed on the various computing equipment that connects by one or more networks or other communication mode that is fit to.
With reference to Fig. 6, the dotted arrow arrow can produce the object/interface of arrow points when moving from its object/interface that sends.Warrant (ticket) the 602nd, api class object/interface, it provides the visit to following VCR service object/interface: nodal operation (NodeOps) 604, work space operation (WorkspaceOps) 606 and search operation (SearchOps) 608.Each storage vault that is connected to VCR provides as some the realization in these object/interfaces of the part of SPI.Warrant 602 objects/interface means light weight (light-weight).Thereby, can visit application/process creation of VCR and may high-speed cache one or more for each.Warrant can utilize the voucher of user or process to come authorization service.In various embodiments, warrant can be the accessing points of nodal operation 604, work space operation 606 and search operation 608.
In order to illustrate, storage vault 622 provides nodal operation 610, work space operation 612 and search operation 614.Storage vault 624 provides nodal operation 616, work space operation 618 and search operation 620.Api class object/interface and their corresponding SPI level object/interface communications.Like this, can be to the operation of api class object by each storage vault of dispensing, make each storage vault can concurrent working so that carry out institute's requested operation.Therefore, may spend averaging time M*N and come may only need time M to operating in theory of carrying out successively of all storage vaults, wherein N is the number of storage vault among the VCR.
Nodal operation 604 provides the node among the VCR and the CRUD method of nodal community.In aspect these embodiment, can come running node and attribute based on the path among identifier, the VCR or by any relative or absolute reference that other is fit to.When API nodal operation 604 received the request of carrying out action, it can be mapped to request one or more SPI nodal operations (610,616), itself so that use their associated repository to realize this request.Like this, utilize the application of this API and storehouse to see single VCR rather than each content repository.The nodal operation function that is emerging among the API can comprise following:
Upgrade the definition of the attribute and the attribute of given node.
Given node is copied to new position in the given level together with all its younger generations (descendant)
Put.
Under given father, create the fresh content node.
Under given father, create new level node.
Given node is executed the folded deletion of holostrome (full cascade delete).
Retrieval all nodes in the path of the given node that comprises himself.
Retrieve content node of given father node.
Retrieve level node of given father node.
ID retrieval based on node is retrieved it.
Route search based on node is retrieved it.
Retrieve the child node of given level node.
Retrieve the father node of given level node.
All nodes that retrieval has given title.
Retrieve the binary data of given node and attribute-bit (id).
Node is moved to reposition in this level together with all its younger generations.
Its all younger generation paths of given node of rename and rename impliedly.
Obtain to be used to iterative program (iterator) object of iteration on level.
In various embodiments, work space operation 606 appears the service that is used for versioned, comprises the node that checks in/detect, node/attribute locking, access node vncsion history, life cycle manipulation, labels and the service of operation (job).When the request of carrying out action was received in API work space operation 606, it can be mapped to this request one or more SPI work space operations (612,618), and itself and then the storage vault that uses their to be correlated with are realized this request.The work space operating function that appears in API can comprise:
Check in: preserve together with its working version with the node release and with node.
Detect: latch node makes to have only its user/process of locking just can or check in and create new working version its preservation.
Duplicate: recursively the source node of being announced is copied to the destination.
Create: create new node and also have its working version (if being attached to this node).
Deletion: deletion has the node version of given version.
Obtain: obtain the node on given path.
Obtain version: all versions that return given dummy node.
Preserve: the working version (if be attached to this node, it is the current version of node) of preserving node and node.
Submit to: node is submitted to its life cycle.
In various embodiments, search operation 608 is provided for retrieving the search service of node, attribute and/or property value on whole VCR based on one or more search expression formulas.When API search operation 608 was received the request of carrying out action, it can be mapped to this request one or more SPI search operations (614,620), and itself and then the storage vault that uses their to be correlated with are realized this request.API search operation 608 will make up from the Search Results of each SPI search operation in the result set.In various embodiments, can refine (refine) result set by the item in the result set is carried out further search.
The search expression formula can include, but is not limited to one or more logical expressions, Boolean operator, nested expression formula, variable, identifier nodename, function/method call, Remote Procedure Call, mathematical function, mathematical operator, string operator, image operator (image operator) and Structured Query Language (SQL) (SQL).The search expression formula can also comprise the support to natural language querying, keyword search, fuzzy logic, approximate (proximity) expression formula, Wildcard Expressions and range finding (ranging) search-type.In various embodiments, can repair (tailor) result set according to role/strategy that the item that satisfies the search expression formula is worked.At searching period or after having collected the result, can filter user/process do not watch those of authority
In aspect these embodiment, can Search Results be defined the level according to deciding grade and level (ranking) algorithm and criterion.In one embodiment, the deciding grade and level algorithm can satisfy the search expression formula according to the project in the result set and to which kind of degree result set defined the level.It will be apparent to those skilled in the art that many other deciding grade and level algorithms are possible and drop on fully within the scope of the present disclosure and the spirit.In various embodiments, can apply a plurality of deciding grade and level algorithms to result set.In one embodiment, can adjust accurate survey of deciding grade and level of given deciding grade and level algorithm by user/process.
In various embodiments, operation provides the ability of set of node being carried out the VCR operation.In order to illustrate, operation can be used to check in and detect as the set of node of organizing, and perhaps groups of nodes is sent together and passes through life cycle.In aspect embodiment, job identifier and/or label can be associated with node so that indicate it to be included in operations specific and/or the tally set.In one embodiment, ready with issued for approval if operation becomes, then all nodes in the operation all will reach this state.In various embodiments, label can be used to storage vault or groups of nodes marking.In order to illustrate, this provides quotes (refer to) and has the method for the set of node of different editions.In order to further specify, label can be used in the search expression formula.
In various embodiments, can foreign format derive the information among (export) VCR.In aspect these embodiment, foreign format can be language/expression (for example, HTML, natural language, binary file) that the another kind of the XML hierarchy that maybe can keep information is fit to.The derivation of all or some VCR nodes allows " transient state (snapshot) " of VCR, so that backup VCR, the information among the VCR is transported to another storage vault and this node of the heavy duty of date afterwards.In various embodiments, will derive node and all sons thereof by the derivation process.As example,, will derive whole VCR so if select to derive the associating root.As further example, the derivation process can recursively travel through VCR (for example, the traversal of depth-first or breadth-first), the information serialization that will be associated with accessed each node (for example, content, layering and pattern node).The aspect of these embodiment has " preview " pattern, and report therein will be exported what information (for example, node, life cycle, role, strategy).
In various embodiments, the importing process can be carried out the work opposite with the derivation process by unstringing each node (and out of Memory) and it is added into suitable place in the VCR name space.In another embodiment, importing process can be placed in node under the selected node rather than be placed in their original position.The same with the derivation process, the aspect of these embodiment has " preview " pattern, and report therein will import what information (for example, node, life cycle, role, strategy).Except nodal community, various embodiment allow to derive and importing is associated with content and pattern node vncsion history, role and/or strategy.
Fig. 7 is the graphical representation of exemplary at forbidding content creating during content service according to various embodiments of the present invention.Although it logically is discrete that this figure depicts assembly as, such describes just for purposes of illustration.It will be apparent to those skilled in the art that the assembly of describing can be arbitrarily made with or be divided into discrete software, firmware and/or hardware in this figure.And, those skilled in the art also will very clear, such assembly, no matter how they are made up or cut apart, can on identical computing equipment, carry out, perhaps can be distributed on the various computing equipment that connects by one or more networks or other communication mode that is fit to.
Fig. 7 illustrates the VCR 700 of storage vault (714,716) with two integration and third party's Content Management System 718 of integrating.Although do not draw, each subsystem (714-718) can realize allowing it to arrive the SPI of the integration of VCR.The content service that provides by VCR also is provided, comprises user workspace management 706, contents versionization 708 and life cycle management 710.Except associating, VCR provides one or more its content services to the subsystem that does not have these services.As an illustration, if storage vault Repol itself does not support versioned, VCR can provide this service for the node in that storage vault automatically so.
Square frame 702 expressions can be used for creating, revising and delete one or more Content Management instruments of the information among the VCR.These instruments can utilize the content service of VCR.Square frame 704 expression can be operated and need not one or more instruments of content service storage vault.As example, these can comprise in batch, and (bulk) content is loaded program, content search instrument and content-label.Content manager API assembly 712 can be used to manage mutual between VCR and its integron system.
Fig. 7 is shown in the establishment of the content node under the situation of the content service that does not enable VCR.Square frame 720 expression is arranged in VCR's/and storage vault 1 (Repo1)/financial plan be the place and be stored in the content node of the financial plan by name (FiscaPlan) of storage vault Repo1.This node also has the default system attribute, for example, and by whose establishment, date created, node state and node type.Node type is the pattern that is called as the financial plan type, and it has attribute fiscal year (Fiscal Year) and classification (Category).In this example, these attributes have been set as 2003 and " finance (Finance) " respectively.Be also noted that node state is " announcing ".
Fig. 8 is the graphical representation of exemplary of content creating when enabling content service according to various embodiments of the present invention.Example class among this example and Fig. 7 seemingly, just content service enables in VCR.But be to use Content Management instrument (it utilizes content service) to create identical content node/thesaurus 1/ financial plan.As before, this system content creating item in comprising the Repo1 of system property at first.Yet, being stored in VCR as the first version of node the attribute of mode-definition rather than being stored among the Repo1, this is because Repo1 does not have the versioned ability.Except version number, node comprises that also instructs node is in the life cycle state of which life cycle state now.In this example, the life cycle state of node is " rough draft ".This system also can provide visit to this node for the Subscriber Locked version 1 of creating version 1 and the work space by that user.When the user checks in this node, it is submitted to its life cycle (if any).
Fig. 9 is a graphical representation of exemplary of revising the node among the VCR when enabling content service according to various embodiments of the present invention.This figure follows the discussion of above Fig. 8.In this diagram, the user detects node/storage vault 1/ financial plan, and it has such effect: create redaction (version 2) in VCR, lock redaction and it is assigned to this user.Here, the user changes over life cycle state " ready with issued for approval ".When checking in this node, the attribute of its mode-definition is saved as version 2.In addition, this system discharges this lock, and this node is submitted to its life cycle.As an illustration, this is may must play a part such, and soon this node is placed in given role's (for example, publisher role) user's the work space.
When enabling content service, announce the graphical representation of exemplary of the node among the VCR during Figure 10 according to an embodiment of the invention.This figure follows the discussion of Fig. 9.In this diagram, the user detects node/storage vault 1/ financial plan once more, and it has such effect: create redaction (version 3) in VCR, lock redaction and it is assigned to this user.Here, the user changes over life cycle state " announcing ".When checking in this node, the attribute of this mode-definition is saved as version 3.In addition, this system is this node release, and attribute from its mode-definition of version 3 to storage vault 1 and the node type announced from.
Figure 11 is the graphical representation of exemplary of the node of living in retirement when enabling content service according to various embodiments of the present invention.Follow Figure 10, the user detects node/storage vault 1/ financial plan once more, and it has such effect: eliminate to announce (de-publish) it, in VCR, create redaction (edition 4), locking redaction and it be assigned to this user.Here, the user changes over life cycle state " living in retirement ".When to returning when checking in this node, in VCR, the attribute of this mode-definition saved as edition 4 and with this node release.In addition, attribute and its node type of the mode-definition of the node that (that is, eliminate and announce) found removed by this system in storage vault 1.
Those technician in the computer realm will be very clear, according to instruction of the present disclosure, can use traditional universal or special digital machine or the microprocessor that is programmed is realized various embodiment.Those technician of software field will be very clear, based on instruction of the present disclosure, can be write by the software code that skilled programmer easily prepares to be fit to.Those skilled in the art will understand easily, also can realize the present invention by prepared integrated circuit or by the network that is fit to of traditional assembly circuit that interconnects.
Various embodiment comprise the computer program as storage medium (media), and it has storage can be used to computing equipment programming to carry out the instruction of any feature given herein/wherein thereon.Storage medium can comprise the physical media of (but being not limited to) any kind, and described physical media comprises the media or the equipment of any kind of floppy disk, CD, DVD, CD-ROM, microdrive, magneto-optic disk, ROM, RAM, EPROM, EEPROM, DRAM, VRAM, flash memory, magnetic or light-card, nanosystems (comprising molecular memory IC) or suitable storage instruction and/or data.Various embodiment comprise computer program, and it can transmit by one or more public and/or private networks, and wherein this transmission comprises and can be used for to the computing equipment programming to carry out the instruction of any feature given herein.
The present invention includes the software that is stored on any one computer-readable medium (media), it is used to control general/specialized computer or microprocessor, and is used to make computing machine or microprocessor and human user or utilizes other mechanism of result of the present invention mutual.Such software can include, but is not limited to device driver, operating system, execution environments/containers and application.
The aforementioned description of the preferred embodiments of the present invention is provided for the purpose of illustration and description.Do not plan limit or the present invention is limited to disclosed precise forms.The technology practitioner of this area will know many modifications and variations very much.Select also to describe embodiment so that explain the present invention's ground principle and its practical application best, thus make this area other technician understand the present invention, various embodiment and be suitable for the various modifications of desired specific use.Be intended to make scope of the present invention to limit by following claim and their equivalent.
Priority request
The application requires the right of priority of following application, and therefore whole the quoting by them merges them, and these applications are:
The U.S. Provisional Application the 60/561st that on April 13rd, 2004 submitted to, No. 819, name is called SYSTEMAND METHOD FOR VIRTUAL CONTENT REPOSITORY DEPLOYMENT, and the invention people is people's (attorney docket: BEAS-01550US0) such as Rodney McCauley;
The U. S. application the 10/915th that on August 10th, 2004 submitted to, No. 194, name is called SYSTEM ANDMETHOD FOR VIRTUAL CONTENT REPOSITORY DEPLOYMENT, and the invention people is people's (attorney docket: BEAS-10550US1) such as Rodney McCauley;
The U.S. Provisional Application No.60/561 that on April 13rd, 2004 submitted to, No. 780, name is called SYSTEM AND METHOD FOR CONTENT VERSIONING, and the invention people is people's (attorney docket: BEAS-01533US0) such as RodneyMcCauley;
No. the 10/910th, 233, the U. S. application of submitting on November 1st, 2004, name is called SYSTEM ANDMETHOD FOR CONTENT VERSIONTNG, and the invention people is people's (attorney docket: BEAS-01533US1) such as Rodney McCauley;
No. the 60/561st, 796, the U.S. Provisional Application of submitting on April 13rd, 2004, name is called SYSTEMAND METHOD FOR CONTENT LIFECYCLES, and the invention people is people's (attorney docket: BEAS-01534US0) such as Rodney McCauley;
No. the 10/911st, 099, the U. S. application of submitting on August 4th, 2004, name is called SYSTEM ANDMETHOD FOR CONTENT LIFECYCLES, and the invention people is people's (attorney docket: BEAS-01534US1) such as Rodney McCauley;
No. the 60/561st, 783, the U.S. Provisional Application of submitting on April 13rd, 2004, name is called SYSTEMAND METHOD FOR CONTENT AND SCHEMA VERSIONG, and the invention people is people's (attorney docket: BEAS-01535US0) such as Rodney McCauley;
No. the 10/915th, 033, the U. S. application of submitting on August 10th, 2004, name is called SYSTEM ANDMETHOD FOR CONTENT AND SCHEMA VERSIONING, and the invention people is people's (attorney docket: BEAS-01535US1) such as RodneyMcCauley;
The U.S. Provisional Patent Application the 60/561st that on April 13rd, 2004 submitted to, No. 785, name is called SYSTEM AND METHOD FOR CONTENT AND SCHEMA LIFECYCLES, and the invention people is people's (attorney docket: BEAS-01536US0) such as Rodney McCauley;
The U.S. Patent application the 10/911st that on November 1st, 2004 submitted to, No. 287, name is called SYSTEMAND METHOD FOR CONTENT AND SCHEMA LIFECYCLES, and the invention people is people's (attorney docket: BEAS-01536US1) such as Rodney McCauley;
The U.S. Provisional Patent Application the 60/561st that on April 13rd, 2004 submitted to, No. 778, name is called SYSTEM AND METHOD FOR VIRTUAL CONTENT REPOSITORYENTITLEMENTS, and the invention people is people's (attorney docket: BEAS--01551US0) such as Rodney McCauley;
The U.S. Patent application the 10/915th that on August 10th, 2004 submitted to, No. 008, name is called SYSTEMAND METHOD FOR VIRTUAL CONTENT REPOSITORY ENTITLEMENTS, and the invention people is people's (attorney docket: BEAS-01551US1) such as Rodney McCauley;
No. the 60/561st, 648, the U.S. Provisional Patent Application of submitting on April 13rd, 2004, name is called SYSTEM AND METHOD FOR CONTENT TYPE MANAGEMENT, and the invention people is people's (attorney docket: BEAS-01552US0) such as Rodney McCauley;
No. the 10/915th, 013, the U.S. Patent application of submitting on August 10th, 2004, name is called SYSTEMAND METHOD FOR CONTENT TYPE MANAGEMENT, and the invention people is people's (attorney docket: BEAS-01552US1) such as RodneyMcCauley;
The U.S. Provisional Patent Application the 60/561st that on April 13rd, 2004 submitted to, No. 782, name is called SYSTEM AND METHOD FOR CUSTOM CONTENT LIFECYCLES, and the invention people is people's (attorney docket: BEAS-01553US0) such as Rodney McCauley;
No. the 10/915th, 505, the U.S. Patent application of submitting on August 10th, 2004, name is called SYSTEMAND METHOD FOR CUSTOM CONTENT LIFECYCLES, and the invention people is people's (attorney docket: BEAS-01553US1) such as RodneyMcCauley;
No. the 60/561st, 759, the U.S. Provisional Patent Application of submitting on April 13rd, 2004, name is called SYSTEM AND METHOD FOR CONTENT TYPE VERSIONS, and the invention people is people's (attorney docket: BEAS-01554US0) such as Rodney McCauley;
No. the 10/915th, 057, the U.S. Patent application of submitting on August 10th, 2004, name is called SYSTEMAND METHOD FOR CONTEN ' T TYPE VERSIONS, and the invention people is people's (attorney docket: BEAS-01554US1) such as RodneyMcCauley;
The U.S. Provisional Patent Application the 60/561st that on April 13rd, 2004 submitted to, No. 646, name is called SYSTEM AND METHOD FOR INFORMATION LIFECYCLE WORKFLOWINTEGRATION, and the invention people is people's (attorney docket: BEAS-01555US0) such as Rodney McCauley;
The U.S. Patent application the 10/915th that on August 10th, 2004 submitted to, No. 506, name is called SYSTEMAND METHOD FOR INFORMATION LIFECYCLE WORKFLOWINTEGRATION, and the invention people is people's (attorney docket: BEAS-01555US1) such as Rodney McCauley;
The U.S. Provisional Patent Application the 60/561st that on April 13rd, 2004 submitted to, No. 818, name is called SYSTEM AND METHOD FOR SEARCHING A VIRTUAL CONTENTREPOSITORY, and the invention people is people's (attorney docket: BEAS--01565US0) such as Rodney McCauley;
The U.S. Patent application the 10/915th that on August 10th, 2004 submitted to, No. 504, name is called SYSTEMAND METHOD FOR SEARCHING A VIRTUAL CONTENT REPOSITORY, and the invention people is people's (attorney docket: BEAS-01565US1) such as Rodney McCauley; And
The U.S. Patent application the 10/915th that on August 10th, 2004 submitted to, No. 521, name is called SYSTEMAND METHOD FOR PROVIDING CONTENT SERVICES TO AREPOSITORY, and the invention people is people's (attorney docket: BEAS--01729US0) such as Rodney McCauley.

Claims (23)

1. the storage vault in a plurality of storage vaults provides the method for one or more content services, and described method comprises:
By realizing and ISP's interface of virtual content repository VCR compatibility, a plurality of storage vaults are incorporated among the VCR;
The logical name space of a plurality of storage vaults is contained in establishment;
Provide one or more content services to storage vault;
Wherein one or more content services comprise at least one in versioned ability and the life cycle ability;
At least one in repository stores content information and the pattern information wherein; And
Wherein can be by containing the logical name space access content and the pattern information of a plurality of storage vaults.
2. the method for claim 1 also comprises:
Safeguard the vncsion history of storage vault so that follow the tracks of at least one the change in content information and the pattern information.
3. method as claimed in claim 2, wherein:
Can return vncsion history.
4. the method for claim 1 also comprises:
Definition changes content information by one group of state according to life cycle.
5. the method for claim 1, wherein:
Name space is layering.
6. the storage vault in a plurality of storage vaults provides the system of one or more content services, and described system comprises:
Virtual content repository VCR, it comprises one or more content services;
By realizing that ISP's interface with the VCR compatibility is integrated into a plurality of storage vaults among the VCR;
The logical name space that can contain a plurality of storage vaults;
Wherein can provide one or more content services to storage vault by content manager;
Wherein one or more content services comprise at least one in versioned ability and the life cycle ability;
At least one in repository stores content information and the pattern information wherein; And
Wherein can be by containing the logical name space access content and the pattern information of a plurality of storage vaults.
7. system as claimed in claim 6 also comprises:
The vncsion history in storehouse can be followed the tracks of at least one the change in content information and the pattern information.
8. system as claimed in claim 7, wherein:
Can return vncsion history.
9. system as claimed in claim 6 also comprises:
The life cycle definition can change content information by one group of state.
10. system as claimed in claim 6, wherein:
Name space is layering.
11. one kind is carried out method of operating to the virtual content repository VCR that represents a plurality of content repositories, comprising:
Create node, wherein node has the identifier of the position of this node of indication in described VCR;
This node is associated with in attribute and the pattern at least one;
This node is stored among the described VCR, and
Wherein said this node is stored in will cause described at least one attribute and/or pattern to be stored among of described a plurality of content repositories among the described VCR.
12. method as claimed in claim 11, wherein:
Described attribute is the association between a title and the minimum value.
13. method as claimed in claim 12, wherein:
Described at least one value can be text string, numeral, image, audio/video presents or binary data.
14. method as claimed in claim 11, wherein:
In a plurality of content repositories each realizes ISP's interface SPI, and this SPI comprises makes this content repository can be incorporated into first group of service among the VCR.
15. method as claimed in claim 11, wherein:
Pattern comprises at least one attribute definition.
16. method as claimed in claim 11, wherein:
Node can be relevant with other node among the VCR by level.
17. one kind is carried out method of operating to virtual content repository VCR, wherein VCR has node and wherein said node is associated with information, and described method comprises:
Obtain described node, wherein said node has the identifier of the unique position of indication in described VCR;
To described node executable operations, wherein said operation is in following: delete described node; Change the position of described node in VCR; Read described information; And upgrade described information;
Wherein VCR represents a plurality of content repositories; And
Wherein said information comprises at least one in following: attribute; And pattern.
18. method as claimed in claim 17, wherein:
Attribute is the association between a title and the minimum value.
19. method as claimed in claim 17, wherein:
In a plurality of content repositories each realizes ISP's interface SPI, and this SPI comprises makes this content repository can be incorporated into first group of service among the VCR.
20. a method that is used for a plurality of content repositories are incorporated into virtual content repository VCR comprises:
In described a plurality of content repositories each provides credential information;
From described a plurality of content repositories each receives authorization message, and wherein whether this authorization message authorization by direction process is successful;
Indicate successfully each of authorizing to be incorporated among the VCR its authorization message in described a plurality of content repositories; And
In wherein said a plurality of content repository each realizes ISP's interface SPI, and this SPI comprises makes this content repository can be incorporated into first group of service among the VCR.
21. method as claimed in claim 20, wherein:
This credential information is accepted in described first group of service.
22. method as claimed in claim 20, wherein:
Described first group of service provides this authorization message.
23. method as claimed in claim 20, wherein:
In described a plurality of content repository each realizes application programming interfaces API, this API comprise with this content repository of realization in second group of relevant service of model of information; And
Wherein this model and VCR content model compatibility.
CN2005800111751A 2004-04-13 2005-04-13 System and method for a virtual content repository Active CN101416148B (en)

Applications Claiming Priority (38)

Application Number Priority Date Filing Date Title
US56181804P 2004-04-13 2004-04-13
US56178204P 2004-04-13 2004-04-13
US56177804P 2004-04-13 2004-04-13
US56164704P 2004-04-13 2004-04-13
US56164604P 2004-04-13 2004-04-13
US56179904P 2004-04-13 2004-04-13
US56164804P 2004-04-13 2004-04-13
US56178304P 2004-04-13 2004-04-13
US56181904P 2004-04-13 2004-04-13
US56175904P 2004-04-13 2004-04-13
US60/561,783 2004-04-13
US60/561,818 2004-04-13
US60/561,796 2004-04-13
US60/561,799 2004-04-13
US60/561,785 2004-04-13
US60/561,648 2004-04-13
US60/561,646 2004-04-13
US60/561,782 2004-04-13
US60/561,647 2004-04-13
US60/561,780 2004-04-13
US60/561,778 2004-04-13
US60/561,819 2004-04-13
US60/561,759 2004-04-13
US10/911,099 2004-08-04
US10/915,032 2004-08-10
US10/915,008 2004-08-10
US10/915,506 2004-08-10
US10/915,521 2004-08-10
US10/915,013 2004-08-10
US10/915,194 2004-08-10
US10/915,504 2004-08-10
US10/915,057 2004-08-10
US10/915,505 2004-08-10
US10/915,033 2004-08-10
US10/910,233 2004-11-01
US10/911,203 2004-11-01
US10/911,287 2004-11-01
PCT/US2005/012509 WO2005101191A2 (en) 2004-04-13 2005-04-13 System and method for a virtual content repository

Publications (2)

Publication Number Publication Date
CN101416148A CN101416148A (en) 2009-04-22
CN101416148B true CN101416148B (en) 2011-08-24

Family

ID=40595631

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800111751A Active CN101416148B (en) 2004-04-13 2005-04-13 System and method for a virtual content repository

Country Status (1)

Country Link
CN (1) CN101416148B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519647B1 (en) * 1999-07-23 2003-02-11 Microsoft Corporation Methods and apparatus for synchronizing access control in a web server
CN1450551A (en) * 2002-04-11 2003-10-22 三星电子株式会社 Reproducing apparatus of recording medium stored compressed data and control method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6519647B1 (en) * 1999-07-23 2003-02-11 Microsoft Corporation Methods and apparatus for synchronizing access control in a web server
CN1450551A (en) * 2002-04-11 2003-10-22 三星电子株式会社 Reproducing apparatus of recording medium stored compressed data and control method thereof

Also Published As

Publication number Publication date
CN101416148A (en) 2009-04-22

Similar Documents

Publication Publication Date Title
US6675299B2 (en) Method and apparatus for document management utilizing a messaging system
CN101084494B (en) Method and device for managing workflow in computer environment
US7673282B2 (en) Enterprise information unification
AU2013205927B2 (en) Methodology infrastructure and delivery vehicle
US20040093559A1 (en) Web client for viewing and interrogating enterprise data semantically
Christodoulou et al. Evaluation of hypermedia application development and management systems
US20060041558A1 (en) System and method for content versioning
US20040098269A1 (en) Method, system and apparatus for creating and accessing a hierarchical database in a format optimally suited to real estate listings
US20030227487A1 (en) Method and apparatus for creating and accessing associative data structures under a shared model of categories, rules, triggers and data relationship permissions
US20060253478A1 (en) Client centric document preparation interface
US20020118222A1 (en) Electronic design record book
US20110246535A1 (en) Apparatus and Method for Constructing Data Applications in an Unstructured Data Environment
US7240076B2 (en) System and method for providing a lifecycle for information in a virtual content repository
US8135697B2 (en) Search-friendly templates
US20050251506A1 (en) System and method for providing content services to a repository
US7236990B2 (en) System and method for information lifecycle workflow integration
US20050251502A1 (en) System and method for virtual content repository entitlements
US20050234849A1 (en) System and method for content lifecycles
US7475091B2 (en) System and method for viewing a virtual content repository
Ceri et al. Designing multi-role, collaborative Web sites with WebML: a conference management system case study
CN101416148B (en) System and method for a virtual content repository
US7236989B2 (en) System and method for providing lifecycles for custom content in a virtual content repository
US20050251503A1 (en) System and method for content and schema versioning
US20050228784A1 (en) System and method for batch operations in a virtual content repository
US20060028252A1 (en) System and method for content type management

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: ORACLE INT CORP

Free format text: FORMER OWNER: BEA SYSTEMS CORP.

Effective date: 20110415

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

Effective date of registration: 20110415

Address after: American California

Applicant after: Oracle Int Corp

Address before: American California

Applicant before: Bea Systems Corp.

C14 Grant of patent or utility model
GR01 Patent grant