WO2003003240A2 - Method and system for transforming an xml document according to subset of xml grammar rules - Google Patents

Method and system for transforming an xml document according to subset of xml grammar rules Download PDF

Info

Publication number
WO2003003240A2
WO2003003240A2 PCT/IB2002/002395 IB0202395W WO03003240A2 WO 2003003240 A2 WO2003003240 A2 WO 2003003240A2 IB 0202395 W IB0202395 W IB 0202395W WO 03003240 A2 WO03003240 A2 WO 03003240A2
Authority
WO
WIPO (PCT)
Prior art keywords
xml
subset
grammar
rules
document
Prior art date
Application number
PCT/IB2002/002395
Other languages
French (fr)
Other versions
WO2003003240A3 (en
Inventor
Amr F. Yassin
Yasser Alsafadi
Original Assignee
Koninklijke Philips Electronics N.V.
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 Koninklijke Philips Electronics N.V. filed Critical Koninklijke Philips Electronics N.V.
Priority to KR10-2003-7003088A priority Critical patent/KR20040014999A/en
Priority to JP2003509347A priority patent/JP2004537108A/en
Priority to EP02726399A priority patent/EP1466266A2/en
Publication of WO2003003240A2 publication Critical patent/WO2003003240A2/en
Publication of WO2003003240A3 publication Critical patent/WO2003003240A3/en

Links

Classifications

    • 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/151Transformation
    • G06F40/16Automatic learning of transformation rules, e.g. from examples
    • 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/12Use of codes for handling textual entities
    • G06F40/149Adaptation of the text data for streaming purposes, e.g. Efficient XML Interchange [EXI] format
    • 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/151Transformation
    • 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/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets

Definitions

  • the present invention relates generally to data processing. Specifically, the present invention relates to a method and system for transforming an Extensible Markup Language (XML) document structured according to a set of XML grammar rules to at least one XML document structured according to a subset of the set of XML grammar rules.
  • XML Extensible Markup Language
  • Extensible Markup Language is emerging as a universal language for structuring documents for transmission via the World Wide Web (WWW).
  • XML includes a set of XML grammar rules for structuring documents, primarily web-based documents, in order to provide extensibility, portability, and adaptability of such documents.
  • XML 1.0 which includes a grammar rule set of over eighty grammar rules provides clients with increased document processing capabilities, such as quickly accessing specific data via the Internet in response to a search query and reducing the processing load on servers by performing less document searching routines to locate a specific document. Accordingly, XML is a tool that significantly reduces network data traffic and improves query search response times.
  • the XML document is first parsed by an XML parser.
  • the XML parser is typically a set of programmable instructions stored within a computing device, such as a server or a PC.
  • the XML parser extracts data elements of the XML document in accordance with the XML grammar rule set.
  • an Extensible Style Language (XSL) style sheet accompanying the XML document is accessed.
  • the XSL style sheet sets forth instructions for retrieving selected extracted data elements of the XML document and reformatting them to another format for presentation thereof or transformation to web-based language, such as HTML.
  • the extracted data elements and the XSL style sheet are provided to an Extensible Style Language Transformation (XSLT) engine having software modules for transforming each extracted data element in accordance with the instructions set forth by the XSL style sheet.
  • XSLT Extensible Style Language Transformation
  • PDAs Personal digital assistants
  • cellular telephones capable of accessing the Internet or other network for allowing clients to engage in e- commerce and access data through wired or wireless network connections have limited processing and information storage resources.
  • these computing devices also known as thin devices, when receiving XML documents and XSL style sheets, e.g., via a network, typically do not have adequate resources for processing and storing the programmable instructions of an XML parser for parsing the received XML documents to extract data elements. They also typically do not have adequate resources for processing and storing the software modules of the XSLT engine for transforming the extracted data elements according to the instructions set forth by the XSL style sheet.
  • a micro-parser is provided therein for parsing the received XML documents to extract data elements.
  • the micro-parser would contain programmable instructions indicative of only a subset of the XML grammar rule set to forego from over-loading the processing resources and from using too much of the storage resources of the thin device for storing the entire XML grammar rule set. Therefore, XML documents received by such a thin device would have to be structured according to the subset of the XML grammar rule set, i.e., the subset of grammar rules that the micro-parser of the thin device is programmed with, in order to enable the thin device to correctly parse and transform the incoming XML documents to a usable and understandable format.
  • each thin device is likely to have a different micro-parser than another thin device, i.e., a micro-parser of a cellular telephone would be likely to be programmed with a different subset of the XML grammar rule set than a micro-parser of a PDA.
  • the cellular telephone is likely to have a micro-parser programmed with seven XML grammar rules and the PDA is likely to have a micro-parser programmed with twelve XML grammar rules.
  • an XML document having data structured in XML according to the full set of XML grammar rules is not likely to be correctly transformed or translated by computing devices which have micro-parsers programmed with only a subset of the full set of XML grammar rules.
  • the present invention provides a method and system for transforming an XML document structured according to a set of XML grammar rules to at least one XML document structured according to at least one subset of the set of XML grammar rules.
  • the system of the present invention includes a controller capable of executing a set of programmable instructions for retrieving at least one grammar restriction style sheet (GRSS) corresponding to at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming an XML document to at least one XML document structured according to the at least one subset of the set of XML grammar rules; and a transformation engine for using the transformation rules of each retrieved GRSS for transforming data elements of the XML document to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.
  • GRSS grammar restriction style sheet
  • the method includes the steps of retrieving at least one GRSS corresponding to the at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming an XML document to at least one XML document structured according to the at least one subset of the set of XML grammar rules; and transforming data elements of the XML document using the transformation rules of the at least one retrieved GRSS to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.
  • FIG. 1 is a system diagram illustrating transformation of an XML document structured according to an XML grammar rule set to two XML documents structured according to one or more subsets of the XML grammar rule set in accordance with the present invention
  • FIG. 2 is a diagram of a server shown by FIG. 1 for transforming the XML document to the XML documents structured according to the one or more subsets of the XML grammar rule set in accordance with the present invention
  • FIG. 3 is a diagram of a thin device configured for receiving an XML document structured according to a subset of the XML grammar rule set in accordance with the present invention
  • FIG. 4 is a Venn diagram showing an XML grammar rule set and associated subsets of the XML grammar rule set.
  • FIG. 5 is a block diagram of an XML document transformation procedure in accordance with the present invention.
  • the system is designated generally by reference numeral 5 and includes an originating server 10 configured for transmitting an XML document DOC1 structured according to a set of XML grammar rules, such as XML 1.0, and routing information RI associated with DOC1 via a network 20, such as the Internet, to a destination server 30.
  • the destination server 30 includes software modules for activating an XML grammar restrictor module 40 to determine all destination computing devices of DOC 1.
  • the XML grammar restrictor module 40 uses the routing information RI for determining the destination computing devices of DOC 1.
  • the XML grammar restrictor module 40 also determines whether the destination computing devices of DOC 1 include a micro-parser configured for parsing XML documents according to one or more subsets of the set of XML grammar rules. If so, the destination server 30 provides a respective XML grammar restriction style sheet (GRSS) for each subset of the set of XML grammar rules and DOC1 to an Extensible Style Language Transformation (XSLT) engine 50.
  • GRSS XML grammar restriction style sheet
  • XSLT Extensible Style Language Transformation
  • the XSLT engine 50 transforms or translates document DOC1 into one or more documents DOC2, DOC3 using transformation rules provided by the GRSSs, such that DOC2, DOC3 are structured according to same or different subsets of XML grammar rules. It is to be understood that transforming or transformation refers to the translation of data elements of a document structured according to the XML grammar rule set into data elements structured according to a subset of the XML grammar rules set in accordance with transformation rule provided by a GRSS.
  • system 5 of the present invention can also transform an XML document structured according to a subset of the XML grammar rule set to an XML document structured according to a larger subset of the XML grammar rule set or the entire XML grammar rule set. That is, the system 5 can reverse transform XML documents. After the incoming XML document DOC1 is transformed to XML documents
  • DOC2, DOC3, the transformed documents DOC2, DOC3 are then transmitted to respective devices 60 according to the routing information RI associated with DOC1. That is, for example, DOC2 structured according to a first subset of the XML grammar rules is transmitted to one of the two devices 60 programmed with the first subset of the XML grammar rules; DOC3 which is structured according to a second subset of the XML grammar rules is transmitted to the other device 60 programmed with the second subset of XML grammar rules.
  • the destination server 30 is a server, such as a home server or an intermediary server, capable of accessing the network 20 for receiving DOC1.
  • the destination server 30 has software modules and hardware for communicating with devices 60 for transmitting
  • the destination server 30 includes at least one processor for executing programmable instructions of software modules stored therein for activating and operating the XML grammar restrictor module 40, the XSLT engine 50, and communication hardware for communicating with devices 60 and the network 20.
  • Devices 60 are thin devices or other devices having limited processing and storage resources, such as a wireless telephone, personal digital assistant (PDA), portable computer, set-top box, smart remote control, or other type of processing device having a micro-parser for parsing XML documents structured according to a subset of the XML grammar rule set.
  • Devices 60 include a processor, memory, and communication means for facilitating communication with the destination server 30 as is known in the art.
  • FIG. 2 illustrates the XML grammar restrictor module 40 and XSLT engine 50 of the destination server 30.
  • the XML grammar restrictor module 40 accesses the routing information RI associated with each received XML document, such as DOC1, and determines the destination device, e.g., devices 60, for each XML document according to the routing information RI.
  • the XML grammar restrictor module 40 further stores, or has access to, a collection of GRSSs, e.g., a database storing the GRSSs.
  • Each GRSS includes grammar transformation rules for a given subset of the XML grammar rule set for transforming an XML document structured according to the XML grammar rule set, such as DOCl in FIG.
  • the XML grammar restrictor module 40 provides a GRSS corresponding to that subset of the XML grammar rule set to the XSLT engine 50. That is, the XML grammar restrictor module 40 receives the incoming XML documents and their accompanying style sheets and determines a corresponding GRSS for the incoming XML documents based on the intended destination devices of the incoming XML documents.
  • the XML grammar restrictor module 40 retrieves a GRSS corresponding to a subset of the XML grammar rule set that is used by a micro-parser of a destination device of DOC 1.
  • the destination of the incoming XML document DOCl may be determined by the XML grammar restrictor module 40 using methods and protocols that are known in the art, such as by -the routing information RI associated with the incoming XML document DOCl, use of a gateway, use of a routing table, or according to content attached to the incoming XML document DOCl.
  • the routing information RI may be internal data, i.e., data within DOCl , external data associated with the incoming XML document DOCl, or data provided via a request/response sequence between the originating server 10 and the destination server 30.
  • the XML grammar restrictor module 40 determines if the destination device 60 uses a subset of the XML grammar rule set. If there is more than one destination device 60 for DOCl, the XML grammar rule subset that corresponds to each destination device 60 is determined. The XML grammar restrictor module 40 then accesses and retrieves the GRSS corresponding to the grammar rule subset that corresponds to each determined grammar rule subset and provides each GRSS to the XSLT engine 50 for transforming DOCl and outputting DOC2, DOC3 to the corresponding destination devices 60, as shown by FIG. 2.
  • the XML grammar restrictor module 40 retrieves and provides a GRSS to the XSLT engine 50 for each different subset for performing multiple processing routines, where each processing routine uses a different GRSS for transforming DOCl, until DOCl has been transformed according to grammar transformation rules provided by each retrieved GRSS. It is provided that the multiple processing routines can be performed simultaneously or sequentially by the XSLT engine 50.
  • the XML grammar restrictor module 40 provides a single GRSS to the XSLT engine 50, i.e., the GRSS corresponding to the subset of the XML grammar rule set programmed within each destination device 60.
  • the XSLT engine 50 parses and transforms DOCl and outputs DOC2, DOC3 which are structured according to the same subset of the XML grammar rule set.
  • DOC2, DOC3 are then transmitted to a respective destination device 60 by the destination server 30.
  • each XML document outputted by the destination server 30 is provided with a destination indicator, such as a headend, according to its associated routing information RI to indicate the intended destination device 60.
  • a destination indicator such as a headend
  • the DOCl is being routed to a destination device which uses the XML grammar rule set, i.e., not a subset of the XML grammar rule set, then the DOCl is provided to the XSLT engine 50 with the style sheet originally accompanying DOCl, either by the XML grammar restrictor module 40 or a module external to the XML grammar restrictor module 40.
  • a look-up table or some other mapping scheme as known in the art is used by the XML grammar restrictor module 40 to correlate the intended destination devices 60 of the received XML document DOCl with their respective subset of the XML grammar rule set.
  • the grammar restriction module 40 determines the subsets of the XML grammar rule set corresponding to the intended destination devices 60 of the received XML document DOCl
  • a GRSS corresponding each determined subset of the XML grammar rule set is determined using another look-up table.
  • the one or more GRSSs are then retrieved from the collection of GRSSs or database of GRSSs and provided to the XSLT engine 50.
  • the look-up tables are preferably stored within the destination server 30 or an external memory and accessed via the communication hardware of the destination server 30.
  • the XML grammar restrictor module 40 may reside within the destination server 30 or on a different server, such as an intermediary server between the originating server 10 and the destination server 30, so that it is stored and executed by at least one processor within the server on which the module 40 resides. It is contemplated that the XML grammar restrictor module 40 may be a set of instructions obtainable by a user, such as by purchasing a CD or downloading via the network 20 from a remote server.
  • the XSLT engine 50 includes a parser 52 and a transformation module 54, as is known in the art.
  • the parser 52 receives a document DOCl and an XSL style sheet structured in XML from the XML grammar restriction module 40 and parses the document and XSL style sheet according to the XML grammar rule set.
  • the XSLT engine 50 outputs the parsed document and the XSL style sheet to the transformation module 54.
  • the transformation module 54 receives the parsed XML document and an XSL style sheet, interprets the XSL style sheet, transforms the XML document based on the XSL style sheet, and outputs the transformed document.
  • the XSL style sheet is the GRSS provided by the XML grammar restrictor module 40 for transforming the XML document according to a subset of the XML grammar rule set.
  • FIG. 3 shows a device 60 having a micro-parser 62, an application programming interface (API) 64, and a program application 66.
  • the device 60 receives
  • DOC2 an XML document structured according to a subset of an XML grammar rule set.
  • a processor within the micro-parser 62 is programmed with the subset of the XML grammar rule set for parsing DOC2 and for outputting the parsed DOC2 to the API 64.
  • the API 64 is a commercially available API, such as a DOM or SAX API, which provides an interface between the micro-parser 62 and the program application 66.
  • the program application 66 is one or more applications that use data received from the micro-parser 62 for controlling an operation of the device 60 and/or performing an application.
  • the program application 66 may process data received from the micro-parser 62 via the API 64 for presenting the data in a visually perceptible manner on a display of the device 60, and/or in an audibly-perceptible manner using a speaker of the device 60.
  • each GRSS includes a set of instructions for transforming data structured in one format to another format, i.e., for implementing a transformation procedure 400 to transform data structured according to a full grammar rule set A to data structured according to a subset of the full grammar rule set A, e.g., subsets Bl- Bn as shown by the Venn diagram of FIG. 4.
  • the GRSS provides grammar transformation rules for transforming the received DOCl into DOC2 which is structured according to the subset Bn of the XML grammar rule set.
  • the subset of grammar rules Bn is the subset of grammar rules programmed within a micro-parser of a destination device 60 which is the intended destination device of DOC2.
  • the GRSS identifies each data element Epsilon in a document that does not comply with a grammar rule of subset Bn.
  • the transformation procedure 400 as performed by the XSLT engine translates or transforms each data element Epsilon that does not comply with a grammar rule of subset Bn into a data element F that complies with at least one grammar rule of subset Bn.
  • a sample incoming XML document structured according to an XML grammar rule set is the following:
  • the XML grammar restrictor module 40 and the XSLT engine 50 form an XML grammar restrictor.
  • the XML grammar restrictor includes a set of programmable instructions which are stored within a computer readable medium, such as a diskette and a CD, or a memory.
  • a controller or processor of a general purpose computer such as a PC or a server, is capable of running the XML grammar restrictor to retrieve at least one GRSS from the collection or database of GRSSs, and transform XML documents structured according to the XML grammar rule set to XML documents structured according to a subset of the XML grammar rule set as described above. It is contemplated that the collection or database of GRSSs is provided within the XML grammar restrictor.

Abstract

A method and system for transforming an XML document structured according to a set of XML grammar rules to at least one XML document structured according to at least one subset of the set of XML grammar rules. The system includes a controller capable of executing a set of programmable instructions for retrieving at least one grammar restriction style sheet (GRSS) corresponding to at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming an XML document to at least one XML document structured according to the at least one subset of the set of XML grammar rules; and a transformation engine for using the transformation rules of each retrieved GRSS for transforming data elements of the XML document to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.

Description

Method and system for transforming an XML document to at least one XML document structured according to a subset of a set of XML grammar rules
BACKGROUND OF THE INVENTION Technical Field
The present invention relates generally to data processing. Specifically, the present invention relates to a method and system for transforming an Extensible Markup Language (XML) document structured according to a set of XML grammar rules to at least one XML document structured according to a subset of the set of XML grammar rules. Background of the Related Art
Extensible Markup Language (XML) is emerging as a universal language for structuring documents for transmission via the World Wide Web (WWW). XML includes a set of XML grammar rules for structuring documents, primarily web-based documents, in order to provide extensibility, portability, and adaptability of such documents.
For example, XML 1.0 which includes a grammar rule set of over eighty grammar rules provides clients with increased document processing capabilities, such as quickly accessing specific data via the Internet in response to a search query and reducing the processing load on servers by performing less document searching routines to locate a specific document. Accordingly, XML is a tool that significantly reduces network data traffic and improves query search response times.
In order to process a document structured in XML, the XML document is first parsed by an XML parser. The XML parser is typically a set of programmable instructions stored within a computing device, such as a server or a PC. The XML parser extracts data elements of the XML document in accordance with the XML grammar rule set. Second, an Extensible Style Language (XSL) style sheet accompanying the XML document is accessed. The XSL style sheet sets forth instructions for retrieving selected extracted data elements of the XML document and reformatting them to another format for presentation thereof or transformation to web-based language, such as HTML.
The extracted data elements and the XSL style sheet are provided to an Extensible Style Language Transformation (XSLT) engine having software modules for transforming each extracted data element in accordance with the instructions set forth by the XSL style sheet. Personal digital assistants (PDAs), cellular telephones, set-top boxes, etc. capable of accessing the Internet or other network for allowing clients to engage in e- commerce and access data through wired or wireless network connections have limited processing and information storage resources. Hence, these computing devices, also known as thin devices, when receiving XML documents and XSL style sheets, e.g., via a network, typically do not have adequate resources for processing and storing the programmable instructions of an XML parser for parsing the received XML documents to extract data elements. They also typically do not have adequate resources for processing and storing the software modules of the XSLT engine for transforming the extracted data elements according to the instructions set forth by the XSL style sheet.
Accordingly, thin devices have been proposed where a micro-parser is provided therein for parsing the received XML documents to extract data elements. The micro-parser would contain programmable instructions indicative of only a subset of the XML grammar rule set to forego from over-loading the processing resources and from using too much of the storage resources of the thin device for storing the entire XML grammar rule set. Therefore, XML documents received by such a thin device would have to be structured according to the subset of the XML grammar rule set, i.e., the subset of grammar rules that the micro-parser of the thin device is programmed with, in order to enable the thin device to correctly parse and transform the incoming XML documents to a usable and understandable format.
It is, however, impractical and unrealistic to provide all thin devices with the same micro-parser. As such, it is envisioned that many thin devices would be brought to market where each thin device is likely to have a different micro-parser than another thin device, i.e., a micro-parser of a cellular telephone would be likely to be programmed with a different subset of the XML grammar rule set than a micro-parser of a PDA. For example, the cellular telephone is likely to have a micro-parser programmed with seven XML grammar rules and the PDA is likely to have a micro-parser programmed with twelve XML grammar rules.
Hence, an XML document having data structured in XML according to the full set of XML grammar rules is not likely to be correctly transformed or translated by computing devices which have micro-parsers programmed with only a subset of the full set of XML grammar rules. A need therefore exists for a method and system for correctly transforming an XML document structured according to a set of XML grammar rules to one or more XML documents structured according to one or more subsets of the set of XML grammar rules.
SUMMARY OF THE INVENTION
The present invention provides a method and system for transforming an XML document structured according to a set of XML grammar rules to at least one XML document structured according to at least one subset of the set of XML grammar rules. The system of the present invention includes a controller capable of executing a set of programmable instructions for retrieving at least one grammar restriction style sheet (GRSS) corresponding to at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming an XML document to at least one XML document structured according to the at least one subset of the set of XML grammar rules; and a transformation engine for using the transformation rules of each retrieved GRSS for transforming data elements of the XML document to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.
The method includes the steps of retrieving at least one GRSS corresponding to the at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming an XML document to at least one XML document structured according to the at least one subset of the set of XML grammar rules; and transforming data elements of the XML document using the transformation rules of the at least one retrieved GRSS to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.
DETAILED DESCRIPTION OF THE DRAWINGS
The invention is further explained by way of example and with reference to the accompanying drawings, wherein:
FIG. 1 is a system diagram illustrating transformation of an XML document structured according to an XML grammar rule set to two XML documents structured according to one or more subsets of the XML grammar rule set in accordance with the present invention; FIG. 2 is a diagram of a server shown by FIG. 1 for transforming the XML document to the XML documents structured according to the one or more subsets of the XML grammar rule set in accordance with the present invention;
FIG. 3 is a diagram of a thin device configured for receiving an XML document structured according to a subset of the XML grammar rule set in accordance with the present invention;
FIG. 4 is a Venn diagram showing an XML grammar rule set and associated subsets of the XML grammar rule set; and
FIG. 5 is a block diagram of an XML document transformation procedure in accordance with the present invention.
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
With reference to FIG. 1, there is shown a system according to the present invention. The system is designated generally by reference numeral 5 and includes an originating server 10 configured for transmitting an XML document DOC1 structured according to a set of XML grammar rules, such as XML 1.0, and routing information RI associated with DOC1 via a network 20, such as the Internet, to a destination server 30. The destination server 30 includes software modules for activating an XML grammar restrictor module 40 to determine all destination computing devices of DOC 1. The XML grammar restrictor module 40 uses the routing information RI for determining the destination computing devices of DOC 1.
The XML grammar restrictor module 40 also determines whether the destination computing devices of DOC 1 include a micro-parser configured for parsing XML documents according to one or more subsets of the set of XML grammar rules. If so, the destination server 30 provides a respective XML grammar restriction style sheet (GRSS) for each subset of the set of XML grammar rules and DOC1 to an Extensible Style Language Transformation (XSLT) engine 50.
The XSLT engine 50 transforms or translates document DOC1 into one or more documents DOC2, DOC3 using transformation rules provided by the GRSSs, such that DOC2, DOC3 are structured according to same or different subsets of XML grammar rules. It is to be understood that transforming or transformation refers to the translation of data elements of a document structured according to the XML grammar rule set into data elements structured according to a subset of the XML grammar rules set in accordance with transformation rule provided by a GRSS. It is contemplated that the system 5 of the present invention can also transform an XML document structured according to a subset of the XML grammar rule set to an XML document structured according to a larger subset of the XML grammar rule set or the entire XML grammar rule set. That is, the system 5 can reverse transform XML documents. After the incoming XML document DOC1 is transformed to XML documents
DOC2, DOC3, the transformed documents DOC2, DOC3 are then transmitted to respective devices 60 according to the routing information RI associated with DOC1. That is, for example, DOC2 structured according to a first subset of the XML grammar rules is transmitted to one of the two devices 60 programmed with the first subset of the XML grammar rules; DOC3 which is structured according to a second subset of the XML grammar rules is transmitted to the other device 60 programmed with the second subset of XML grammar rules.
The destination server 30 is a server, such as a home server or an intermediary server, capable of accessing the network 20 for receiving DOC1. The destination server 30 has software modules and hardware for communicating with devices 60 for transmitting
DOC2, DOC3 thereto. Communication between the destination server 30 and devices 60 may be through wired connections, wireless connections, one or more networks, or combinations thereof. The destination server 30 includes at least one processor for executing programmable instructions of software modules stored therein for activating and operating the XML grammar restrictor module 40, the XSLT engine 50, and communication hardware for communicating with devices 60 and the network 20.
Devices 60 are thin devices or other devices having limited processing and storage resources, such as a wireless telephone, personal digital assistant (PDA), portable computer, set-top box, smart remote control, or other type of processing device having a micro-parser for parsing XML documents structured according to a subset of the XML grammar rule set. Devices 60 include a processor, memory, and communication means for facilitating communication with the destination server 30 as is known in the art.
FIG. 2 illustrates the XML grammar restrictor module 40 and XSLT engine 50 of the destination server 30. As mentioned above, the XML grammar restrictor module 40 accesses the routing information RI associated with each received XML document, such as DOC1, and determines the destination device, e.g., devices 60, for each XML document according to the routing information RI. The XML grammar restrictor module 40 further stores, or has access to, a collection of GRSSs, e.g., a database storing the GRSSs. Each GRSS includes grammar transformation rules for a given subset of the XML grammar rule set for transforming an XML document structured according to the XML grammar rule set, such as DOCl in FIG. 1, into a document structured according to the given subset of the XML grammar rule set. If the destination device of an XML document is programmed to use a subset of the XML grammar rule set for transforming received XML documents to a usable and understandable format, the XML grammar restrictor module 40 provides a GRSS corresponding to that subset of the XML grammar rule set to the XSLT engine 50. That is, the XML grammar restrictor module 40 receives the incoming XML documents and their accompanying style sheets and determines a corresponding GRSS for the incoming XML documents based on the intended destination devices of the incoming XML documents.
For example, during operation, with reference to FIG.l, it is provided that for DOCl received by the destination server 30, the XML grammar restrictor module 40 retrieves a GRSS corresponding to a subset of the XML grammar rule set that is used by a micro-parser of a destination device of DOC 1. The destination of the incoming XML document DOCl may be determined by the XML grammar restrictor module 40 using methods and protocols that are known in the art, such as by -the routing information RI associated with the incoming XML document DOCl, use of a gateway, use of a routing table, or according to content attached to the incoming XML document DOCl. The routing information RI may be internal data, i.e., data within DOCl , external data associated with the incoming XML document DOCl, or data provided via a request/response sequence between the originating server 10 and the destination server 30.
Upon determining the destination of DOCl, the XML grammar restrictor module 40 determines if the destination device 60 uses a subset of the XML grammar rule set. If there is more than one destination device 60 for DOCl, the XML grammar rule subset that corresponds to each destination device 60 is determined. The XML grammar restrictor module 40 then accesses and retrieves the GRSS corresponding to the grammar rule subset that corresponds to each determined grammar rule subset and provides each GRSS to the XSLT engine 50 for transforming DOCl and outputting DOC2, DOC3 to the corresponding destination devices 60, as shown by FIG. 2.
Accordingly, if the received XML document DOCl is intended for transmission to multiple destination devices 60 using different XML grammar rule subsets of the XML grammar rule set, the XML grammar restrictor module 40 retrieves and provides a GRSS to the XSLT engine 50 for each different subset for performing multiple processing routines, where each processing routine uses a different GRSS for transforming DOCl, until DOCl has been transformed according to grammar transformation rules provided by each retrieved GRSS. It is provided that the multiple processing routines can be performed simultaneously or sequentially by the XSLT engine 50. If DOCl is being routed to one or more destination devices 60 which are programmed with the same subset of the XML grammar rule set, the XML grammar restrictor module 40 provides a single GRSS to the XSLT engine 50, i.e., the GRSS corresponding to the subset of the XML grammar rule set programmed within each destination device 60. The XSLT engine 50 then parses and transforms DOCl and outputs DOC2, DOC3 which are structured according to the same subset of the XML grammar rule set. DOC2, DOC3 are then transmitted to a respective destination device 60 by the destination server 30.
It is provided that each XML document outputted by the destination server 30 is provided with a destination indicator, such as a headend, according to its associated routing information RI to indicate the intended destination device 60.
If the DOCl is being routed to a destination device which uses the XML grammar rule set, i.e., not a subset of the XML grammar rule set, then the DOCl is provided to the XSLT engine 50 with the style sheet originally accompanying DOCl, either by the XML grammar restrictor module 40 or a module external to the XML grammar restrictor module 40.
A look-up table or some other mapping scheme as known in the art is used by the XML grammar restrictor module 40 to correlate the intended destination devices 60 of the received XML document DOCl with their respective subset of the XML grammar rule set. Once the grammar restriction module 40 determines the subsets of the XML grammar rule set corresponding to the intended destination devices 60 of the received XML document DOCl, a GRSS corresponding each determined subset of the XML grammar rule set is determined using another look-up table. The one or more GRSSs are then retrieved from the collection of GRSSs or database of GRSSs and provided to the XSLT engine 50. The look-up tables are preferably stored within the destination server 30 or an external memory and accessed via the communication hardware of the destination server 30.
The XML grammar restrictor module 40 may reside within the destination server 30 or on a different server, such as an intermediary server between the originating server 10 and the destination server 30, so that it is stored and executed by at least one processor within the server on which the module 40 resides. It is contemplated that the XML grammar restrictor module 40 may be a set of instructions obtainable by a user, such as by purchasing a CD or downloading via the network 20 from a remote server.
With continued reference to FIG. 2, the XSLT engine 50 includes a parser 52 and a transformation module 54, as is known in the art. The parser 52 receives a document DOCl and an XSL style sheet structured in XML from the XML grammar restriction module 40 and parses the document and XSL style sheet according to the XML grammar rule set. The XSLT engine 50 outputs the parsed document and the XSL style sheet to the transformation module 54.
The transformation module 54 receives the parsed XML document and an XSL style sheet, interprets the XSL style sheet, transforms the XML document based on the XSL style sheet, and outputs the transformed document. In the present invention, the XSL style sheet is the GRSS provided by the XML grammar restrictor module 40 for transforming the XML document according to a subset of the XML grammar rule set.
FIG. 3 shows a device 60 having a micro-parser 62, an application programming interface (API) 64, and a program application 66. The device 60 receives
DOC2, an XML document structured according to a subset of an XML grammar rule set. A processor within the micro-parser 62 is programmed with the subset of the XML grammar rule set for parsing DOC2 and for outputting the parsed DOC2 to the API 64. The API 64 is a commercially available API, such as a DOM or SAX API, which provides an interface between the micro-parser 62 and the program application 66. The program application 66 is one or more applications that use data received from the micro-parser 62 for controlling an operation of the device 60 and/or performing an application. For example, the program application 66 may process data received from the micro-parser 62 via the API 64 for presenting the data in a visually perceptible manner on a display of the device 60, and/or in an audibly-perceptible manner using a speaker of the device 60.
With reference to FIGS. 4 and 5, each GRSS includes a set of instructions for transforming data structured in one format to another format, i.e., for implementing a transformation procedure 400 to transform data structured according to a full grammar rule set A to data structured according to a subset of the full grammar rule set A, e.g., subsets Bl- Bn as shown by the Venn diagram of FIG. 4. As an example, the GRSS provides grammar transformation rules for transforming the received DOCl into DOC2 which is structured according to the subset Bn of the XML grammar rule set. The subset of grammar rules Bn is the subset of grammar rules programmed within a micro-parser of a destination device 60 which is the intended destination device of DOC2. As a further example, with reference to FIG. 5, the GRSS identifies each data element Epsilon in a document that does not comply with a grammar rule of subset Bn. The transformation procedure 400 as performed by the XSLT engine translates or transforms each data element Epsilon that does not comply with a grammar rule of subset Bn into a data element F that complies with at least one grammar rule of subset Bn.
A sample incoming XML document structured according to an XML grammar rule set is the following:
<NFLResults From="08/27/00" To="09/02/00">
<Team Name="Atlanta"> <Games>
<Win>
<Against>San Francisco</Against> <Score>36/8</Score> </Win> <Lose/>
</Games> </Team>
</NFLResults>
The same document is shown below after being transformed by the XSLT engine 50 via the transformation procedure 400, using a GRSS provided by the XML grammar restriction module 40 that corresponds to a subset of the XML grammar rule set, in accordance with the present invention. The changes to the document are shown in bold. <NFLResults>
<From>08/27/00< From> <To>09/02/00</To> <Team>
<Name>Atlanta</Name> <Games>
<Win>
<Against>San Francisco</Against> <Score>36/28</Score> </Win> <Lose></Lose>
</Games> </Team>
</NFLResults>
It is provided that the XML grammar restrictor module 40 and the XSLT engine 50 form an XML grammar restrictor. The XML grammar restrictor includes a set of programmable instructions which are stored within a computer readable medium, such as a diskette and a CD, or a memory. A controller or processor of a general purpose computer, such as a PC or a server, is capable of running the XML grammar restrictor to retrieve at least one GRSS from the collection or database of GRSSs, and transform XML documents structured according to the XML grammar rule set to XML documents structured according to a subset of the XML grammar rule set as described above. It is contemplated that the collection or database of GRSSs is provided within the XML grammar restrictor. It is understood that various modifications may be made to the embodiments disclosed herein and that the above description should not be construed as limiting, but merely as exemplary of preferred embodiments. Accordingly, those skilled in the art will envision other modifications within the scope and spirit of the claims appended hereto.

Claims

CLAIMS:
1. A method for transforming an XML document structured according to a set of
XML grammar rules into at least one XML document structured according to at least one subset of the set of XML grammar rules, the method comprising the steps of: retrieving at least one grammar restriction style sheet (GRSS) corresponding to the at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules; and transforming data elements of the XML document using the transformation rules of the at least one retrieved GRSS to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.
2. The method according to claim 1 , wherein the steps of retrieving and transforming are performed by a server having an XML grammar restrictor module and an Extensible Style Language Transformation (XSLT) engine.
3. The method according to claim 2, wherein the XML grammar restrictor module and the XSLT engine form an XML grammar restrictor.
4. The method according to claim 3, wherein the XML grammar restrictor is stored within on at least one computer readable medium.
5. The method according to claim 1, wherein the step of retrieving at least one
GRSS includes the step of accessing a database of GRSSs.
6. The method according to claim 1, wherein the step of retrieving at least one grammar restriction style sheet (GRSS) corresponding to the at least one subset of a set of XML grammar rules includes the steps of: determining at least one destination device for the XML document; determining for the at least one destination device a corresponding subset of the XML grammar rule set; and retrieving a GRSS corresponding to the corresponding subset of the XML grammar rule set.
7. The method according to claim 6, wherein the step of determining for the at least one destination device a corresponding subset of the XML grammar rule set includes the step of using a look-up table to correlate the at least one destination device with the corresponding subset of the XML grammar rule set.
8. The method according to claim 6, wherein the step of retrieving a GRSS corresponding to the corresponding subset of the XML grammar rule set includes the step of using a look-up table to correlate the corresponding subset of the XML grammar rule set with the GRSS.
9. The method according to claim 1, wherein the step of using the transformation rules of each retrieved GRSS for transforming data elements of the XML document includes the steps of: identifying data elements of the XML document that are not structured according to grammar rules of the at least one subset of the set of XML grammar rules; and transforming the identified data elements into data elements that are structured according to grammar rules of the at least one subset of the set of XML grammar rules.
10. A system for transforming an XML document structured according to a set of
XML grammar rules into at least one XML document structured according to at least one subset of the set of XML grammar rules, the system comprising: a controller capable of executing a set of programmable instructions for retrieving at least one grammar restriction system sheet (GRSS) corresponding to at least one subset of a set of XML grammar rules, where the at least one GRSS includes transformation rules for transforming an XML document to at least one XML document structured according to the at least one subset of the set of XML grammar rules; and a transformation engine for using the transformation rules of each retrieved GRSS for transforming data elements of the XML document to data elements structured according to the at least one subset of the set of XML grammar rules to transform the XML document to the at least one XML document structured according to the at least one subset of the set of XML grammar rules.
11. The system according to claim 10, wherein the controller is located within a server having an XML grammar restrictor module and an Extensible Style Language
Transformation (XSLT) engine.
12. The system according to claim 11, wherein the XML grammar restrictor module and the XSLT engine form an XML grammar restrictor.
13. The system according to claim 10, wherein the controller comprises: means for determining at least one destination device for the XML document; means for determining for the at least one destination device a corresponding subset of the XML grammar rule set; and means for retrieving a GRSS corresponding to the corresponding subset of the
XML grammar rule set.
14. The system according to claim 13, wherein the means for determining for the at least one destination device a corresponding subset of the XML grammar rule set comprises means for using a look-up table to correlate the at least one destination device with the corresponding subset of the XML grammar rule set.
15. The system according to claim 13, wherein the means for retrieving a GRSS corresponding to the corresponding subset of the XML grammar rule set comprises means for using a look-up table to correlate the corresponding subset of the XML grammar rule set with the GRSS.
16. The system according to claim 10, wherein the transformation engine comprises: means for identifying data elements of the XML document that are not structured according to grammar rules of the at least one subset of the set of XML grammar rules; and means for transforming the identified data elements into data elements that are structured according to grammar rules of the at least one subset of the set of XML grammar rules.
17. A grammar restrictor for transforming a document structured according to a set of grammar rules into at least one document structured according to at least one subset of the set of grammar rules, the grammar restrictor comprising: a software module for retrieving at least one grammar restriction style sheet corresponding to the at least one subset of the set of grammar rules, where the at least one style sheet includes transformation rules for transforming the document to the at least one document structured according to the at least one subset of the set of grammar rules; and a software module for providing the retrieved at least one style sheet to a transformation engine for transforming data elements of the document using the transformation rules of the at least one retrieved style sheet to data elements structured according to the at least one subset of the set of grammar rules to transform the document to the at least one document structured according to the at least one subset of the set of grammar rules.
18. The grammar restrictor according to claim 17, wherein the at least one retrieved style sheet sets forth XML transformation rules for transforming an XML document structured according to a set of XML grammar rules into at least one document structured according to at least one subset of the set of XML grammar rules.
PCT/IB2002/002395 2001-06-28 2002-06-20 Method and system for transforming an xml document according to subset of xml grammar rules WO2003003240A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR10-2003-7003088A KR20040014999A (en) 2001-06-28 2002-06-20 Method and system for transforming an xml document to at least one xml document structured according to a subset of a set of xml grammar rules
JP2003509347A JP2004537108A (en) 2001-06-28 2002-06-20 Method and system for transforming an XML document into at least one XML document configured according to a subset of an XML grammar rule set
EP02726399A EP1466266A2 (en) 2001-06-28 2002-06-20 Method and system for transforming an xml document according to a subset of xml grammar rules

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/894,103 US6829745B2 (en) 2001-06-28 2001-06-28 Method and system for transforming an XML document to at least one XML document structured according to a subset of a set of XML grammar rules
US09/894,103 2001-06-28

Publications (2)

Publication Number Publication Date
WO2003003240A2 true WO2003003240A2 (en) 2003-01-09
WO2003003240A3 WO2003003240A3 (en) 2004-07-22

Family

ID=25402607

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2002/002395 WO2003003240A2 (en) 2001-06-28 2002-06-20 Method and system for transforming an xml document according to subset of xml grammar rules

Country Status (6)

Country Link
US (1) US6829745B2 (en)
EP (1) EP1466266A2 (en)
JP (1) JP2004537108A (en)
KR (1) KR20040014999A (en)
CN (1) CN1592902A (en)
WO (1) WO2003003240A2 (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1920350A1 (en) * 2005-08-30 2008-05-14 Microsoft Corporation Markup based extensibility for user interfaces
JP2010124482A (en) * 2010-01-08 2010-06-03 Ntt Docomo Inc Structured document adaptation apparatus
US7886290B2 (en) 2005-06-16 2011-02-08 Microsoft Corporation Cross version and cross product user interface
US8117542B2 (en) 2004-08-16 2012-02-14 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US8201103B2 (en) 2007-06-29 2012-06-12 Microsoft Corporation Accessing an out-space user interface for a document editor program
US8255828B2 (en) 2004-08-16 2012-08-28 Microsoft Corporation Command user interface for displaying selectable software functionality controls
US8302014B2 (en) 2010-06-11 2012-10-30 Microsoft Corporation Merging modifications to user interface components while preserving user customizations
US8402096B2 (en) 2008-06-24 2013-03-19 Microsoft Corporation Automatic conversation techniques
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US8605090B2 (en) 2006-06-01 2013-12-10 Microsoft Corporation Modifying and formatting a chart using pictorially provided chart elements
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
US8689137B2 (en) 2005-09-07 2014-04-01 Microsoft Corporation Command user interface for displaying selectable functionality controls in a database application
US8762880B2 (en) 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
US8799808B2 (en) 2003-07-01 2014-08-05 Microsoft Corporation Adaptive multi-line view user interface
US8799353B2 (en) 2009-03-30 2014-08-05 Josef Larsson Scope-based extensibility for control surfaces
US8839139B2 (en) 2004-09-30 2014-09-16 Microsoft Corporation User interface for providing task management and calendar information
US9015621B2 (en) 2004-08-16 2015-04-21 Microsoft Technology Licensing, Llc Command user interface for displaying multiple sections of software functionality controls
US9015624B2 (en) 2004-08-16 2015-04-21 Microsoft Corporation Floating command object
US9046983B2 (en) 2009-05-12 2015-06-02 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries
US9098837B2 (en) 2003-06-26 2015-08-04 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US9542667B2 (en) 2005-09-09 2017-01-10 Microsoft Technology Licensing, Llc Navigating messages within a thread
US9588781B2 (en) 2008-03-31 2017-03-07 Microsoft Technology Licensing, Llc Associating command surfaces with multiple active components
US9665850B2 (en) 2008-06-20 2017-05-30 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US9690448B2 (en) 2004-08-16 2017-06-27 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US9727989B2 (en) 2006-06-01 2017-08-08 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US10482429B2 (en) 2003-07-01 2019-11-19 Microsoft Technology Licensing, Llc Automatic grouping of electronic mail

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2285877A1 (en) * 1999-10-15 2001-04-15 Ibm Canada Limited-Ibm Canada Limitee System and method for capturing document style by example
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
GB0107766D0 (en) * 2001-03-28 2001-05-16 Hewlett Packard Co Improvements relating to developing documents
GB0107784D0 (en) * 2001-03-28 2001-05-16 Hewlett Packard Co Improvement relating to developing documents
US8181164B1 (en) 2001-06-29 2012-05-15 Versata Development Group, Inc. Method and apparatus for extensibility of user interface binding definitions
US7016963B1 (en) * 2001-06-29 2006-03-21 Glow Designs, Llc Content management and transformation system for digital content
US20050086584A1 (en) * 2001-07-09 2005-04-21 Microsoft Corporation XSL transform
US7284196B2 (en) * 2001-10-05 2007-10-16 Vitria Technology, Inc. Vocabulary and syntax based data transformation
US7644014B2 (en) * 2001-10-17 2010-01-05 Sun Microsystems, Inc. Document exchange framework for automated extensible markup language data in an e-procurement system and method
US20040039720A1 (en) * 2001-12-31 2004-02-26 Hodges Donna K. Method for providing platform independent business rules
US7032167B1 (en) 2002-02-14 2006-04-18 Cisco Technology, Inc. Method and apparatus for a document parser specification
US8032828B2 (en) * 2002-03-04 2011-10-04 Hewlett-Packard Development Company, L.P. Method and system of document transformation between a source extensible markup language (XML) schema and a target XML schema
US7240126B1 (en) * 2002-03-05 2007-07-03 Andrew Cleasby Method and system for parsing for use in a server and web browser
US7350698B2 (en) * 2002-03-15 2008-04-01 Sun Microsystems, Inc. Line item approval processing in an electronic purchasing system and method
US7810024B1 (en) 2002-03-25 2010-10-05 Adobe Systems Incorporated Efficient access to text-based linearized graph data
US8667390B2 (en) 2002-03-25 2014-03-04 Adobe Systems Incorporated Asynchronous access to structured data
US7076729B2 (en) * 2002-05-09 2006-07-11 International Business Machines Corporation Graphical specification of XML to XML transformation rules
US20040205469A1 (en) * 2002-06-19 2004-10-14 Mellor Nathan D. Method for processing a rule using computer-independent program instructions and computer for use therewith
US7584419B1 (en) 2002-06-28 2009-09-01 Microsoft Corporation Representing non-structured features in a well formed document
US7533335B1 (en) 2002-06-28 2009-05-12 Microsoft Corporation Representing fields in a markup language document
US7562295B1 (en) 2002-06-28 2009-07-14 Microsoft Corporation Representing spelling and grammatical error state in an XML document
US7650566B1 (en) 2002-06-28 2010-01-19 Microsoft Corporation Representing list definitions and instances in a markup language document
US7565603B1 (en) * 2002-06-28 2009-07-21 Microsoft Corporation Representing style information in a markup language document
US7523394B2 (en) * 2002-06-28 2009-04-21 Microsoft Corporation Word-processing document stored in a single XML file that may be manipulated by applications that understand XML
US7607081B1 (en) 2002-06-28 2009-10-20 Microsoft Corporation Storing document header and footer information in a markup language document
US20040012627A1 (en) * 2002-07-17 2004-01-22 Sany Zakharia Configurable browser for adapting content to diverse display types
US7721202B2 (en) * 2002-08-16 2010-05-18 Open Invention Network, Llc XML streaming transformer
US7831905B1 (en) * 2002-11-22 2010-11-09 Sprint Spectrum L.P. Method and system for creating and providing web-based documents to information devices
US7774831B2 (en) * 2002-12-24 2010-08-10 International Business Machines Corporation Methods and apparatus for processing markup language messages in a network
US20040177315A1 (en) 2003-03-03 2004-09-09 International Business Machines Corporation Structured document bounding language
US7213201B2 (en) 2003-03-03 2007-05-01 International Business Machines Corporation Meta editor for structured documents
US7461337B2 (en) * 2003-03-12 2008-12-02 International Business Machines Corporation Exception markup documents
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7275216B2 (en) 2003-03-24 2007-09-25 Microsoft Corporation System and method for designing electronic forms and hierarchical schemas
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US20040194016A1 (en) * 2003-03-28 2004-09-30 International Business Machines Corporation Dynamic data migration for structured markup language schema changes
US8127224B2 (en) 2003-06-11 2012-02-28 Wtvii, Inc. System for creating and editing mark up language forms and documents
US7406660B1 (en) * 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US9378187B2 (en) 2003-12-11 2016-06-28 International Business Machines Corporation Creating a presentation document
US7430707B2 (en) 2004-01-13 2008-09-30 International Business Machines Corporation Differential dynamic content delivery with device controlling action
US7571380B2 (en) 2004-01-13 2009-08-04 International Business Machines Corporation Differential dynamic content delivery with a presenter-alterable session copy of a user profile
US7890848B2 (en) 2004-01-13 2011-02-15 International Business Machines Corporation Differential dynamic content delivery with alternative content presentation
US8499232B2 (en) 2004-01-13 2013-07-30 International Business Machines Corporation Differential dynamic content delivery with a participant alterable session copy of a user profile
US7827239B2 (en) 2004-04-26 2010-11-02 International Business Machines Corporation Dynamic media content for collaborators with client environment information in dynamic client contexts
US7519683B2 (en) 2004-04-26 2009-04-14 International Business Machines Corporation Dynamic media content for collaborators with client locations in dynamic client contexts
WO2005111824A2 (en) * 2004-05-19 2005-11-24 Silverkite Inc. Method and system for processing of text content
US8185814B2 (en) 2004-07-08 2012-05-22 International Business Machines Corporation Differential dynamic delivery of content according to user expressions of interest
US7487208B2 (en) 2004-07-08 2009-02-03 International Business Machines Corporation Differential dynamic content delivery to alternate display device locations
US7426538B2 (en) * 2004-07-13 2008-09-16 International Business Machines Corporation Dynamic media content for collaborators with VOIP support for client communications
US20060015557A1 (en) * 2004-07-13 2006-01-19 International Business Machines Corporation Dynamic media content for collaborator groups
US9167087B2 (en) 2004-07-13 2015-10-20 International Business Machines Corporation Dynamic media content for collaborators including disparate location representations
US7644358B2 (en) * 2004-11-01 2010-01-05 Sap Ag Usability of a portal application
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
US20060168511A1 (en) * 2005-01-21 2006-07-27 International Business Machines Corporation Method of passing information from a preprocessor to a parser
US8090873B1 (en) * 2005-03-14 2012-01-03 Oracle America, Inc. Methods and systems for high throughput information refinement
US8010515B2 (en) 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
WO2006116649A2 (en) * 2005-04-27 2006-11-02 Intel Corporation Parser for structured document
US20100077295A1 (en) * 2005-06-24 2010-03-25 Justsystems Corporation Document processing device and document processing module
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
US8949710B2 (en) * 2005-07-12 2015-02-03 Alcatel Lucent Grammar and method for integrating XML data from multiple sources
US7921137B2 (en) * 2005-07-18 2011-04-05 Sap Ag Methods and systems for providing semantic primitives
US7665016B2 (en) * 2005-11-14 2010-02-16 Sun Microsystems, Inc. Method and apparatus for virtualized XML parsing
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US8984397B2 (en) * 2005-12-15 2015-03-17 Xerox Corporation Architecture for arbitrary extensible markup language processing engine
US8010343B2 (en) * 2005-12-15 2011-08-30 Nuance Communications, Inc. Disambiguation systems and methods for use in generating grammars
US9286272B2 (en) * 2005-12-22 2016-03-15 Xerox Corporation Method for transformation of an extensible markup language vocabulary to a generic document structure format
WO2007117298A2 (en) * 2005-12-30 2007-10-18 Public Display, Inc. Event data translation system
US20070192823A1 (en) * 2006-02-09 2007-08-16 Novell, Inc. Policy administration and provisioning
US10394849B2 (en) 2006-09-18 2019-08-27 EMC IP Holding Company LLC Cascaded discovery of information environment
US7949949B2 (en) * 2006-11-20 2011-05-24 Intentional Software Corporation Domain transformation languages
US20080134077A1 (en) * 2006-12-05 2008-06-05 Sap Ag Chameleon graphic user interface
US20070150494A1 (en) * 2006-12-14 2007-06-28 Xerox Corporation Method for transformation of an extensible markup language vocabulary to a generic document structure format
US20090044101A1 (en) * 2007-08-07 2009-02-12 Wtviii, Inc. Automated system and method for creating minimal markup language schemas for a framework of markup language schemas
US8266630B2 (en) * 2007-09-03 2012-09-11 International Business Machines Corporation High-performance XML processing in a common event infrastructure
US9461890B1 (en) * 2007-09-28 2016-10-04 Emc Corporation Delegation of data management policy in an information management system
JP5381009B2 (en) * 2008-10-20 2014-01-08 セイコーエプソン株式会社 Device control system
JP5478936B2 (en) * 2009-05-13 2014-04-23 キヤノン株式会社 Information processing apparatus and information processing method
JP2012247916A (en) * 2011-05-26 2012-12-13 ▲高▼木 哲夫 Instruction manual generation support device, instruction manual generation support method, and instruction manual generation support program
US8650207B2 (en) * 2011-12-02 2014-02-11 Microsoft Corporation Inductive synthesis of table-based string transformations
KR101416712B1 (en) * 2012-07-12 2014-07-09 김영근 Method For Implementation Of XML Document With Formal Data and Informal Data
US11393463B2 (en) * 2019-04-19 2022-07-19 Soundhound, Inc. System and method for controlling an application using natural language communication

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2346238A (en) * 1999-01-29 2000-08-02 Ibm Tailoring Web page content in HTML format for display, using XML tools
WO2000056033A1 (en) * 1999-03-17 2000-09-21 Oracle Corporation Providing clients with services that retrieve data from data sources that do not necessarily support the format required by the clients

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230173B1 (en) * 1995-07-17 2001-05-08 Microsoft Corporation Method for creating structured documents in a publishing system
US6182029B1 (en) * 1996-10-28 2001-01-30 The Trustees Of Columbia University In The City Of New York System and method for language extraction and encoding utilizing the parsing of text data in accordance with domain parameters
US6083276A (en) * 1998-06-11 2000-07-04 Corel, Inc. Creating and configuring component-based applications using a text-based descriptive attribute grammar
US6336214B1 (en) * 1998-11-10 2002-01-01 International Business Machines Corporation System and method for automatically generating browsable language grammars
US6507857B1 (en) * 1999-03-12 2003-01-14 Sun Microsystems, Inc. Extending the capabilities of an XSL style sheet to include components for content transformation
US6519260B1 (en) * 1999-03-17 2003-02-11 Telefonaktiebolaget Lm Ericsson (Publ) Reduced delay priority for comfort noise
US6446110B1 (en) * 1999-04-05 2002-09-03 International Business Machines Corporation Method and apparatus for representing host datastream screen image information using markup languages
US6675370B1 (en) * 2000-02-02 2004-01-06 International Business Machines Corporation System and method for imbedding hyperlinked language grammar notation in a “literate” programming environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2346238A (en) * 1999-01-29 2000-08-02 Ibm Tailoring Web page content in HTML format for display, using XML tools
WO2000056033A1 (en) * 1999-03-17 2000-09-21 Oracle Corporation Providing clients with services that retrieve data from data sources that do not necessarily support the format required by the clients

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ANDRIVET ET AL: "A SIMPLE XML PARSER" C/C++ USERS JOURNAL, R&D PUBLICATIONS, LAWRENCE, KS,, US, vol. 17, no. 7, July 1999 (1999-07), pages 22,24,26-28,30,32, XP008015172 ISSN: 1075-2838 *

Cited By (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715678B2 (en) 2003-06-26 2017-07-25 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US9098837B2 (en) 2003-06-26 2015-08-04 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US8799808B2 (en) 2003-07-01 2014-08-05 Microsoft Corporation Adaptive multi-line view user interface
US10482429B2 (en) 2003-07-01 2019-11-19 Microsoft Technology Licensing, Llc Automatic grouping of electronic mail
US9864489B2 (en) 2004-08-16 2018-01-09 Microsoft Corporation Command user interface for displaying multiple sections of software functionality controls
US8117542B2 (en) 2004-08-16 2012-02-14 Microsoft Corporation User interface for displaying selectable software functionality controls that are contextually relevant to a selected object
US9223477B2 (en) 2004-08-16 2015-12-29 Microsoft Technology Licensing, Llc Command user interface for displaying selectable software functionality controls
US9015624B2 (en) 2004-08-16 2015-04-21 Microsoft Corporation Floating command object
US8255828B2 (en) 2004-08-16 2012-08-28 Microsoft Corporation Command user interface for displaying selectable software functionality controls
US10635266B2 (en) 2004-08-16 2020-04-28 Microsoft Technology Licensing, Llc User interface for displaying selectable software functionality controls that are relevant to a selected object
US10521081B2 (en) 2004-08-16 2019-12-31 Microsoft Technology Licensing, Llc User interface for displaying a gallery of formatting options
US9645698B2 (en) 2004-08-16 2017-05-09 Microsoft Technology Licensing, Llc User interface for displaying a gallery of formatting options applicable to a selected object
US9690448B2 (en) 2004-08-16 2017-06-27 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US9015621B2 (en) 2004-08-16 2015-04-21 Microsoft Technology Licensing, Llc Command user interface for displaying multiple sections of software functionality controls
US9690450B2 (en) 2004-08-16 2017-06-27 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US10437431B2 (en) 2004-08-16 2019-10-08 Microsoft Technology Licensing, Llc Command user interface for displaying selectable software functionality controls
US8839139B2 (en) 2004-09-30 2014-09-16 Microsoft Corporation User interface for providing task management and calendar information
US7886290B2 (en) 2005-06-16 2011-02-08 Microsoft Corporation Cross version and cross product user interface
EP1920350A1 (en) * 2005-08-30 2008-05-14 Microsoft Corporation Markup based extensibility for user interfaces
EP1920350A4 (en) * 2005-08-30 2008-12-31 Microsoft Corp Markup based extensibility for user interfaces
US8239882B2 (en) 2005-08-30 2012-08-07 Microsoft Corporation Markup based extensibility for user interfaces
US8689137B2 (en) 2005-09-07 2014-04-01 Microsoft Corporation Command user interface for displaying selectable functionality controls in a database application
US9542667B2 (en) 2005-09-09 2017-01-10 Microsoft Technology Licensing, Llc Navigating messages within a thread
US10248687B2 (en) 2005-09-12 2019-04-02 Microsoft Technology Licensing, Llc Expanded search and find user interface
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
US9513781B2 (en) 2005-09-12 2016-12-06 Microsoft Technology Licensing, Llc Expanded search and find user interface
US10482637B2 (en) 2006-06-01 2019-11-19 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US9727989B2 (en) 2006-06-01 2017-08-08 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US8638333B2 (en) 2006-06-01 2014-01-28 Microsoft Corporation Modifying and formatting a chart using pictorially provided chart elements
US8605090B2 (en) 2006-06-01 2013-12-10 Microsoft Corporation Modifying and formatting a chart using pictorially provided chart elements
US10642927B2 (en) 2007-06-29 2020-05-05 Microsoft Technology Licensing, Llc Transitions between user interfaces in a content editing application
US10521073B2 (en) 2007-06-29 2019-12-31 Microsoft Technology Licensing, Llc Exposing non-authoring features through document status information in an out-space user interface
US9619116B2 (en) 2007-06-29 2017-04-11 Microsoft Technology Licensing, Llc Communication between a document editor in-space user interface and a document editor out-space user interface
US8201103B2 (en) 2007-06-29 2012-06-12 Microsoft Corporation Accessing an out-space user interface for a document editor program
US10592073B2 (en) 2007-06-29 2020-03-17 Microsoft Technology Licensing, Llc Exposing non-authoring features through document status information in an out-space user interface
US9098473B2 (en) 2007-06-29 2015-08-04 Microsoft Technology Licensing, Llc Accessing an out-space user interface for a document editor program
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US8762880B2 (en) 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
US10445114B2 (en) 2008-03-31 2019-10-15 Microsoft Technology Licensing, Llc Associating command surfaces with multiple active components
US9588781B2 (en) 2008-03-31 2017-03-07 Microsoft Technology Licensing, Llc Associating command surfaces with multiple active components
US9665850B2 (en) 2008-06-20 2017-05-30 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US10997562B2 (en) 2008-06-20 2021-05-04 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US9338114B2 (en) 2008-06-24 2016-05-10 Microsoft Technology Licensing, Llc Automatic conversation techniques
US8402096B2 (en) 2008-06-24 2013-03-19 Microsoft Corporation Automatic conversation techniques
US8799353B2 (en) 2009-03-30 2014-08-05 Josef Larsson Scope-based extensibility for control surfaces
US9875009B2 (en) 2009-05-12 2018-01-23 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries
US9046983B2 (en) 2009-05-12 2015-06-02 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries
JP2010124482A (en) * 2010-01-08 2010-06-03 Ntt Docomo Inc Structured document adaptation apparatus
US8302014B2 (en) 2010-06-11 2012-10-30 Microsoft Corporation Merging modifications to user interface components while preserving user customizations

Also Published As

Publication number Publication date
JP2004537108A (en) 2004-12-09
WO2003003240A3 (en) 2004-07-22
KR20040014999A (en) 2004-02-18
US20040205549A1 (en) 2004-10-14
CN1592902A (en) 2005-03-09
EP1466266A2 (en) 2004-10-13
US6829745B2 (en) 2004-12-07

Similar Documents

Publication Publication Date Title
US6829745B2 (en) Method and system for transforming an XML document to at least one XML document structured according to a subset of a set of XML grammar rules
US7660844B2 (en) Network service system and program using data processing
US6684204B1 (en) Method for conducting a search on a network which includes documents having a plurality of tags
US6941511B1 (en) High-performance extensible document transformation
US6970863B2 (en) Front-end weight factor search criteria
US7496497B2 (en) Method and system for selecting web site home page by extracting site language cookie stored in an access device to identify directional information item
US7970874B2 (en) Targeted web page redirection
US20030100320A1 (en) Efficient hyperlinks for transmitted hyperlinked information
US8156429B2 (en) Method and system for accelerating downloading of web pages
US7558841B2 (en) Method, system, and computer-readable medium for communicating results to a data query in a computer network
US7599922B1 (en) System and method for federated searching
US6344851B1 (en) Method and system for website overview
EP0924628A2 (en) Methods and system for using web browser to search large collections of documents
US20040194018A1 (en) Method and system for alternate internet resource identifiers and addresses
US6243662B1 (en) Data relay device, information terminal equipment, computer-readable recording medium storing data relay program, and computer-readable recording medium storing information browsing program
US20030106025A1 (en) Method and system for providing XML-based web pages for non-pc information terminals
JP2003519844A (en) Method and apparatus for indexing structured documents based on style sheets
US7085807B2 (en) System and method for providing links to available services over a local network by a thin portal service configured to access imaging data stored in a personal imaging repository
CA2395428A1 (en) Method and apparatus for content transformation for rendering data into a presentation format
US20020099852A1 (en) Mapping and caching of uniform resource locators for surrogate Web server
US20020174099A1 (en) Minimal identification
US20010056497A1 (en) Apparatus and method of providing instant information service for various devices
US20040163090A1 (en) Method, system, and article of manufacture for a command line interface
AU769025B2 (en) Method and system for alternate internet resource identifiers and addresses
AU736696B2 (en) Learning support method, system and computer readable medium storing learning support program

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): CN JP KR

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

WWE Wipo information: entry into national phase

Ref document number: 2002726399

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020037003088

Country of ref document: KR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2003509347

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 028129172

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 1020037003088

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2002726399

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 2002726399

Country of ref document: EP