CN100435143C - System and method for modeless data mapping with nested tables - Google Patents

System and method for modeless data mapping with nested tables Download PDF

Info

Publication number
CN100435143C
CN100435143C CNB2005100590955A CN200510059095A CN100435143C CN 100435143 C CN100435143 C CN 100435143C CN B2005100590955 A CNB2005100590955 A CN B2005100590955A CN 200510059095 A CN200510059095 A CN 200510059095A CN 100435143 C CN100435143 C CN 100435143C
Authority
CN
China
Prior art keywords
path
father
effective load
electrical form
load data
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.)
Expired - Fee Related
Application number
CNB2005100590955A
Other languages
Chinese (zh)
Other versions
CN1677398A (en
Inventor
Y·-M·梁
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1677398A publication Critical patent/CN1677398A/en
Application granted granted Critical
Publication of CN100435143C publication Critical patent/CN100435143C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets

Abstract

A system and method for mapping payload data to a spreadsheet list. The present invention comprises a system for mapping payload data to a spreadsheet list while supporting the implementation of nested tables, without the use of a schema. After receiving a spreadsheet list, the present invention generates the parent path of each field path defined in the spreadsheet list. The longest parent path may be used to generate a set of nodes from the payload data. If more than one unique parent path qualifies as the longest parent path, then such parent patents may be designated as branch bottom paths. All other parent paths may then be associated with an appropriate branch bottom path. During the binding process, each branch bottom path may be evaluated to generate result nodes, which may be used to obtain the values of the fields of the spreadsheet list.

Description

The non-mode data map system and method that has nested tables
The reference of related application
The application is the extendible portion of U. S. application sequence number 10/772,001 of the common submission of " non-mode data map system and method (the Systemand Method for Schemaless Data Mapping) " by name that submitted on April 4th, 2004.
Technical field
The present invention relates generally to the data map system and method, relate in particular to the data map system and method that does not use pattern.
Background technology
Because Extensible Markup Language (XML) becomes and more and more popularizes between application program, especially by the Internet mobile data, popular application program by use XML realized the relevant ability of web (as, to the web issued documents).Such application program is the MICROSOFT EXCEL that the Microsoft by the Redmond city provides.Introduced the XML tabulation meets preassigned pattern with demonstration XML effective load data.Usually, the relation between the formation of XML effective load data and XML tabulation is shone upon by XML and is defined, and it is the part of spreadsheet workbook definition.XML mapping can determine the position of XML tabulation in book, with quantity and the element that is associated with each row or the type of attribute of mapped row.XML electrical form (XMLSS) file description spreadsheet workbook, comprise all XML tabulations that this book comprises.The element of preassigned pattern is mapped to a grid, to create the XML tabulation of having shone upon, the node instance of its each line display effective load data.Generally speaking, mode-definition the shape of XML effective load data.
For making application program that effectively interactivity can be provided on the Internet, spreadsheet applications must guarantee that given book loads by network in system independently as it and shows.The key component of this fidelity is that effective load data is mapped to the XML tabulation.This mapping requires to use predetermined pattern.
Unfortunately, the confidence level that the XML effective load data is mapped to the preassigned pattern of XML tabulation may be problematic.For example, if this pattern is disabled or ruined, then data possibly can't correctly be shone upon.In addition, may require the dense process of computer processing unit (CPU) to effective load data and XML list application pattern.This burden of processor may be unrealistic or disadvantageous for injecting computing systems such as server or portable equipment.
Because the complicacy of mapping nested tables, effective load data is mapped to the electrical form tabulation and does not use pattern may be difficult.Nested tables is generally used for showing complicated effective load data, makes form may comprise that the recursive nature of a plurality of forms (as, sublist) nested tables allows to show the effective load data that interrelates.
Therefore, need a kind of being used for that effective load data is mapped to electrical form in this area, and do not use the system and method for pattern.
Also need a kind of being used for that effective load data is mapped to the electrical form tabulation in this area, and do not use the system and method for pattern, wherein, the result is substantially similar to the data map of use pattern.
In addition, need a kind of system and method in this area, be used for effective load data is mapped to the electrical form tabulation, support the realization of nested tables simultaneously, and do not use pattern.
Summary of the invention
Generally, the present invention includes a kind of system and method that is used for effective load data is mapped to the electrical form tabulation (as, XML tabulation) of spread-sheet data.More specifically, the present invention includes a kind of system, be used for effective load data is mapped to the electrical form tabulation, support the realization of nested tables simultaneously, and do not use pattern.After receiving the electrical form tabulation, the present invention generates the father path in each field path of definition in the electrical form tabulation.The longest father path (as, bottom path) can be used for generating a group binding from effective load data.The present invention can bind each node and be mapped to delegation in the electrical form tabulation.By using bottom path and field path from each binding node traversal, the present invention can obtain the value of all other fields in the row of electrical form tabulation.Perhaps, if an above father path meets the qualification of long father path, and these father paths are unequal each other or be not each other subclass, then these father paths can be appointed as branch's bottom path.Then can be with all other path be associated with suitable branch's bottom path.In binding procedure, can be to each branch's bottom path evaluation generating result node, it can be used for obtaining the value of the field of electrical form tabulation.
Advantageously, the present invention is mapped to the electrical form tabulation with effective load data, and need not the use pattern.Result provided by the invention is substantially similar to the result who generates by the use pattern.In addition, the present invention supports the electrical form tabulation to be nested with the realization of form.Therefore, the present invention has eliminated to effective load data being mapped to the dependence of electrical form tabulation to pattern, fails thereby reduced potential data map.In addition, eliminate the valuable resource that this dependence (as the intensive data map of, processor) has discharged computer processing unit, be used for prior task.
Make when reading in conjunction with the accompanying drawings and understanding instructions of the present invention, can know other features and advantages of the present invention.
Description of drawings
Fig. 1 shows the block representation according to the spread-sheet data mapped system of one exemplary embodiment of the present invention.
Fig. 2 shows the block representation according to its spendable computing environment of one exemplary embodiment of the present invention and computer system;
Fig. 3 shows according to one exemplary embodiment of the present invention and comprises that the false code of the spread-sheet data of electrical form tabulation represents.
Fig. 4 shows according to the false code of the effective load data of one exemplary embodiment of the present invention and represents.
Fig. 5 shows the block diagram according to the effective load data of one exemplary embodiment of the present invention.
Fig. 6 shows the block diagram that shines upon the electrical form tabulation according to one exemplary embodiment of the present invention.
Fig. 7 A-7C shows the flowcharting that effective load data is mapped to the method for electrical form tabulation according to one exemplary embodiment of the present invention.
Embodiment
With reference now to accompanying drawing,, run through accompanying drawing, identical label is represented identical assembly or step, Fig. 1 shows the block representation according to the spread-sheet data mapped system 100 of one exemplary embodiment of the present invention.Spread-sheet data mapped system 100 can comprise communication facilities 103, includes but not limited to electrical form storage unit 109, effective load data storage unit 105 and map unit 106.Communication facilities 103 can be by the hardware and software component support of finding in the well-known computing system that is similar to the more complete description of hereinafter with reference Fig. 2, environment and/or the configuration.
Be connected to map unit 106 in 109 communications of electrical form storage unit.Electrical form storage unit 109 stored electrons list datas, it comprises the electrical form tabulation, such as, but not limited to, the Extensible Markup Language of the more complete description of hereinafter with reference Fig. 3 (XML) tabulation 112.Electronic table unit 109 comprises can storage and retrieval memory of data equipment, include but not limited to random-access memory (ram), flash memory, magnetic storage device, optical memory devices, hard disk drive, removable, easily mistake or nonvolatile memory device, optical storage media, magnetic storage medium or RAM storage card.Perhaps, can comprise can be by the remote storage device of wired and/or Radio Network System visit for electrical form storage unit 109.In addition, electrical form storage unit 109 can comprise accumulator system, comprises the multilevel system of aforesaid primary and secondary memory devices.The high-speed cache that primary memory equipment and second-level storage equipment can be used as is each other operated, and perhaps second-level storage equipment can be taken on the backup of primary memory equipment.In another scheme, electrical form storage unit 109 can comprise the memory devices of the relevant database of searching for that is configured to simple data library file or use such as query languages such as SQL.
Be connected to map unit 106 in 115 communications of effective load data storage unit.Effective load data storage unit 115 stores effective load data, and wherein, effective load data can be mapped to the corresponding XML tabulation 112 of spread-sheet data.Effective load data is more completely described with reference to figure 4 hereinafter.Effective load data storage unit 115 comprises the memory devices that is similar to above the memory devices of being discussed with reference to electrical form storage unit 109.
Be coupled to electrical form storage unit 109 and effective load data storage unit 115 in map unit 106 communications.Map unit 106 usefulness are applicable to that the hardware and software (Fig. 2) of executing the task and ability described herein and function being provided disposes.Map unit 106 is mapped to the XML tabulation 112 that is stored in the electrical form storage unit 109 applicable to the effective load data that will be stored in the effective load data storage unit 115.
In operation, map unit 106 receives spread-sheet data from electrical form storage unit 109, and receives effective load data from effective load data storage unit 115.Spread-sheet data can comprise XML tabulation 112, and it is generally defined by a group field (being also referred to as " row " herein).Usually, field can be calculated or be shone upon.The field of calculating can be defined by formula or constant, and the field of mapping can be defined by " path " or " pointer " to effective load data.Map unit 106 can use the field path come from effective load data obtain node listing (as, sometimes be called as " binding node "), thus, each node can be mapped to delegation in the XML tabulation 112 by map unit 106 then.Map unit 106 can be obtained the value of all fields in the XML tabulation 112 by following the path from node to the expectation field from effective load data.
In an alternative embodiment of the present invention, communication facilities 103 also comprises a user interface 118, and it is applicable to the video data to the user, and receives user's input.Be connected to map unit 106 in user interface 118 communications.Map unit 106 can provide the XML tabulation 112 of mapping to user interface 118, and user interface 118 can show the XML tabulation 112 of mapping by the display (not shown) to the user.Person of skill in the art will appreciate that user interface 118 can design with various embodiment and form, and its scope can be from simple to more complicated configuration.In one exemplary embodiment of the present invention, user interface 118 can comprise keypad, display screen, touch-screen or other equipment easily, and also can comprise program module or the machine instruction of carrying out preplanned mission, and instruction can be carried out on processing unit 121.
In addition, communication facilities 103 can comprise the network interface 121 of being convenient to from communication facilities 103 to network 124 communication.Be connected to map unit 106 and network 124 in network interface 121 communications.Map unit 106 can provide the XML tabulation 112 of mapping to network interface 121, and network interface 121 can provide the XML of mapping to tabulate 112 by another communication facilities in network 124.Network interface 121 can be hardware device usually, and as the expansion card of network interface unit or communication facilities 103, it has made things convenient for the connection between communication facilities 103 and the network 124.Though not shown in Figure 1, network interface 121 can comprise radio-frequency (RF) transmitter and receiver, and they have enabled the communication between the access point (not shown) of communication facilities 103 and network 124.
Person of skill in the art will appreciate that network 124 generally includes foundation structure and the setting that is applicable to the group that connects two or more communication facilitiess 103 (including but not limited to a plurality of servers or client devices).This network 124, communication facilities 103 and server can dispose with multiple topology, include but not limited to star, the configuration of bus ring shape.Equally, network 124, communication facilities 103 and server can briefly be classified as the architecture that belongs to specific, include but not limited to peer client/server architecture.Network 124 can be classified by geographic position or its type of communication facilities 103 or server in addition.For example, connect as a plurality of computer systems of phase near-earth location or the network 124 of server are called as Local Area Network each other in a buildings; If computer system is remotely located mutually, then network 124 is commonly referred to as wide area network (WAN), as the Internet; If computer system is positioned at limited geographic area, in campus or military organs, then network 124 is called as campus network (CAN); If computer system links together in city or cities and towns, then network 124 is called as Metropolitan Area Network (MAN) (MAN); If computer system links together in user's family, then network 124 is called as home network (HAN).
Person of skill in the art will appreciate that connection can comprise the communication of arbitrary suitable type of the two-way communication that maybe needs to be used for signal and/or media in the communication, include but not limited to simulation, digital, wireless and wire communication channel.This class communication channel can be used, but be not limited to, copper cash, optical fiber, radio frequency, infrared, satellite or miscellaneous equipment and media.
Although some embodiment of the present invention relate to XML spread-sheet data, XML tabulation and XML effective load data, yet person of skill in the art will appreciate that, also can use the data configuration of other type within the scope of the invention, therefore, the invention is not restricted to data with the XML configuration.
Fig. 2 shows according to one exemplary embodiment of the present invention, the block representation of its spendable computing environment 200 and computer system 210,280 thereof.Computing environment 200 and computer system 210,280 thereof for being used to implement an example of suitable computing environment of the present invention, are not the limitation of hint to usable range of the present invention or function only.Computer system 210,280 should be interpreted as that the arbitrary assembly shown in the example calculation environment 200 or its combination are had any dependence or demand yet.
Therefore, should be appreciated that the present invention can operate with numerous other universal or special computingasystem environment or configuration.Be applicable to or be fit to use the example of well-known communication facilities 103 of the present invention, computing system, environment and/or configuration to include but not limited to, personal computer, server computer, hand-held or laptop devices, multicomputer system, the system based on microprocessor, set-top box, programmable consumer electronics, NetPC Network PC, minicomputer, large scale computer, comprise any distributed computing environment or the like of said system or equipment.
The present invention can describe in the general context environmental such as the computer executable instructions of being carried out by computer system such as program module.Generally speaking, program module comprises routine, program, object, assembly, data structure or the like, carries out specific task or realizes specific abstract data type.The present invention also can put into practice in distributed computing environment, and wherein, task is carried out by the teleprocessing equipment that connects by communication network.In distributed computing environment, program module can be arranged in local and remote computer-readable storage medium, includes but not limited to memory storage device.
With reference to figure 2, example calculation environment 200 of the present invention comprises the general-purpose computations device with computer system 210 forms.The assembly of computer system 210 can include but not limited to processing unit 330, system storage 230 and will comprise that the sorts of systems assembly of system storage 230 is coupled to the system bus 332 that processing unit 220 is used for bi-directional data and/or command communication.System bus 221 can be any of some kinds of types of bus structure, comprises memory bus or Memory Controller, peripheral bus and the local bus that uses all kinds of bus architectures.As example but not the limitation, this class architecture comprises ISA(Industry Standard Architecture) bus, MCA (MCA) bus, strengthens ISA (EISA) bus, Video Electronics Standards Association's (VESA) local bus and peripheral component interconnect (pci) bus (that is, being also referred to as the Mezzanine bus).
Computer system 210 generally includes various computer-readable mediums.Computer-readable medium can be can be by arbitrary usable medium of computer system 210 visit, comprises the non-volatile media of easily becoming estranged, removable and removable medium not.As example but not the limitation, computer-readable medium comprises computer-readable storage medium and communication media.Computer-readable storage medium comprises to be used to store such as easily becoming estranged of realizing of arbitrary method of information such as computer-readable instruction, data structure, program module or other data or technology non-volatile, removable and removable medium not.Computer-readable storage medium includes but not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic holder, tape, magneto-optical storage device, disk storage or other magnetic storage apparatus, maybe can be used for storing desired information and can be by arbitrary other medium of computer system 210 visits.Communication media comprises computer-readable instruction, data structure, program module or other data usually in the modulated message signal such as carrier wave or other transmission mechanism, and comprises arbitrary information-delivery media.Term " modulated message signal " refers to be provided with or change in the mode that the information in the signal is encoded the signal of its one or more features.As example but not limitation, communication media comprises wire medium, as cable network or directly line connect, and wireless medium is as acoustics, RF, infrared and other wireless medium.Above-mentioned arbitrary combination also should be included within the scope of computer-readable medium.
System storage 230 comprises the computer-readable storage medium of easy mistake and/or nonvolatile memory form, as ROM (read-only memory) (ROM) 231 and random-access memory (ram) 232.Basic input/output 233 (BIOS) comprises as help the basic routine of transmission information between the element in computing machine 210 when starting, is stored in usually among the ROM 231.RAM 232 comprises addressable immediately or current data of operating of processing unit 220 and/or program module usually.As example but not the limitation, Fig. 2 shows operating system 134, application program 135, other program module 136 and routine data 137, they can completely or partially reside among the RAM 232 sometimes.
Computing machine 210 also can comprise other removable/not removable, easy mistake/nonvolatile computer storage media.Only make example, the disc driver 251 that Fig. 2 shows hard disk drive 241 that not removable, non-volatile magnetic medium is read and write, read and write removable, non-volatile disk 252 and to removable, nonvolatile optical disk 256, the CD drive of reading and writing as CD ROM or other light medium 255.Other that can use in the exemplary operation environment be removable/and not removable, easy mistake/nonvolatile computer storage media includes but not limited to tape cassete, flash card, digital versatile disc, digital video band, solid-state RAM, solid-state ROM or the like.Hard disk drive 241 passes through not removable memory interface usually, is connected to system bus 221 as interface 240, and disc driver 251 and CD drive 255 are connected to system bus 121 usually by the removable memory interfaces as interface 250.
Fig. 2 discussion and the driver 241,251,255 that illustrates and related computer-readable storage medium thereof provide the storage of computer-readable instruction, data structure, program module and other data for computer system 210.For example, in Fig. 2, hard disk drive 241 store operation systems 244, application program 245, other program module 246 and routine data 247 are shown.Notice that these assemblies can be identical with routine data 237 with operating system 234, application program 235, other program module 236, also can be different with them.Here give different labels to operating system 244, application program 245, other program module 246 and routine data 247 and illustrate that they are different copies of operating system 234, application program 235, other program module 236 and routine data 237 at least.The user can pass through input equipment, as keyboard 262 and positioning equipment 261 (being often referred to mouse, tracking ball or touch pad) to computer system 210 input commands and information.The input equipment (not shown) of other connection can comprise microphone, operating rod, game mat, satellite dish, scanner or the like.These and other input equipment is connected to processing unit 220 by the user's input interface 260 that is coupled to system bus 221 usually, but also can be connected with bus structure by other interface, as parallel port, game port or USB (universal serial bus) (USB).The display device of monitor 291 or other type also by interface, is connected to system bus 221 as video interface 290.Except that monitor 291, computer system 210 also can comprise other peripheral output device, as loudspeaker 297 and printer 296, connects by output peripheral interface 295.
Computer system 210 can use one or more remote computers, operates in the networked environment that connects as the logic of remote computer 280.Remote computer 280 can be personal computer, laptop computer, server, router, network PC, peer device or other common network node, and generally include the relevant element of many or all above-mentioned and computer systems 210, although in Fig. 2, only show memory storage device 281.The two-way communication that Fig. 2 describes connects and comprises Local Area Network 271 and wide area network (WAN) 273, but also can comprise other computer network.This class network environment is common in office, enterprise-wide. computer networks, Intranet and the Internet.
When being connected to LAN 271 in the communication, computer system 210 is connected to LAN 271 by network interface or adapter 270.When being connected to WAN 273 in the communication, computer system 210 generally includes modulator-demodular unit 272 or other device, is used for by WAN 273, sets up communication as the Internet.Modulator-demodular unit 272 can be internal or external, is connected to system bus 221 by user's input interface 260.In networked environment, program module or its part relevant with computer system 210 of description can be stored in the remote memory storage device 281.And unrestricted, Fig. 2 shows remote application 285 and resides in the memory storage device 281 as example.Be appreciated that it is exemplary that the network that illustrates connects, and also can use other device of setting up bidirectional communication link between computing machine.
Fig. 3 shows according to one exemplary embodiment of the present invention and comprises that the false code of the spread-sheet data of electrical form tabulation 112 represents 300.As mentioned above, electrical form storage unit 109 comprises electrical form tabulation 112, and it can be mapped to effective load data by map unit 106.In one exemplary embodiment of the present invention, electrical form tabulation 112 is disposed with xml code, therefore is called XML tabulation 112 hereinafter.
XML provides the customizable label of permitting definition, affirmation, transmission and the explanation of the data between a plurality of systems.Person of skill in the art will appreciate that XML derives from standard generalized markup language (SGML), and the code format of accepting extensively that is used for data configuration is provided.Generally speaking, the XML label is the order of using in document, or the code of the part of document or code should be formatd or explain to indication how.The XML label is normally paired, and comprises that an initial label and stops label.Start-tag is represented by the tag name between in-less-than symbol ("<") and the is-greater-than symbol (">") usually.It is identical with start-tag usually to stop label, except that having afterwards the forward slash ("/") at in-less-than symbol ("<").For example, but be not limited to, scope (range) element 306 begins with "<range〉" label and finishes with "</range〉" label.The part that all texts between initial "<range〉" label and termination "</the range〉" label or code can be interpreted as scope element 306.
More specifically, Fig. 3 shows the part of XML electrical form (XMLSS), and it has described spreadsheet workbook, comprises the XML tabulation 112 that is included in wherein.Clauses and subclauses (entry) element 303 (as,<entryx2:id=" list1 "〉...</entry 〉) the interior single XML tabulation 112 of expression spread-sheet data.XML tabulation 112 can be listed as by one group that is called field (field) and define, these be listed in available fields element 312A-312F in the XML tabulation 112 (as,<field〉...</field) represent.Therefore, field element 312A-312F represents that map unit 106 is mapped to the tabulate row of 112 gained of XML with effective load data.
Field can be calculated or be mapped.The field of calculating can be defined by formula or constant.The field of mapping can be defined by the path to effective load data.As shown in Figure 3, the field path can XML tabulate in 112 by xpath element 309B-309G (as,<xpath〉...</xpath) represent.Clauses and subclauses element 303 also can have the path (as, sometimes be called as " root path "), and also can represent by xpath element 309A.The field path is the relative path xpath 309B-309G to the clauses and subclauses path, and therefore, the fullpath that arrives field need be connected in series the clauses and subclauses path with the field path.For example, but be not limited to, the field path of being represented by the xpath element 309C of field element 312B is " DEPARTMENTID ".Yet, clauses and subclauses xpath that the fullpath needs of the field of being represented by field element 312B will be represented by xpath element 309A and the field path of being represented by xpath element 309C are combined, have therefore obtained fullpath "/CORP/DEPARTMENT/DEPARTMENTID ".
Field also can with specific data or define styles, such as, but not limited to, string, variable or integer are associated.As shown in Figure 3, the data of field or define styles can be represented by xsdtype element 315A-315F.Use above-mentioned example, data or define styles that the xsdtype 315B of the field of being represented by field element 312B represents are " STRING ".
Person of skill in the art will appreciate that XML tabulation 112 can multiple layout scheme be disposed, and can comprise various field and path.Therefore, spread-sheet data shown in Figure 3 only is used for the illustrative purpose, is not limitation scope of the present invention.
Fig. 4 shows according to the false code of the effective load data of an exemplary enforcement of the present invention and represents 400.As mentioned above, effective load data storage unit 115 comprises the effective load data of the XML tabulation 112 that can be mapped to spread-sheet data.In one exemplary embodiment of the present invention, effective load data disposes with xml code.Generally speaking, effective load data is corresponding to the field of definition or description in the XML tabulation 112.Therefore, the path of definition can be relevant with the XML label in the effective load data in the XML tabulation 112.
Such as but not limited to, effective load data shown in Figure 4 relates to the defined XML tabulation of Fig. 3.More specifically, load (payload) element 03,406,409,410,412,415 shown in Figure 4 is corresponding to entire fields path shown in Figure 3.Table 1 shows the correlativity between the load element of the entire fields path of Fig. 3 and Fig. 4.
Figure C20051005909500141
Figure C20051005909500151
Figure C20051005909500171
Table 1
As shown in table 1, element 403A, 403B are corresponding to entire fields path "/CORP/DEPARTMENT/@NAME " for department's name (department name); The id of department (departmentid) element 406A, 406B are corresponding to entire fields path "/CORP/DEPARTMENT/DEPARTMENTID "; Name (personname) element 412A-412F is corresponding to entire fields path "/CORP/DEPARTMENT/MANAGERS/PERSON/@NAME " and " CORP/DEPARTMENT/CONTRACTORS/PERSON/@NAME "; Individual id (personid) element 415A-415F is corresponding to entire fields path "/CORP/DEPARTMENT/MANAGERS/PERSON/PERSONID " and "/CORP/DEPARTMENT/CONTRACTORS/PERSON/PERSONID ".In one exemplary embodiment of the present invention, "/" symbol in the field path shows that this path is an attribute, and "/" symbol in the field path shows that this field is an element.Thus, as represented by path "/CORP/DEPARTMENT/@NAME ", " NAME " is the attribute of " DEPARTMENT ", and as represented by path "/CORP/DEPARTMENT/DEPARTMENTID ", " DEPARTMENTID " is the element of " DEPARTMENT ".
Person of skill in the art will appreciate that the configuration of effective load data can be dependent on or meet the configuration of XML tabulation 112.Therefore, effective load data shown in Figure 4 only is used for the illustrative purpose, is not limitation scope of the present invention.
Fig. 5 shows the block diagram according to the effective load data of one exemplary embodiment of the present invention.Effective load data shown in Figure 5 is similar to the effective load data of above being discussed with reference to figure 4, except that not having the XML element tags.More specifically, Fig. 5 shows the spread-sheet data (see figure 3) and the layered characteristic in the field path of the effective load data that is associated.
In one exemplary embodiment of the present invention, map unit 106 can be determined " father " path (hereinafter with reference Fig. 7 more completely describes) in each field path in the XML tabulation 112.The father path in specific fields path can be determined by return a step along the field path in this path.In other words, father path in level behind this field path one the step.For example, but be not limited to, field path "/CORP/DEPARTMENT/MANAGERS/PERSON/PERSONID/ " can have father path "/CORP/DEPARTMENT/MANAGERS/PERSON ".In addition, father path can calculate attribute and element field.Thus, attribute field path "/a/b/@c " and element field path "/a/b/c " can have same father path "/a/b ".
How Fig. 5 can follow the field path to corresponding effective load data if also showing.Such as but not limited to, map unit 106 can be followed field path "/CORP/DEPARTMENT/DEPARTMENTED ", and finds corresponding value " 1001 " and " 1002 ".On the contrary, the field path can be determined from effective load data.Such as but not limited to, effective load data " John " can have corresponding field path "/CORP/DEPARTMENT/MANAGERS/PERSON/@NAME ".
Fig. 6 shows the block diagram according to the electrical form tabulation 112 of the mapping of one embodiment of the present of invention.As mentioned above, map unit 106 can be mapped to effective load data the XML tabulation 112 of spread-sheet data.Although this mapping does not rely on pattern, yet the mapping electrical form of gained tabulation 112 is substantially similar to the electrical form tabulation of " mode map ".
In one exemplary embodiment of the present invention, map unit 106 can be XML tabulation 112 and specifies one " bottom " path (hereinafter with reference Fig. 7 more completely describes).Usually, bottom path is the longest path of the previous father path that generates (above describing with reference to figure 5).If there is an above father path to meet the qualification of longest path, then the father path that at first generates can be appointed as bottom path, each father path that maybe will meet the longest path qualification is appointed as branch's bottom path (hereinafter with reference Fig. 7 more describes with finishing).
Map unit 106 can use bottom path to specify the node of XML tabulation 112, as the binding node.Usually, node can be assigned to the delegation in the XML tabulation 112 of mapping.Node can be taken on the index of each row of XML tabulation 112.More specifically, the quantity of the row that exists in the XML tabulation 112 that node can be indicated in mapping.
Such as but not limited to, the father path of field shown in Figure 3 be "/CORP/DEPARTMENT " (as, the father path of "/CORP/DEPARTMENT/@NAME "), "/CORP/DEPARTMENT " (as, the father path of "/CORP/DEPARTMENT/DEPARTMENTID "), "/CORP/DEPARTMENT/MANAGERS/PERSON " (as, the father path of "/CORP/DEPARTMENT/MANAGERS/PERSON/@NAME "), "/CORP/DEPARTMENT/MANAGERS/PERSON " (as, the father path of "/CORP/DEPARTMENT/MANAGERS/PERSON/PERSONID "), "/CORP/DEPARTMENT/CONTRACTORS/PERSON " (as, the father path of "/CORP/DEPARTMENT/CONTRACTORS/PERSON/@NAME "), "/CORP/DEPARTMENT/CONTRACTORS/PERSON " (as, the father path of "/CORP/DEPARTMENT/CONTRACTORS/PERSON/PERSONID ").Map unit 106 can specify "/CORP/DEPARTMENT/MANAGERS/PERSON " (as, the father path of "/CORP/DEPARTMENT/MANAGERS/PERSON/@NAME ") and "/CORP/DEPARTMENT/CONTRACTORS/PERSON " (as, the father path of "/CORP/DEPARTMENT/CONTRACTORS/PERSON/@NAME ") as branch's bottom path, because they are the longest father paths that generated, and be not equal to each other or the other side's subclass.For each branch's bottom path, map unit 106 is followed branch's bottom path to determine result node.The row 624,627,630,633,636,639 of the XML tabulation 112 of mapping and the value of row 603,606,609,612,615,618 can be determined to each corresponding field path by following each branch's bottom path.
Fig. 7 A-7C shows the flowcharting that effective load data is mapped to the method 700 of electrical form tabulation 112 according to one exemplary embodiment of the present invention.Map unit 106 will be mapped to the XML tabulation that receives from electrical form storage unit 109 from the effective load data that load store unit 115 receives, and not use pattern.
After step 701 beginning, map unit 106 advances to step 703, and map unit 703 receives spread-sheet data from electrical form storage unit 109.Spread-sheet data can comprise XML tabulation 112.Next step, in step 706, map unit 106 determines whether need be to any XML 112 evaluations of tabulating.If do not need to determine 112 evaluations of tabulating to any XML in step 706 map unit 106, then map unit 106 is according to method 700 pausing operations of step 715.Yet if define and will be existed by the XML of evaluation tabulation 112 in step 706 map unit 106, map unit 106 advances to step 709, and map unit 106 determines whether will be to tabulate any field path evaluations in 112 of XML.If do not need any field path evaluation to determine in step 709 map unit 106, then map unit 106 advances to step 718 as described below.Yet if determine to have the field path that needs evaluation in step 709 map unit 106, map unit 106 advances to step 712, and map unit 106 generates the father path in field path.Map unit 106 advances to step 709 then as described above.
In step 718, map unit 106 determines whether to have generated any father path from the field path of XML tabulation 112.If determine not generate any father path in step 718 map unit 106, then map unit 106 advances to step 706 as described above.Otherwise if determine to have generated father path in step 718 map unit 106, then map unit advances to step 721, and map unit 106 signs are not the longest father paths (making its tabulation) of subclass each other.Next step, in step 724, map unit 106 determines whether there is any repetition in the longest father path tabulation.If determine not repeat in the longest father path tabulation in step 724 map unit 106, then map unit 106 advances to step 730 as described below.Yet if determine to have repetition in the longest father path tabulation in step 724 map unit 106, map unit 106 advances to step 727, all repetitions in the longest father path tabulation of map unit deletion.
Next step, in step 730, map unit 106 is appointed as bottom path (being also referred to as " branch's bottom path " herein) with each the longest father path, and wherein, each bottom path is represented a different branch.Then, 733, map unit 106 is associated each field of XML tabulation with one or more branches bottom path, makes that the father path of field is the subclass of branch's bottom path of being associated.The father path of field can be a subclass with top set's bottom path.Map unit 106 advances to step 736 then, and wherein map unit 106 has determined whether that any branch bottom path still needs evaluation.If determine not have branch's bottom path to need evaluation in step 736 map unit 106, then map unit is according to method 700 pausing operations at 745 places.Otherwise if determine that in step 736 map unit 106 existence still needs branch's bottom path of evaluation, then map unit 106 advances to 739, and wherein the branch's bottom path evaluation on 106 pairs of effective load datas of map unit is bound node listing to generate.By each father path and one or more branches bottom path are made up, can be by begin to travel through the value (if any) that obtains each field (row) of XML tabulation from effective load data from the binding node.Next step, 742, map unit 106 begins along the path to each corresponding field path by the binding node from delegation, obtains the value of all fields (row) that are associated with branch's bottom path this row from effective load data.If field belongs to not the father path that is associated with the branch bottom path, then field value is left empty.Map unit 106 advances to step 736 then as described above.
Although described the present invention, yet be appreciated that, can under the situation that does not break away from the spirit and scope of the present invention, make variations and modifications as describing hereinbefore and in appended claims, defining with details.Counter structure, material, action and the equivalence techniques scheme that all devices add function element (if any) in the appended claims is intended to comprise any structure, material or the action that is used for usually carrying out in conjunction with other claimed especially claimed unit function.

Claims (18)

1. one kind is mapped to the system of electrical form tabulation with effective load data, it is characterized in that described system comprises:
One electrical form storage unit, it is applicable to and stores the spread-sheet data that comprises at least one electrical form tabulation;
One effective load data storage unit, it is applicable to the storage effective load data; And
One map unit, it is applicable to from described electrical form storage unit and receives spread-sheet data, receives effective load data and described effective load data is mapped to described at least one electrical form tabulation from described effective load data storage unit;
Wherein said at least one electrical form comprises at least one the field path that is associated with described effective load data, and described map unit also is applicable to from described at least one field path and determines at least one father path.
2. the system as claimed in claim 1 is characterized in that, described at least one electrical form tabulation comprises Extensible Markup Language XML tabulation.
3. the system as claimed in claim 1 is characterized in that, described system also comprises;
One user interface, it is applicable to the electrical form tabulation that receives described at least one mapping from described map unit, and shows the electrical form tabulation of described at least one mapping to the user.
4. the system as claimed in claim 1 is characterized in that, described system also comprises:
One network interface, it is applicable to the electrical form tabulation that receives described at least one mapping from described map unit, and the electrical form tabulation of described at least one mapping is provided to network.
5. the system as claimed in claim 1, it is characterized in that, described map unit also is applicable to from described at least one father path specifies at least one branch's bottom path, and wherein, described at least one branch's bottom path comprises the longest path of described at least one father path.
6. system as claimed in claim 5 is characterized in that, described map unit also is applicable to by described at least one branch's bottom path is applied to described effective load data, specifies at least one result node from described at least one branch's bottom path.
7. system as claimed in claim 6 is characterized in that, described map unit also is applicable to described at least one result node is mapped to delegation in the electrical form tabulation.
8. system as claimed in claim 7, it is characterized in that, described row comprises a plurality of fields, and described map unit is applicable to that also described at least one result node of using described at least one branch's bottom path and described effective load data obtains the value of described a plurality of fields.
9. one kind is mapped to the method for electrical form tabulation with effective load data, it is characterized in that, said method comprising the steps of:
Reception comprises the spread-sheet data of at least one electrical form tabulation, and wherein, described at least one electrical form tabulation comprises at least one path that is associated with a field;
Receive effective load data, wherein, described effective load data is associated with described spread-sheet data; And
By using described at least one path that described effective load data is mapped to described at least one electrical form tabulation, wherein further comprising the steps of by using described at least one path that described effective load data is mapped to described at least one electrical form tabulation:
For described at least one path generates one group of father path;
At least one father path of described father path group is appointed as at least one branch's bottom path; And
Generate a group node from effective load data, wherein, described groups of nodes is by effectively bearing described
Carry that described at least one branch's bottom path evaluations of data generates.
10. method as claimed in claim 9 is characterized in that, and is further comprising the steps of by using described at least one path that described effective load data is mapped to described at least one electrical form tabulation:
A node of described groups of nodes is mapped to the delegation of described at least one electrical form tabulation; And
By following the tracks of described at least one branch's bottom path, retrieve the value of the described field in the described row at least one path that is associated with described field in the described spread-sheet data.
11. method as claimed in claim 9 is characterized in that, may further comprise the steps for described at least one path generates one group of father path:
Enumerate described at least one path of described spread-sheet data;
Follow described at least one path of enumerating and turn back to last field; And
To be inserted into the path that described last field is associated in the described father path group.
12. method as claimed in claim 9 is characterized in that, at least one father path of described father path group is appointed as at least one branch's bottom path may further comprise the steps;
Determine at least one the longest father path of described father path group; And
If each the longest father path in described at least one the longest father path is not a subclass each other, then described at least one the longest father path is appointed as at least one branch's bottom path.
13. method as claimed in claim 9 is characterized in that, described method is further comprising the steps of:
First father path of described father path group is associated with described at least one branch's bottom path, and wherein, described first father path is the subclass of described at least one branch's bottom path.
14. one kind comprises the system that is used for effective load data is mapped to the electrical form tabulation, it is characterized in that described system comprises:
Be used to receive the device of the spread-sheet data that comprises at least one electrical form tabulation, wherein, described at least one electrical form tabulation comprises at least one path that is associated with a field;
Be used to receive the device of effective load data, wherein, described effective load data is associated with described spread-sheet data; And
Be used for by using described at least one path that described effective load data is mapped to the device that described at least one electrical form is tabulated, wherein be used for by using described at least one path that the device that described effective load data is mapped to described at least one electrical form tabulation is also comprised:
Be used to described at least one path to generate the device of one group of father path;
Be used at least one father path of described father path group is appointed as at least one branch's bottom path
Device; And
Be used for generating from effective load data the device of a group node, wherein, described groups of nodes is by right
Described at least one branch's bottom path evaluation on the described effective load data generates.
15. system as claimed in claim 14 is characterized in that, is used for by using described at least one path that the device that described effective load data is mapped to described at least one electrical form tabulation is also comprised:
Be used for a node of described groups of nodes is mapped to the device of the delegation of described at least one electrical form tabulation; And
Be used for retrieving the device of the value of the described field in the described row by following the tracks of described at least one branch's bottom path to described at least one path that is associated with described field in the described spread-sheet data.
16. system as claimed in claim 14 is characterized in that, the device that is used to described at least one path to generate one group of father path comprises:
Be used to enumerate the device in described at least one path of described spread-sheet data;
Be used to follow described at least one path of enumerating and turn back to the device of last field; And
Be used for to be inserted into the device of described father path group with the path that described last field is associated.
17. system as claimed in claim 14 is characterized in that, the device that is used at least one father path of described father path group is appointed as at least one branch's bottom path comprises:
At least one that is used for determining described father path group be the device of long father path; And
If be used for described at least one each the longest father path of the longest father path be not each other subclass, then described at least one the longest father path is appointed as the device of at least one branch's bottom path.
18. system as claimed in claim 14 is characterized in that, described system also comprises:
Be used for the device that first father path with described father path group is associated with described at least one branch's bottom path, wherein, described first father path is the subclass of described at least one branch's bottom path.
CNB2005100590955A 2004-03-22 2005-03-21 System and method for modeless data mapping with nested tables Expired - Fee Related CN100435143C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/805,896 2004-03-22
US10/805,896 US20050172217A1 (en) 2004-02-04 2004-03-22 System and method for schemaless data mapping with nested tables

Publications (2)

Publication Number Publication Date
CN1677398A CN1677398A (en) 2005-10-05
CN100435143C true CN100435143C (en) 2008-11-19

Family

ID=34862024

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100590955A Expired - Fee Related CN100435143C (en) 2004-03-22 2005-03-21 System and method for modeless data mapping with nested tables

Country Status (18)

Country Link
US (2) US20050172217A1 (en)
EP (1) EP1580671A3 (en)
JP (1) JP4711708B2 (en)
KR (1) KR101122841B1 (en)
CN (1) CN100435143C (en)
AU (1) AU2005200999B2 (en)
BR (1) BRPI0501150A (en)
CA (1) CA2501608A1 (en)
CO (1) CO5680122A1 (en)
IL (1) IL167313A (en)
MX (1) MXPA05003138A (en)
MY (1) MY154396A (en)
NO (1) NO333083B1 (en)
NZ (1) NZ538934A (en)
RU (1) RU2370808C2 (en)
SG (1) SG115773A1 (en)
TW (1) TWI353527B (en)
ZA (1) ZA200502315B (en)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8126889B2 (en) 2002-03-28 2012-02-28 Telecommunication Systems, Inc. Location fidelity adjustment based on mobile subscriber privacy profile
US9460129B2 (en) 2013-10-01 2016-10-04 Vmware, Inc. Method for tracking a schema in a schema-less database
US20050172217A1 (en) * 2004-02-04 2005-08-04 Yiu-Ming Leung System and method for schemaless data mapping with nested tables
US6985105B1 (en) 2004-10-15 2006-01-10 Telecommunication Systems, Inc. Culled satellite ephemeris information based on limiting a span of an inverted cone for locating satellite in-range determinations
US7836104B2 (en) * 2005-06-03 2010-11-16 Sap Ag Demonstration tool for a business information enterprise system
US7825780B2 (en) 2005-10-05 2010-11-02 Telecommunication Systems, Inc. Cellular augmented vehicle alarm notification together with location services for position of an alarming vehicle
US7899450B2 (en) * 2006-03-01 2011-03-01 Telecommunication Systems, Inc. Cellular augmented radar/laser detection using local mobile network within cellular network
US9167553B2 (en) 2006-03-01 2015-10-20 Telecommunication Systems, Inc. GeoNexus proximity detector network
US9330149B2 (en) * 2007-12-18 2016-05-03 Oracle International Corporation Techniques for query and DML over relational tables using spreadsheet applications
US8001155B2 (en) * 2008-06-20 2011-08-16 Microsoft Corporation Hierarchically presenting tabular data
US20090327213A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Document index for handheld application navigation
US8525681B2 (en) 2008-10-14 2013-09-03 Telecommunication Systems, Inc. Location based proximity alert
US8892128B2 (en) 2008-10-14 2014-11-18 Telecommunication Systems, Inc. Location based geo-reminders
US8423512B2 (en) * 2009-09-08 2013-04-16 Oracle International Corporation Leveraging XML capabilities of a database to enhance handling of document data
US8365066B2 (en) * 2010-02-09 2013-01-29 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for processing markup language specified spreadsheet styles
US8359308B2 (en) * 2010-04-01 2013-01-22 Microsoft Corporation Inline data correlation and hierarchical datasets
WO2012005769A1 (en) 2010-07-09 2012-01-12 Telecommunication Systems, Inc. Location privacy selector
US8649806B2 (en) 2011-09-02 2014-02-11 Telecommunication Systems, Inc. Aggregate location dynometer (ALD)
US10546057B2 (en) * 2011-10-28 2020-01-28 Microsoft Technology Licensing, Llc Spreadsheet program-based data classification for source target mapping
US20130311864A1 (en) * 2012-05-16 2013-11-21 N. Nagaraj Intelligent and robust context based XML data parsing from spreadsheets
US10191955B2 (en) 2013-03-13 2019-01-29 Microsoft Technology Licensing, Llc Detection and visualization of schema-less data
CN104881762A (en) * 2015-06-25 2015-09-02 中铁四局集团有限公司 Engineering quantity list decomposition method and system
CN104978307A (en) * 2015-06-25 2015-10-14 中铁四局集团有限公司 List processing method and apparatus
CN105069542A (en) * 2015-06-25 2015-11-18 中铁四局集团有限公司 Responsibility cost budget drafting method and system
CN116050362B (en) * 2023-03-23 2023-07-04 青岛诺亚信息技术有限公司 Web form dynamic data binding method, medium and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6502101B1 (en) * 2000-07-13 2002-12-31 Microsoft Corporation Converting a hierarchical data structure into a flat data structure
WO2003030031A2 (en) * 2001-09-28 2003-04-10 Oracle International Corporation Mechanism for mapping xml schemas to object-relational database systems
CN1478235A (en) * 2000-10-12 2004-02-25 �Ҵ���˾ Universal output constructor for XML queries

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ239657A (en) 1991-09-03 1995-07-26 Norman Michael Rorke Transferring data from database to spreadsheet file cells
WO2000023915A1 (en) 1998-10-16 2000-04-27 Commontown Pte Ltd A virtual space
US6920608B1 (en) * 1999-05-21 2005-07-19 E Numerate Solutions, Inc. Chart view for reusable data markup language
US6631497B1 (en) * 1999-07-19 2003-10-07 International Business Machines Corporation Binding data from data source to cells in a spreadsheet
US6941510B1 (en) * 2000-06-06 2005-09-06 Groove Networks, Inc. Method and apparatus for efficient management of XML documents
US6941511B1 (en) * 2000-08-31 2005-09-06 International Business Machines Corporation High-performance extensible document transformation
US6804677B2 (en) * 2001-02-26 2004-10-12 Ori Software Development Ltd. Encoding semi-structured data for efficient search and browsing
US6947947B2 (en) * 2001-08-17 2005-09-20 Universal Business Matrix Llc Method for adding metadata to data
US6925470B1 (en) * 2002-01-25 2005-08-02 Amphire Solutions, Inc. Method and apparatus for database mapping of XML objects into a relational database
US20030188264A1 (en) * 2002-03-29 2003-10-02 Full Degree, Inc. Method and apparatus for XML data normalization
US7457810B2 (en) * 2002-05-10 2008-11-25 International Business Machines Corporation Querying markup language data sources using a relational query processor
US7017112B2 (en) * 2003-02-28 2006-03-21 Microsoft Corporation Importing and exporting markup language data in a spreadsheet application document
US7421646B1 (en) * 2004-02-04 2008-09-02 Microsoft Corporation System and method for schemaless data mapping
US20050172217A1 (en) * 2004-02-04 2005-08-04 Yiu-Ming Leung System and method for schemaless data mapping with nested tables

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6502101B1 (en) * 2000-07-13 2002-12-31 Microsoft Corporation Converting a hierarchical data structure into a flat data structure
CN1478235A (en) * 2000-10-12 2004-02-25 �Ҵ���˾ Universal output constructor for XML queries
WO2003030031A2 (en) * 2001-09-28 2003-04-10 Oracle International Corporation Mechanism for mapping xml schemas to object-relational database systems

Also Published As

Publication number Publication date
RU2370808C2 (en) 2009-10-20
TW200540651A (en) 2005-12-16
MY154396A (en) 2015-06-15
ZA200502315B (en) 2006-12-27
NO20051482D0 (en) 2005-03-21
KR101122841B1 (en) 2012-03-22
MXPA05003138A (en) 2005-10-05
NO20051482L (en) 2005-09-23
US20070124318A1 (en) 2007-05-31
EP1580671A2 (en) 2005-09-28
RU2005107873A (en) 2006-10-10
CA2501608A1 (en) 2005-09-22
SG115773A1 (en) 2005-10-28
CN1677398A (en) 2005-10-05
AU2005200999A1 (en) 2005-10-06
CO5680122A1 (en) 2006-09-29
BRPI0501150A (en) 2005-11-01
TWI353527B (en) 2011-12-01
NZ538934A (en) 2007-05-31
US8584003B2 (en) 2013-11-12
EP1580671A3 (en) 2006-06-28
KR20060044561A (en) 2006-05-16
IL167313A (en) 2014-01-30
NO333083B1 (en) 2013-02-25
JP4711708B2 (en) 2011-06-29
AU2005200999B2 (en) 2010-05-20
JP2005302008A (en) 2005-10-27
US20050172217A1 (en) 2005-08-04

Similar Documents

Publication Publication Date Title
CN100435143C (en) System and method for modeless data mapping with nested tables
CN101258496B (en) Autocompleting with queries to a database
CN101567011B (en) Document processing device and document processing method and retrieval system
JP4339554B2 (en) System and method for creating and displaying a user interface for displaying hierarchical data
CN1841379B (en) Mapping of a file system model to a database object
CN102193973B (en) Present answer
CN102508845A (en) Interface to navigate and search a concept hierarchy
CN101233502B (en) Lightweight application program interface (API) for extensible markup language (XML)
CN105027115A (en) Query and index over documents
CN1790324B (en) Complex data access
JP4365162B2 (en) Apparatus and method for retrieving structured document data
CN101809572A (en) System and method of inclusion of interactive elements on a search results page
CN101410830A (en) System and method for storing and retrieving XML data encapsulated as an object in a database store
CN101183379A (en) Attribute level federation from multiple data sources
CN101263477B (en) System and method used for manageming associated data of document produced by computer
US20090030902A1 (en) Schematized data intelligent assistance for development environments
US20070033212A1 (en) Semantic model development and deployment
CN101689201A (en) Federated search
CN102364464A (en) Object instance versioning
CN103034633A (en) Method for generating expanded search result page summary and device for generating expanded search result page summary
EP1791067B1 (en) Lossless format-dependent analysis and modification of multi-document e-learning resources
CN102053987B (en) For showing the unified interface with Update Table array
CN109634921B (en) File storage method and storage system
US20080155479A1 (en) Method and Apparatus for Building Interactive Software Applications
CN102124460A (en) Standard schema and user interface for website maps

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150430

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

Effective date of registration: 20150430

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081119

Termination date: 20180321