WO2006056893A2 - De-serializing data objects on demand - Google Patents
De-serializing data objects on demand Download PDFInfo
- Publication number
- WO2006056893A2 WO2006056893A2 PCT/IB2005/004140 IB2005004140W WO2006056893A2 WO 2006056893 A2 WO2006056893 A2 WO 2006056893A2 IB 2005004140 W IB2005004140 W IB 2005004140W WO 2006056893 A2 WO2006056893 A2 WO 2006056893A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- objects
- serialized
- enterprise
- child
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
Definitions
- the invention relates to software systems and, in particular, techniques for de-serializing a data description language stream into an object.
- Enterprise software systems are typically sophisticated, large-scale systems that support many, e.g., hundreds or thousands, of concurrent users.
- Examples of enterprise software systems include financial planning systems, budget planning systems, order management systems, inventory management systems, sales force management systems, business intelligent tools, enterprise reporting tools, project and resource management systems and other enterprise software systems.
- remove client devices often retrieve enterprise data from the enterprise software system.
- the enterprise software system often stores the enterprise data as multidimensional data comprising complicated object definitions and data types that cannot easily be transmitted to the user device via most communication protocols, such as the Transmission Control Protocol/Internet Protocol (TCP/IP).
- TCP/IP Transmission Control Protocol/Internet Protocol
- the enterprise planning system may serialize the multidimensional data into a data description language, such as the extensible markup language (XML), which expresses the enterprise planning data as plain text for transmission.
- a data description language such as the extensible markup language (XML)
- the client device Upon receiving the serialized transmission, the client device de-serializes the XML stream into objects or, in the case of multi-dimensional data, a hierarchy of objects.
- the representation of multi-dimensional data as objects can include tens of thousands of object instantiations.
- Some programming languages, although optimized for object-oriented programming, begin to slow down during the creation and especially the deletion of many small objects. In an attempt to prevent the slow down, the XML representation of the data may be broken into multiple XML calls. The user device may then retrieve subsets of the XML from the enterprise software system as needed.
- the client device may initially on retrieve the highest levels of the object hierarchy, and retrieve subsequent levels when requested by the software executing on the client device. In this way, the client device does not retrieve data from the enterprise system that is never actually needed by the client device. This process of retrieving data from the enterprise system as needed is often referred to as "load on demand.”
- the invention is directed to techniques for de-serializing data from a software system, such as an enterprise software system, as needed.
- a software system such as an enterprise software system
- techniques are described for de-serializing (i.e., converting) a data description language, such as the extensible markup language (XML), representation of data from an enterprise software system to an object when needed by a software application within the enterprise software system.
- XML extensible markup language
- the techniques allow an XML stream of serialized data representing an object model to be loaded onto a computing device from the enterprise software system.
- the XML data is de-serialized to create objects as the objects are requested by software applications executing on the computing device.
- the remaining XML data may be stored on the computing device until the corresponding objects are requested by the software applications.
- the serialized data received from the enterprise software system may comprise multi-dimensional data, which can be de-serialized into a hierarchy of objects.
- the "de-serialize on demand" techniques discussed herein allow large object hierarchies to be constructed on an as-needed basis. The techniques may reduce object instantiation and deletion time by only de-serializing the stored XML data and creating those objects requested by the software applications.
- the techniques described herein may be utilized in conjunction with a "load on demand" process that selectively retrieves the XML data from the enterprise software system when requested. For example, portions of object hierarchies may be selectively retrieved from the enterprise software system as XML data when needed.
- a method comprises storing serialized data in accordance with a data description language to define a hierarchical object model having a plurality of data objects. The method further comprises receiving a request to access one of the plurality of data objects defined by the stored serialized data, and processing at least a portion of the serialized data to create the requested data object in response to the request.
- a computer comprises a software application executing within on the computer, and a computer-readable medium storing serialized data in accordance with a data description language to define a hierarchical object model having a plurality of data objects.
- the computer further comprises de-serialization software executing on the computer to process at least a portion of the serialized data to create the data objects when the software application requests access to the data objects.
- a computer-readable medium comprises instruction that cause a programmable processor of a computing device to execute a plurality of software applications on the computing device, store serialized data in accordance with a data description language to define a hierarchical object model having a plurality of data objects, and receive a request from one of the plurality of software applications to access one of the plurality of data objects defined by the serialized data.
- the computer-readable medium further comprises instructions that identify a portion of the serialized data that corresponds to the requested data object, and convert the identified portion of the serialized data into the requested data object.
- FIG. 1 is a block diagram illustrating an example computing environment in which a plurality of users interact with an enterprise planning system that enables and automates the reconciliation of top-down targets with detailed bottom-up forecasts.
- FIG. 2 is a block diagram illustrating one embodiment of a remote computing device for interacting with the enterprise planning system of FIG. 1.
- FIG. 3 illustrates the structure of an object model in further detail.
- FIG. 4 illustrates an exemplary instantiation of objects in an object model.
- FIG. 5 is a flow chart illustrating a process of de-serializing on data objects on demand.
- FIG. 6 is a flow chart illustrating the de-serialization processes in greater -detail.
- FIG. 1 is a block diagram illustrating an example enterprise 4 having a computing environment 10 in which a plurality of users 12A-12N (collectively, “users 12") interact with an enterprise planning system 14.
- enterprise system 14 is communicatively coupled to a number of computing devices 16A-16N (collectively, “computing devices 16") by a network 18.
- Users 12 interact with their respective computing devices to access enterprise planning system 14.
- enterprise software systems include order management systems, inventory management systems, sales force management systems, business intelligent tools, enterprise reporting tools, project and resource management systems and other enterprise software systems.
- enterprise planning system 14 enables and automates the reconciliation of top-down targets with detailed bottom-up forecasts for an enterprise.
- Enterprise planning system 14 implements and manages an enterprise planning process, which can be divided into three functions: (1) modeling, (2) contribution, and (3) reconciliation.
- analysts define organizational targets, and build planning models for the enterprise.
- the analysts may include, for example, financial analysts, such as the chief financial officer, senior financial analysts or product and sales analysts. More specifically, the analysts develop a model having a number of hierarchically arranged nodes representing various cost centers within the organization, such as business units or departments.
- the analysts specify corporate target data for each node of the organizational hierarchy.
- Corporate target data may include financial data, revenue data, order data, inventory data, and the like, depending on the particular enterprise planning activity being carried out by the enterprise.
- the analysts then assign one or more enterprise users to each node, such as managers, supervisors, sales representatives, lab managers, or the like, that are responsible for enterprise planning for the cost center corresponding to the node.
- Each enterprise user may be designated as a contributor that provides planning data to enterprise planning system 14, a reviewer that accepts or rejects contributions from the contributors, or both.
- the contributors and reviewers may be authorized users within the enterprise or within other entities coupled to network 18, such as suppliers or customers.
- enterprise users 12 that are designated as contributors interact with enterprise planning system 14 to input detailed forecasts in the form of contribution data.
- enterprise users 12 may provide detailed financial forecasts, revenue forecasts, order forecasts, inventory forecasts, estimated resource requirements, and the like, depending on the particular enterprise planning activity being carried out by the enterprise.
- Enterprise planning system 14 automates the reconciliation of the forecast data with the corporate target data provided by the analysts.
- enterprise planning system 14 operates in accordance with a defined model, i.e., the enterprise planning model created by the analysts, to provide a hierarchical planning process having multiple reconciliation levels.
- enterprise planning system 14 automatically aggregates the contribution data across the enterprise in real-time, and provides access to the aggregated data to enterprise users 12 designated as reviewers associated with higher levels of the enterprise.
- enterprise planning system 14 identifies all higher levels of the organizational model affected by the newly received contribution data, and calculates new aggregate totals at each level in real-time. [0025] Consequently, the reviewers view aggregated data across the enterprise in real-time during the enterprise planning session.
- enterprise planning system 14 ensures that the reviewers, as defined by the nodes of the enterprise model, reconcile the target data with the forecast data.
- Each of the reviewers may, for example, reject or accept the contribution data in view of corporate targets provided by the analysts. This process continues until the contribution data is ultimately approved by the highest level of the organizational hierarchy, thereby ensuring that the contribution data from the contributors reconciles with corporate targets provided by the analysts.
- enterprise planning system 14 may provide more accurate enterprise planning than with conventional techniques. For example, enterprise planning system 14 may improve the accuracy and predictability of enterprise planning by enabling organizations to reconcile corporate models and organizational targets with detailed forecasts.
- the techniques may provide a platform that delivers collaborative, real-time planning capabilities, without requiring offline consolidation and aggregation of forecasts. Because enterprise planning system 14 can aggregate contribution data in real-time, all users 12 can be presented with an accurate, up-to-date view of the numbers. Further, the architecture of enterprise planning system 14 can readily scale to thousands of users, and may be designed around best planning practices.
- Enterprise users 12 may use a variety of computing devices to interact with enterprise planning system 14 via network 18.
- an enterprise user may interact with enterprise planning system 14 using a laptop computer, desktop computer, or the like, running a web browser, such as Internet ExplorerTM from Microsoft Corporation of Redmond, Washington.
- a personal digital assistant PDA
- Network 18 represents any communication network, such as a packet-based digital network like the Internet. In this manner, system 10 can readily scale to suit large enterprises.
- Enterprise users 12 may directly access enterprise planning system 14 via a local area network, or may remotely access enterprise planning system 14 via a virtual private network, remote dial-up, or similar remote access communication mechanism.
- Enterprise planning system 14 may utilize a "cut-down" process by which the multidimensional data store is "sliced" for each user 12 in accordance with the defined enterprise model. During this process, enterprise planning system 14 identifies areas of the defined model to which users 12 are assigned, either as contributors or reviewers, and “slices" the data store based on the assignments. When a given user 12 logs in and proceeds with an enterprise planning activity, enterprise planning system 14 communicates the respective data slice to the respective computing device 16 for display to the user via the extended spreadsheet application. In this fashion, enterprise planning system 14 need not communicate the entire model to each of users 12, thereby reducing communication time as well as resource requirements. Instead, each user 12 receives only relevant information.
- the multidimensional data received from enterprise planning system 14 often comprises complicated object definitions. For this reason, enterprise planning system 14 serializes the multidimensional data into a data description language, such as the extensible markup language (XML), which expresses the data as plain text for transmission to computing devices 16.
- XML extensible markup language
- computing devices 16 apply techniques for de ⁇ serializing the data description language stream into data objects when specifically needed by enterprise planning software executing on the computing devices.
- each of computing devices 16 includes an application programming interface (API) for receiving data requests from a software application executing on computing device 16 and returning the de-serialized data to the software application.
- the data slices may comprise multi-dimensional data.
- the representation of the multi-dimensional data as objects can include tens of thousands of object instantiations.
- computing devices 16 load XML representations of the multidimensional data (i.e., the respective slices associated with users 12) from enterprise software system 14.
- an object model interface of the respective computing device 16 directs a de-serialization module to convert (i.e., de-serialize) a respective portion of the XML data into the requested data object.
- the XML data represents a hierarchy of data objects comprising parent objects and child objects. As a result, the parent objects are de-serialized when specifically requested by the enterprise planning software, and the child objects lower in the hierarchy remain stored as XML data until requested by the software application.
- an object hierarchy may be constructed from the XML data in a top-down fashion as needed.
- the "de-serialize on demand" techniques reduces object instantiation and deletion time associated with the object hierarchy by only de-serializing and instantiating those objects that are actually requested by a software application.
- FIG. 2 is a block diagram illustrating one embodiment of a computing device 16A for interacting with enterprise planning system 14.
- computing device 16A includes a web browser 20, one or more planning applications 25, an object model interface 26, an object model 28, and a de-serialization module 29.
- Calculation engine 22 and data cube 24 are installed within web browser 20 for use during the enterprise planning session.
- Computing device 16 A include computer-readable media to store executable instructions for causing programmable processors to carry out the methods described herein.
- calculation engine 22 comprises a forward calculation engine 22 wrapped in an Active X object built in an array-based language.
- user 12A may interact with web browser 20 to enter and manipulate enterprise planning data, such as budget or forecast data.
- Data cube 24 contains planning data, which may include top-down targets, and bottom-up contribution data, and allows all calculations for an enterprise planning session to be performed locally by computing device 16 A.
- a contributor can modify his or her respective contribution data, and perform calculations necessary for the enterprise planning process without necessarily accessing enterprise planning system 14.
- calculation engine 22 and data cube 24 may be maintained locally (e.g., as ActiveX components) via computing device 16 A.
- User 12A may save the planning data locally, and submit the planning data to enterprise planning system 14 for aggregation with the planning data from other users 12.
- Enterprise planning system 14 automatically aggregates the contribution data across enterprise 4 in real-time, and provides access to the aggregated data to reviewers associated with higher levels of the enterprise. This process continues until the contribution data is ultimately approved by the reviewers associated with the highest level of the organizational hierarchy, thereby ensuring that the contribution data from the contributors reconciles with corporate targets.
- calculation engine 22 and data cube 24 may be maintained only at enterprise planning system 14 and installed locally upon computing devices 16.
- Planning applications 25 represent software applications executing on computing device 16 A.
- planning applications 25 may include reporting tools, modeling tools, spreadsheet applications, data collection templates, business intelligence tools, or other types of enterprise planning applications.
- Object model interface 26 comprises an application programming interface API that exposes object model 28.
- object model 28 may be a metadata model for data cube 24.
- object model 28 represents any hierarchy of data objects, and may comprise a series of collections and objects within the collections.
- object model 28 may comprises a hierarchy of objects, each of which contains a collection which in turn provides access to one or more objects.
- Object model 28 may be wrapped to protect the objects within the collections.
- user 12A and planning applications 25 cannot alter the data within object model 28.
- planning applications 25 retrieve the objects from object model 28 via object model interface 26.
- object model interface 26 receives data requests from planning applications 25 and returns the requested de-serialized data to planning applications 25.
- object model 28 includes an XML store 27 such that an XML representation of enterprise data required during the planning session may be loaded from enterprise planning system 14 before de-serialization into object model 28.
- XML store 27 may include an XML stream for an entire slice associated with user 12 A. In other cases, XML store 27 may include a subset of the slice; the remaining portion of the slice is loaded from enterprise planning system 14 when needed by planning applications 25 using a load on demand process.
- object model interface 26 determines whether the requested object has already been instantiated. If an instantiation for the desired object does not exist in object model 28, object model interface 26 identifies the corresponding XML data within XML store 27. Object model interface 26 then directs de-serialization module 29 to de-serialize the XML that represents the requested data into an object in object model 28. Object model interface 26 may then return the de-serialized data object (or a handle to the object) to the requesting one of planning applications 25. The remaining data objects of object model 28 (i.e., the lower level child objects) remain stored in XML store 27 in XML form until requested by one of planning applications 25.
- planning applications 25 may request information about data objects stored in XML store 27. For example, one of planning applications 25 may issue a request to count the data objects within a given collection. In that case, object model interface 26 need not instantiate and directly access the particular data objects. As a result, object model interface 26 may return the requested information without de-serializing and instantiating the associated objects.
- the following XML listing illustrates exemplary serialized data that may be provided by enterprise planning system 14 and stored within XML store 27.
- the serialized data defines an object hierarchy having four dimensions: submissions, company, accounts and periods. For each dimension, the XML defines one or more items, and each item has one or more attributes.
- FIG. 3 illustrates exemplary structure of one embodiment of object model 28 in further detail.
- object model 28 comprises a hierarchy of objects, each of which contains a collection which in turn provides access to one or more objects.
- the exemplary structure may be particularly useful in representing a dimension of multidimensional data.
- a dimension of multidimensional data generally is defined as a hierarchy of parent "nodes" and child “subnodes.”
- the dimension hierarchy may be represented by the object hierarchy within object model 28.
- each object within object model 28 represents a node within the dimension and provides access to the multidimensional data associated with the respective node.
- object model 28 includes a dimension collection 32, which contains dimension objects 33A and 33B.
- dimension collections 32 may contain any number of dimension objects 33.
- object model interface 26 may direct de-serialization module 29 to create all objects within dimension collection 32 when one of planning applications 25 attempts to access either of dimension objects 33 A or 33B.
- object model interface 26 may direct de-serialization module 29 to only create the requested object. In either case, object model 28 stores the
- XML data that describes each of dimension objects 33, and only de-serializes the stored XML data when one or planning applications 25 requests multidimensional data represented by the objects.
- each of dimension objects 33 may include an item collection.
- FIG. 3 illustrates an expansion of item collection 34 within dimension object 33B.
- item collection 34 contains item object 35A and item object 35B.
- Item object 35B is shown to include an attribute collection 36, which contains attribute objects 37 A and 37B.
- FIG. 3 illustrates only a portion of object model 28.
- object model 28 may have any number of hierarchical levels
- object model 28 may contain tens of thousands of objects representing the multidimensional enterprise data.
- FIG. 4 illustrates an exemplary instantiation of objects in object model 28 of computing device 16A.
- object model 28 is shown to include a hierarchy of collections and objects as described in reference to FIG.
- FIG. 4 illustrates only one object within each collection, any number of objects may be contained within each collection.
- object model interface 26 directs de-serialization module 29 to access XML store 27, convert the corresponding XML data and instantiate dimension object 42.
- object model interface 26 passes dimension object 42 the XML data associated with the dimension object.
- Dimension object 42 uses attributes specified in the XML data to prepare properties of the object.
- Dimension object 42 stores the XML data within dimension node store 41 for use as needed to create its child objects, i.e., object of item collection 44 in this example.
- object model interface 26 directs de-serialization module 29 to convert the corresponding XML data stored in dimension node store 41 and instantiate the item object.
- object model interface 26 passes item object 46 its corresponding XML data. Item object 46 uses attributes included in the XML data to prepare properties of the object, and stores the XML data within item node store 45 for use as needed to create child objects from attribute collection 48.
- object model interface 26 directs de-serialization module 29 to convert the corresponding XML data stored in item node store 45.
- object model interface 26 passes attribute object 50 its respective XML data. Attribute object 50 uses attributes included in the XML data to prepare properties of the object. If attribute object 50 has any child objects defined within the XML data, the attribute object stores its XML data within attribute node store 49.
- the objects at each level of object model 28 store their respective XML data, and utilize the XML data to instantiate child objects as needed.
- FIG. 5 is a flow chart illustrating example implementation of the de ⁇ serialize on demand process described herein.
- the de-serialize on demand process may be performed, for example, by computing device 16A illustrated in FIG. 2 when user 12A takes part in an enterprise planning session.
- object model interface 26 loads an XML representation of multidimensional data from enterprise planning system 14 into XML store 27 (60).
- an XML stream representing all of the planning data associated with user 12A i.e. a "slice"
- a load on demand processes may be utilized to load only a subset of the needed multidimensional data with the remaining data being loaded upon request by any of planning applications 25.
- object model interface 26 may de ⁇ serialize and instantiate an initial portion of object model 28 (61). For example, object model interface 26 may de-serialize and instantiate dimension collection 42 shown in the example of FIG. 4. During this process, object model interface 26 access XML store 27 to retrieve the corresponding XML data, de-serialize the corresponding XML data and instantiate dimension object 42. Object model interface 26 passes dimension object 42 the XML data associated with the dimension object for initialization of attributes subsequent use if needed to create child objects.
- any of planning applications 25 may issue requests via object model interface 26 to access object model 28 (62).
- planning applications 25 may issue requests to access properties of the instantiated portion of object model 48, e.g., dimension collection 42 in this example.
- object model interface 26 returns the proper values without de-serializing additional XML data as the attributes have already been loaded.
- planning application 25 may issue requests that require access to a child object (66). For example, planning application 25 may attempt to index a child object, iterate on the child objects or access an attribute associated with a child object.
- object model interface 26 accesses object model 28 to determine whether the requested data object has already been instantiated within the object model (64, 66). If the data object does already exists (yes branch of 66), object model interface 26 access the requested child data object in accordance with the request. Object model interface 26 may, for example, return a handle to the child data object, return an attribute associated with the child data object, return a count of the child data objects or return some other parameter (68).
- the parent data object de-serializes the requested child data object based on the stored XML data (70) and accesses the child data object in accordance with the original request (68). If the XML data store of the parent data object does not include the XML necessary to de-serialize the requested data object, the parent data object raises an error (72).
- FIG. 6 is a flow chart illustrating the de-serialization processes in greater detail.
- the parent data object retrieves the XML data for the child data object from its XML data store (80).
- the parent data object may, for example, maintain a temporary variable (e.g., a string variable) to store XML data associated with its child objects.
- the parent object then invokes de-serialization module 29 to create the child object based on its corresponding XML data (81).
- the parent data object then passes the newly instantiated child object its corresponding XML data corresponding to (82), as described in FIG. 4.
- the newly created object then uses attributes included in the XML node to prepare its properties (84).
- the newly created object stores the XML data for later use to create the child objects when requested by one of planning applications 25 (86).
- the child object then initializes one or more flags or other marker indicating that its child objects have not yet been converted into objects (88).
- the parent object may delete the XML data used in creating the child node in order to conserve memory (90).
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2005308543A AU2005308543B2 (en) | 2004-11-29 | 2005-11-15 | De-serializing data objects on demand |
EP05850816A EP1836566A4 (en) | 2004-11-29 | 2005-11-15 | De-serializing data objects on demand |
CA002587641A CA2587641A1 (en) | 2004-11-29 | 2005-11-15 | De-serializing data objects on demand |
CN2005800409313A CN101151592B (en) | 2004-11-29 | 2005-11-15 | Method and system for de-serializing data objects on demand |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/998,409 US7464082B2 (en) | 2004-11-29 | 2004-11-29 | Methods for de-serializing data objects on demand |
US10/998,409 | 2004-11-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2006056893A2 true WO2006056893A2 (en) | 2006-06-01 |
WO2006056893A3 WO2006056893A3 (en) | 2007-10-04 |
Family
ID=36498332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2005/004140 WO2006056893A2 (en) | 2004-11-29 | 2005-11-15 | De-serializing data objects on demand |
Country Status (6)
Country | Link |
---|---|
US (2) | US7464082B2 (en) |
EP (1) | EP1836566A4 (en) |
CN (1) | CN101151592B (en) |
AU (1) | AU2005308543B2 (en) |
CA (1) | CA2587641A1 (en) |
WO (1) | WO2006056893A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645431B2 (en) | 2006-12-01 | 2014-02-04 | Vecco Technology Inc. | Multi-level supply chain management system and methods |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7676481B2 (en) * | 2005-02-24 | 2010-03-09 | Microsoft Corporation | Serialization of file system item(s) and associated entity(ies) |
US20060167912A1 (en) * | 2005-01-25 | 2006-07-27 | Microsoft Corporation | Method and system for use of subsets in serialized documents |
US7757229B2 (en) * | 2005-08-09 | 2010-07-13 | International Business Machines Corporation | Reflective, XML-based framework for the construction of common application launchers |
US7823063B2 (en) * | 2005-11-15 | 2010-10-26 | Microsoft Corporation | Delayed loading and instantiation of resources defined in markup |
US9460064B2 (en) * | 2006-05-18 | 2016-10-04 | Oracle International Corporation | Efficient piece-wise updates of binary encoded XML data |
US7747562B2 (en) * | 2006-08-15 | 2010-06-29 | International Business Machines Corporation | Virtual multidimensional datasets for enterprise software systems |
US7895150B2 (en) * | 2006-09-07 | 2011-02-22 | International Business Machines Corporation | Enterprise planning and performance management system providing double dispatch retrieval of multidimensional data |
US8255790B2 (en) * | 2006-09-08 | 2012-08-28 | Microsoft Corporation | XML based form modification with import/export capability |
US8918755B2 (en) * | 2006-10-17 | 2014-12-23 | International Business Machines Corporation | Enterprise performance management software system having dynamic code generation |
US7974993B2 (en) * | 2006-12-04 | 2011-07-05 | Microsoft Corporation | Application loader for support of version management |
US20080140695A1 (en) * | 2006-12-12 | 2008-06-12 | Paragen, Inc. | Intellectual property related method and computer program |
US8291310B2 (en) * | 2007-08-29 | 2012-10-16 | Oracle International Corporation | Delta-saving in XML-based documents |
US7831540B2 (en) * | 2007-10-25 | 2010-11-09 | Oracle International Corporation | Efficient update of binary XML content in a database system |
US20090157734A1 (en) * | 2007-12-18 | 2009-06-18 | Zubair Khan | Dynamically generated mvc based user interface |
US8255372B2 (en) | 2010-01-18 | 2012-08-28 | Oracle International Corporation | Efficient validation of binary XML data |
CN101916202B (en) * | 2010-08-09 | 2014-04-09 | 中兴通讯股份有限公司 | Signaling display method and system |
US8954967B2 (en) * | 2011-05-31 | 2015-02-10 | International Business Machines Corporation | Adaptive parallel data processing |
US10756759B2 (en) | 2011-09-02 | 2020-08-25 | Oracle International Corporation | Column domain dictionary compression |
CN103186582A (en) * | 2011-12-29 | 2013-07-03 | 青岛海尔软件有限公司 | Device description file-based data analysis method |
US20130218933A1 (en) * | 2012-02-20 | 2013-08-22 | Microsoft Corporation | Consistent selective sub-hierarchical serialization and node mapping |
US8812523B2 (en) | 2012-09-28 | 2014-08-19 | Oracle International Corporation | Predicate result cache |
US11675768B2 (en) | 2020-05-18 | 2023-06-13 | Microsoft Technology Licensing, Llc | Compression/decompression using index correlating uncompressed/compressed content |
US11663245B2 (en) * | 2020-06-25 | 2023-05-30 | Microsoft Technology Licensing, Llc | Initial loading of partial deferred object model |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6477701B1 (en) * | 1999-09-30 | 2002-11-05 | Seiko Epson Corporation | Version-adaptive serialization and deserialization of program objects in an object-oriented environment |
JP3842573B2 (en) * | 2001-03-30 | 2006-11-08 | 株式会社東芝 | Structured document search method, structured document management apparatus and program |
TWI290698B (en) * | 2002-12-20 | 2007-12-01 | Hon Hai Prec Ind Co Ltd | System and method for updating and displaying patent citation information |
US7350199B2 (en) * | 2003-01-17 | 2008-03-25 | Microsoft Corporation | Converting XML code to binary format |
US20040189717A1 (en) * | 2003-03-27 | 2004-09-30 | Carli Conally | Intelligent drill-down for graphical user interface |
US7873663B2 (en) * | 2004-01-13 | 2011-01-18 | International Business Machines Corporation | Methods and apparatus for converting a representation of XML and other markup language data to a data structure format |
-
2004
- 2004-11-29 US US10/998,409 patent/US7464082B2/en not_active Expired - Fee Related
-
2005
- 2005-11-15 EP EP05850816A patent/EP1836566A4/en not_active Withdrawn
- 2005-11-15 CN CN2005800409313A patent/CN101151592B/en not_active Expired - Fee Related
- 2005-11-15 AU AU2005308543A patent/AU2005308543B2/en not_active Ceased
- 2005-11-15 WO PCT/IB2005/004140 patent/WO2006056893A2/en active Application Filing
- 2005-11-15 CA CA002587641A patent/CA2587641A1/en not_active Abandoned
-
2008
- 2008-08-21 US US12/196,059 patent/US8171023B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
See references of EP1836566A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8645431B2 (en) | 2006-12-01 | 2014-02-04 | Vecco Technology Inc. | Multi-level supply chain management system and methods |
Also Published As
Publication number | Publication date |
---|---|
US20060117061A1 (en) | 2006-06-01 |
EP1836566A4 (en) | 2008-12-31 |
US8171023B2 (en) | 2012-05-01 |
CN101151592A (en) | 2008-03-26 |
AU2005308543B2 (en) | 2009-10-29 |
CN101151592B (en) | 2010-04-21 |
CA2587641A1 (en) | 2006-06-01 |
AU2005308543A1 (en) | 2006-06-01 |
WO2006056893A3 (en) | 2007-10-04 |
US7464082B2 (en) | 2008-12-09 |
US20080306929A1 (en) | 2008-12-11 |
EP1836566A2 (en) | 2007-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2005308543B2 (en) | De-serializing data objects on demand | |
US8468125B2 (en) | Automatically moving multidimensional data between live datacubes of enterprise software systems | |
US7747562B2 (en) | Virtual multidimensional datasets for enterprise software systems | |
US7072822B2 (en) | Deploying multiple enterprise planning models across clusters of application servers | |
US7418438B2 (en) | Automated default dimension selection within a multidimensional enterprise software system | |
AU2005317688B2 (en) | Export queue for an enterprise software system | |
CA2497745A1 (en) | Node-level modification during execution of an enterprise planning model | |
EP1498829A1 (en) | Method and computer system for aggregating information | |
AU2005310977A1 (en) | Aggregatable dimension information FN multidimensional enterprise software system | |
CA2498436A1 (en) | Selective deployment of software extensions within an enterprise modeling environment | |
US7877355B2 (en) | Job scheduling for automatic movement of multidimensional data between live datacubes | |
US7895150B2 (en) | Enterprise planning and performance management system providing double dispatch retrieval of multidimensional data | |
CA2501206A1 (en) | Adaptively interfacing with a data repository | |
US8918755B2 (en) | Enterprise performance management software system having dynamic code generation | |
US20050060309A1 (en) | Query objects | |
Pudhota et al. | Services integration monitor for collaborative workflow management | |
Bose et al. | Coordination of view maintenance policy adaptation decisions: A negotiation-based reasoning approach | |
AbdelSalam | An integrated engineering-computation framework for collaborative engineering: An application in project management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005850816 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2587641 Country of ref document: CA |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005308543 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 200580040931.3 Country of ref document: CN |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2005308543 Country of ref document: AU Date of ref document: 20051115 Kind code of ref document: A |
|
WWP | Wipo information: published in national office |
Ref document number: 2005308543 Country of ref document: AU |
|
WWP | Wipo information: published in national office |
Ref document number: 2005850816 Country of ref document: EP |