Managing compound XML documents in a repository
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-017/00
G06F-017/30
G06F-017/22
출원번호
US-0807939
(2007-05-29)
등록번호
US-9183321
(2015-11-10)
발명자
/ 주소
Murthy, Ravi
출원인 / 주소
Oracle International Corporation
대리인 / 주소
Hickman Palermo Becker Bingham LLP
인용정보
피인용 횟수 :
4인용 특허 :
127
초록▼
A declarative mechanism is used to manage large documents within a repository. The large documents are sectioned into subdocuments that are linked together by a parent document. The combination of the parent document and subdocument is referred to as a compound document. There are multiple options f
A declarative mechanism is used to manage large documents within a repository. The large documents are sectioned into subdocuments that are linked together by a parent document. The combination of the parent document and subdocument is referred to as a compound document. There are multiple options for configuring rules to break up a source document into a compound document and naming the subdocuments. The compound documents may be queried using statements that treat the compound document as a single XML document, or the parent document of a subdocument may be queried and treated independently. Access control and versioning can be applied at the finer granularity of the subdocument.
대표청구항▼
1. A computer-implemented method comprising, storing, within a repository, a plurality of compound documents, each compound document of the plurality of compound documents including: a parent document,a plurality of subdocuments of said parent document;wherein the parent document includes, for each
1. A computer-implemented method comprising, storing, within a repository, a plurality of compound documents, each compound document of the plurality of compound documents including: a parent document,a plurality of subdocuments of said parent document;wherein the parent document includes, for each subdocument of the plurality of subdocuments, a link to said each subdocument;storing, in association with a first compound document of the plurality of compound documents, a first compound document declaration that declares a first type of link;storing, in association with a second compound document of the plurality of compound documents, a second compound document declaration that declares a second type of link that is different than the first type of link;wherein the first type of link is one of a hard link, a weak link, or a symbolic link;wherein the second type of link is another one of the hard link, the weak link, or the symbolic link;wherein the hard link is a link such that a first subdocument that is a target of the hard link cannot be deleted from the repository as long as the hard link is included in a first parent document, wherein the hard link is uniquely associated with the first subdocument, and wherein the hard link between a first parent document and the first subdocument is preserved if the first subdocument is moved to another location within the repository;wherein the weak link is a link such that a second subdocument that is a target of the weak link is uniquely associated with the weak link and can be deleted from the repository even while a second parent document includes the weak link to the second subdocument;wherein the symbolic link is a link such that a third parent document that includes the symbolic link is no longer linked to a third subdocument that is a target of the symbolic link if the third subdocument is moved to a different location in the repository, wherein the symbolic link is not uniquely associated with the third subdocument;wherein the method is performed by one or more computing devices. 2. The computer-implemented method of claim 1, further comprising: receiving a statement that requires that a particular operation be performed on content stored within a certain subdocument of said plurality of subdocuments; andbased on one or more compound document declarations that are stored separate from the plurality of compound documents, making a determination that said particular operation is not permitted. 3. The computer-implemented method of claim 2, wherein: one of the one or more compound document declarations specifies an error message; andthe method further comprising displaying said error message in response to making said determination. 4. The computer-implemented method of claim 1, further comprising: receiving a statement that requires that a particular operation be performed on content stored within a first subdocument of said plurality of subdocuments and a second subdocument of said plurality of subdocuments; andbased on one or more compound document declarations that are stored separate from the plurality of compound documents, making a determination that said particular operation is not permitted for the first subdocument and not permitted for the second subdocument. 5. The method of claim 1, further comprising: storing, in association with a third compound document of the plurality of compound documents, a third compound document declaration that declares a third type of link that is different than the first type of link and the second type of link;wherein the third type of link is another one of the hard link, the weak link, or the symbolic link. 6. The method of claim 1, further comprising storing within a certain link of a certain parent document, a resource path to a certain subdocument, wherein said certain link is either the hard link or the weak link. 7. The method of claim 1, further comprising: creating an expanded view of a particular compound document of the plurality of compound documents, wherein a link to a particular subdocument is replaced with content imported from said subdocument into the expanded view of the particular compound document;receiving an update to the expanded view of the compound document, wherein applying the update changes content imported from said particular subdocument; andautomatically applying changes corresponding to said update to said particular subdocument that is stored separately from the expanded view of the particular compound document. 8. The method of claim 1, further comprising: in response to receiving a first source document, automatically: creating a particular parent document based on the first source document,identifying multiple elements within the first source document,creating a first plurality of subdocuments that are separate from the particular parent document and the first source document,for each element of the multiple elements: storing said each element in a different subdocument of the first plurality of subdocuments;creating and storing, in the particular parent document, a link to the different subdocument,storing data that identifies the particular parent document and the first plurality of subdocuments as a particular compound document;wherein identifying the multiple elements comprises using an XML schema associated with the first source document to identify the multiple elements. 9. A computer-implemented method, comprising steps of: within a repository, storing: a first compound document that includes a first parent document that links to a first plurality of subdocuments that includes a first subdocument that corresponds to a first plurality of versions,a second compound document that includes a second parent document that links to a second plurality of subdocuments that includes a second subdocument that corresponds to a second plurality of versions,a first compound declaration in association with the first compound document, anda second compound declaration in association with the second compound document;while performing one or more operations to replace, in the first compound document, (a) links to the first plurality of subdocuments with (b) content of the first plurality of subdocuments, using said first compound declaration to return the most current version of the first plurality of versions of the first subdocument;while performing the one or more operations to replace, in the second compound document, (c) links to the second plurality of subdocuments with (d) content of the second plurality of subdocuments, using said second compound declaration to return a particular version, of the second plurality of versions, that is not the most current version of the second plurality of versions;in response to a request to check out a particular version of the first plurality of versions of the first subdocument for reading or modifying, checking out the particular version of the first subdocument without checking out any other subdocument of the first plurality of subdocuments and without checking out the first parent document. 10. The method of claim 9, wherein the first parent document and the second parent document are different versions of the same parent document. 11. The method of claim 9, wherein the most current version of the first subdocument and the particular version of the second subdocument are different versions of the same subdocument. 12. The method of claim 9, wherein: the first compound document includes a third subdocument to which the first parent document links;the third subdocument is different than the first subdocument;a third compound declaration declares that a parent document should link to a particular version of a subdocument;the third compound declaration causes the first parent document to link to a third particular version, of the third subdocument, that is not the most current version of the third subdocument. 13. The method of claim 9, wherein: the first compound document comprises a plurality of queryable content items that includes a first queryable content item and a second queryable content item;the first parent document includes the first queryable content item;the first subdocument includes the second queryable content item. 14. The method of claim 9, further comprising: creating a new version of the first parent document; andin response to a request to check out the new version of the first parent document for reading or modifying, checking out the new version of the first parent document without checking out any subdocument of the first plurality of subdocuments. 15. One or more non-transitory computer-readable media storing instructions which, when executed by one or more processors, cause: storing, within a repository, a plurality of compound documents, each compound document of the plurality of compound documents including: a parent document,a plurality of subdocuments of said parent document;wherein the parent document includes, for each subdocument of the plurality of subdocuments, a link to said each subdocument;storing, in association with a first compound document of the plurality of compound documents, a first compound document declaration that declares a first type of link;storing, in association with a second compound document of the plurality of compound documents, a second compound document declaration that declares a second type of link that is different than the first type of link;wherein the first type of link is one of a hard link, a weak link, or a symbolic link;wherein the second type of link is another one of the hard link, the weak link, or the symbolic link;wherein the hard link is a link such that a first subdocument that is a target of the hard link cannot be deleted from the repository as long as the hard link is included in a first parent document, wherein the hard link is uniquely associated with the first subdocument, and wherein the hard link between a first parent document and the first subdocument is preserved if the first subdocument is moved to another location within the repository;wherein the weak link is a link such that a second subdocument that is a target of the weak link is uniquely associated with the weak link and can be deleted from the repository even while a second parent document includes the weak link to the second subdocument;wherein the symbolic link is a link such that a third parent document that includes the symbolic link is no longer linked to a third subdocument that is a target of the symbolic link when the third subdocument is moved to a different location in the repository, wherein the symbolic link is not uniquely associated with the third subdocument. 16. The one or more non-transitory computer-readable media of claim 15, wherein the instructions when executed by the one or more processors, further cause: receiving a statement that requires that a particular operation be performed on content stored within a certain subdocument of said plurality of subdocuments; andbased on one or more compound document declarations that are stored separate from the plurality of compound documents, making a determination that said particular operation is not permitted. 17. The one or more non-transitory computer-readable media of claim 16, wherein: one of the one or more compound document declarations specifies an error message; andthe instructions when executed by the one or more processors, further cause displaying said error message in response to making said determination. 18. The one or more non-transitory computer-readable media of claim 15, wherein the instructions, when executed by the one or more processors, further causes: receiving a statement that requires that a particular operation be performed on content stored within a first subdocument of said plurality of subdocuments and a second subdocument of said plurality of subdocuments; andbased on one or more compound document declarations that are stored separate from the plurality of compound documents, making a determination that said particular operation is not permitted for said first subdocument and not permitted for said second subdocument. 19. The one or more non-transitory computer-readable media of claim 15, wherein the instructions, when executed by the one or more processors, further cause: storing, in association with a third compound document of the plurality of compound documents, a third compound document declaration that declares a third type of link that is different than the first type of link and the second type of link;wherein the third type of link is another one of the hard link, the weak link, or the symbolic link. 20. The one or more non-transitory computer-readable media of claim 15, wherein the instructions, when executed by the one or more processors, further cause storing within a certain link of a certain parent document, a resource path to a certain subdocument, wherein said certain link is either the hard link or the weak link. 21. The one or more non-transitory computer-readable media of claim 15, wherein the instructions, when executed by the one or more processors, further cause: creating an expanded view of a particular compound document of the plurality of compound documents, wherein a link to a particular subdocument is replaced with content imported from said subdocument into the expanded view of the particular compound document;receiving an update to the expanded view of the compound document, wherein applying the update changes content imported from said particular subdocument; andautomatically applying changes corresponding to said update to said particular subdocument that is stored separately from the expanded view of the particular compound document. 22. The one or more non-transitory computer-readable media of claim 15, wherein the instructions, when executed by the one or more processors, further cause: in response to receiving a first source document, automatically: creating a particular parent document based on the first source document,identifying multiple elements within the first source document,creating a first plurality of subdocuments that are separate from the particular parent document and the first source document,for each element of the multiple elements: storing said each element in a different subdocument of the first plurality of subdocuments;creating and storing, in the particular parent document, a link to the different subdocument,storing data that identifies the particular parent document and the first plurality of subdocuments as a particular compound document;wherein identifying the multiple elements comprises using an XML schema associated with the first source document to identify the multiple elements. 23. One or more non-transitory computer-readable media storing instructions which, when executed by one or more processors, cause: within a repository, storing: a first compound document that includes a first parent document that links to a first plurality of subdocuments that includes a first subdocument that corresponds to a first plurality of versions,a second compound document that includes a second parent document that links to a second plurality of subdocuments that includes a second subdocument that corresponds to a second plurality of versions,a first compound declaration in association with the first compound document,a second compound declaration in association with the second compound document;while performing one or more operations to replace, in the first compound document, (a) links to the first plurality of subdocuments with (b) content of the first plurality of subdocuments, using said first compound declaration to return the most current version of the first plurality of versions of the first subdocument;while performing one or more operations to replace, in the second compound document, (c) links to the second plurality of subdocuments with (d) content of the second plurality of subdocuments, using said second compound declaration to return a particular version, of the second plurality of versions of the second subdocument, that is not the most current version of the second plurality of versions;in response to a request to check out a particular version of the first plurality of versions of the first subdocument for reading or modifying, checking out the particular version of the first subdocument without checking out any other subdocument of the first plurality of subdocuments and without checking out the first parent document. 24. The one or more non-transitory computer-readable media of claim 23, wherein the first parent document and the second parent document are different versions of the same parent document. 25. The one or more non-transitory computer-readable media of claim 23, wherein the most current version of the first subdocument and the particular version of the second subdocument are different versions of the same subdocument. 26. The one or more non-transitory computer-readable media of claim 23, wherein: the first compound document includes a third subdocument to which the first parent document links;the third subdocument is different than the first subdocument;a third compound declaration declares that a parent document should link to a particular version of a subdocument;the third compound declaration causes the first parent document to link to a third particular version, of the third subdocument, that is not the most current version of the third subdocument. 27. The one or more non-transitory computer-readable media of claim 23, wherein: the first compound document comprises a plurality of queryable content items that includes a first queryable content item and a second queryable content item;the first parent document includes the first queryable content item;the first subdocument includes the second queryable content item. 28. The one or more non-transitory computer-readable media of claim 23, wherein the instructions, when executed by the one or more processors, further cause: creating a new version of the first parent document; andin response to a request to check out the new version of the first parent document for reading or modifying, checking out the new version of the first parent document without checking out any subdocument of the first plurality of subdocuments.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (127)
Uppala Radha Krishna, Architecture for managing query friendly hierarchical values.
Chow Yen-whei ; Hayes-Roth Frederick A. ; Jacobstein Neil A. ; Manley James E. ; McMahan Christopher B., Automatic retrieval of changed files by a network software agent.
Abe, Mari; Koyanagi, Teruo; Ono, Kohichi; Hori, Masahiro; Nakaike, Takuya, Data processing and difference computation for generating addressing information.
Farber David A. ; Lachman Ronald D., Data processing system using substantially unique identifiers to identify data items, whereby identical data items hav.
Mackay Duncan C. (Vancouver CAX) Ahmadi Babak (North Vancouver CAX), Data storage system with set lists which contain elements associated with parents for defining a logical hierarchy and g.
Freund Gregor P. (San Francisco CA) Kahn Philippe R. (Scotts Valley CA) Lee Sonia (Scotts Valley CA), Databank system with methods for efficiently storing non-uniform data records.
Satoshi Kikuchi JP; Hiromichi Ito JP; Keiichi Nakane JP; Hisashi Hashimoto JP; Eisaku Nishiyama JP, Distributed database management system including logical database constituted by a group of physical databases.
Atsatt Bryan P. (Redwood City CA) Nandkeshwar Earsh K. (San Jose CA) Seilnacht Michael J. (Fremont CA) Thakkar Hemantkumar A. (Milpitas CA) Turner George R. (Sunnyvale CA) Webster Roger R. (San Jose , Extensible object-oriented file system.
Napolitano Richard ; Silverman Herbert W. ; Juzsczak Chester ; Panner Bryan K. ; Franklin Chris ; Noya Eric S. ; Hoskins Timothy Lee ; Luke Stanley ; Shaughnessy Paul Richard ; McLeod Alexander C. ; , File array storage architecture having file system distributed across a data processing platform.
Allen Philip M. ; Davis Joseph W. ; Maslaney Michael J. ; Mai Khanh ; Paulk Howard L. ; Thompson Ken, Flexible, configurable, hierarchical system for distributing programming.
Chau, Hoang K.; Cheng, Isaac Kam-Chak; Cheng, Josephine Miu; Chiu, Suet Mui; Chow, Jyh-Herng; Pauser, Michael Leon; Xu, Jian, Generating one or more XML documents from a single SQL query.
Srinivasan Jagannathan ; Fazio Samuel De ; Nori Anil ; Das Souripriya ; Freiwald Chuck ; Banerjee Jayanta, Index with entries that store the key of a row and all non-key values of the row.
Karaev Isaak ; Baird George ; Blazek Pavel ; Kitain Eduard ; Prohorov Dmitry ; Leisy Jacques ; Urazov Yuri ; Zucknovich Stephen, Information delivery system and method.
Barney Rock D. ; Schwols Keith ; Nelson Ellen M., Integration of a database into file management software for protecting, tracking and retrieving data.
Khoyi Dana (Dracut MA) Soucie Marc S. (Tyngsboro MA) Surprenant Carolyn E. (Dracut MA) Stern Laura O. (Woburn MA) Pham Ly-Huong T. (Chelmsford MA), Link mechanism for linking data between objects and for performing operations on the linked data in an object based syst.
Schneider, Richard, METHOD, SYSTEM FOR USING FILE NAME TO ACCESS APPLICATION PROGRAM WHERE A LOGICAL FILE SYSTEM PROCESSES PATHNAME TO DETERMINE WHETHER THE REQUEST IS A FILE ON STORAGE DEVICE OR OPERATION FOR APPLICATI.
Irwin ; Jr. Basil L. (Longmont CO) Kitts David L. (Fraser CO) Ruff Craig R. (Boulder CO) Sloan John L. (Arvada CO), Mass storage system for file-systems.
Murthy,Ravi; Krishnaprasad,Muralidhar; Chandrasekar,Sivasankaran; Sedlar,Eric; Krishnamurthy,Viswanathan; Agarwal,Nipun, Mechanism for mapping XML schemas to object-relational database systems.
Wlaschin Scott, Method and apparatus for a physical storage architecture having an improved information storage and retrieval system for a shared file environment.
Henninger Derek P. (Cupertino CA) Jensen Richard H. (Redwood City CA) Keene Christopher T. (San Francisco CA), Method and apparatus for automatic generation of object oriented code for mapping relational data to objects.
Ronald Patrick Doyle ; John Raithel Hind ; Julie Hayes King, Method and apparatus for client authentication and application configuration via smart cards.
Salas Pito ; Beir Jeffrey ; Leffler Melissa ; Glenn McDonald ; Kleppner Paul ; Morrissey Craig ; Tonra ; Jr. James E., Method and apparatus for controlling access to a product.
Eto Toshihisa (Kawasaki JPX) Yoshizawa Tsuneichi (Kawasaki JPX) Shiga Koichi (Kawasaki JPX), Method and apparatus for testing an application in a client/server database system using pseudo-database server and debu.
Gramlich Wayne C. (Sunnyvale CA) Tirfing Soren J. (Palo Alto CA), Method and apparatus for the naming of database component files to avoid duplication of files.
Jason Michael Gartner CA; Ronald James Pomeroy CA, Method and means for evaluating the performance of a database system referencing files external to the database system.
Bereiter Thomas William ; Gan Doron, Method and system for displaying an expandable tree structure in a data processing system graphical user interface.
Davidson Thomas J. (Austin TX) Kelley Michael T. (Austin TX), Method and system for implementing remote procedure calls in a distributed computer system.
Lewak Jerzy (Del Mar CA) Grzechnik Slawek (La Mesa CA) Matousek Jon (San Diego CA), Method for accessing computer files and data, using linked categories assigned to each data file record on entry of the.
Shan Ming-Chien (Saratoga CA) Lu Hongjun (Singapore SGX), Method of recursively deriving and storing data in, and retrieving recursively-derived data from, a computer database sy.
Kavanagh Thomas S. ; Beall Christopher W. ; Heiny William C. ; Motycka John D. ; Pendleton Samuel S. ; Smallwood Thomas D. ; Terpening Brooke E. ; Traut Kenneth A., Object oriented database management system.
Atsatt Bryan P. ; Nandkeshwar Earsh K. ; Seilnacht Michael J. ; Thakkar Hemantkumar A. ; Turner George R. ; Webster Roger R., Object oriented file system in an object oriented operating system.
Steven H. Milne ; James Michael Tindell ; John C. Tobias, II ; Michael R. Dilts ; Bradley Alan Edelman ; Matthew Denman, Object-oriented multimedia [data routing system] presentation control system.
Couch, Tanya; Edlund, Stefan Bengt; Lapis, George; Lohman, Guy Maring; Reinwald, Berthold, Platform-independent method and system for graphically presenting the evaluation of a query in a database management system.
Adair John G. (Austin TX) Demers Richard A. (Rochester MN) Ecimovic Dusan (Orinda CA) Grafe Robert J. (Austin TX) Jackson Robert D. (San Jose CA) Lindsay Bruce G. (San Jose CA) Murphy Michael E. (Dur, Query language execution on heterogeneous database servers using a bind-file bridge between application and database lan.
Maeda, Seiji; Kanai, Tatsunori; Kizu, Toshiki; Yokokawa, Takeshi; Yao, Hiroshi; Torii, Osamu; Tanaka, Hisako, Scheme for constructing database for user system from structured documents using tags.
Deborah Bauer ; Ross Button CA; Mike Cavanagh CA; Susan Jane McQuigge Ernst CA; Kevin Germann CA; Ralph Holmes ; Samuel S. Howlette ; William Kalyn CA; Steve Sauve CA; Francis C. Sommers CA, System and method for achieving local number portability.
Lee,Wang Chien; Mitchell,Gail Anne; Zhang,Xin, System and method for automatic loading of an XML document defined by a document-type definition into a relational database including the generation of a relational schema therefor.
Smolen, Richard; Earman, Daniel; Ripley, Rodney; Isaac, David, System and method for immutably cataloging electronic assets in a large-scale computer system.
Jeremy Mark Holland ; Jessica Dilullo Herrin ; Jennifer Lefcourt ; Andrew Michael Mosson, System and method for providing internet accessible registries.
Badger Lee ; Sterne Daniel F. ; Sherman David L. ; Tajalli Homayoon ; Dalva David I., System and method for superimposing attributes on hierarchically organized file systems.
Christopher Ambler ; Andrew Wallace, System, method, and computer program product for workflow processing using internet interoperable electronic messaging with mime multiple content type.
Thompson Bruce A. (Highlands Ranch CO) Van Maren David J. (Ft. Collins CO) McCarthy John G. (Thornton CO) Purcell R. Andrew (Ft. Collins CO) Rottinghaus Michael (Greeley CO), Transparent peripheral file systems with on-board compression, decompression, and space management.
Michael P. Salisbury ; James P. Dourish ; Warren K. Edwards ; Anthony G. LaMarca ; John O. Lamping ; Karin Petersen ; Douglas B. Terry ; James D. Thornton, Virtual documents generated via combined documents or portions of documents retrieved from data repositories.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.