Browse Prior Art Database

Efficient and Flexible XML-based Data-Exchange

IP.com Disclosure Number: IPCOM000197491D
Original Publication Date: 2010-Jul-24
Included in the Prior Art Database: 2010-Jul-25
Document File: 4 page(s) / 129K

Publishing Venue

Siemens

Related People

Juergen Carstens: CONTACT

Abstract

One of the critical challenges in embedded sensor actor networks is the communication between the diverse and widespread nodes. Usually, XML-based message formats are widely used to exchange data in heterogeneous environments. However, the common mark-up language can not be applied to small embedded devices with limited resources due to its verbosity and associated processing overhead. Therefore, a novel solution is proposed which enables the efficient usage of XML-based messages for small devices with limited resources. For this purpose, the Efficient XML interchange (EXI) format is used which is a compact representation for the XML Information Set. The EXI format provides means to preserve various XML characteristics such as comments or processing instructions. In restrained areas such as wireless sensor networks it is demanded to be concise as possible. The EXI format provides a special mode STRICT that implies strict interpretation of schemas and thus only items declared in the XML schema are allowed. Furthermore, the EXU format is grammar-driven that is the processing is based on regular grammars derived from XML restrictions. An EXI grammar describes the anticipated occurrence at any point. Given that XML is not a regular language; a single grammar can not be used to represent an entire XML event stream. The EXI coder uses instead a stack of grammars that is one grammar for each element content model. The EXI specification defines a predefined process of how schema information is transformed into EXI grammars. Essentially, the EXI specification provides corresponding events for all XML Information Set items such as characters and attributes. The EXI grammars can be described by deterministic finite automata (DFA) where events describe the transition from one grammar state to the next state (see Figure 1). If multiple transitions are possible, the EXI stream indicates with a so-called event code which path has to be chosen. Finally, the EXI grammars are a mechanism to feed an EXI implementation with the necessary information in order to sensitize the implementation for a given set of XML documents.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 51% of the total text.

Page 1 of 4

Efficient and Flexible XML-based Data-Exchange

Idea: Sebastian Käbisch, DE-München; Daniel Peintner, DE-München; Jörg Heuer, DE-München,
Harald Kosch, DE-Passau

One of the critical challenges in embedded sensor actor networks is the communication between the diverse and widespread nodes. Usually, XML-based message formats are widely used to exchange data in heterogeneous environments. However, the common mark-up language can not be applied to small embedded devices with limited resources due to its verbosity and associated processing overhead.

Therefore, a novel solution is proposed which enables the efficient usage of XML-based messages for small devices with limited resources. For this purpose, the Efficient XML interchange (EXI) format is used which is a compact representation for the XML Information Set. The EXI format provides means to preserve various XML characteristics such as comments or processing instructions. In restrained areas such as wireless sensor networks it is demanded to be concise as possible. The EXI format provides a special mode STRICT that implies strict interpretation of schemas and thus only items declared in the XML schema are allowed. Furthermore, the EXU format is grammar-driven that is the processing is based on regular grammars derived from XML restrictions. An EXI grammar describes the anticipated occurrence at any point. Given that XML is not a regular language; a single grammar can not be used to represent an entire XML event stream. The EXI coder uses instead a stack of grammars that is one grammar for each element content model. The EXI specification defines a predefined process of how schema information is transformed into EXI grammars. Essentially, the EXI specification provides corresponding events for all XML Information Set items such as characters and attributes. The EXI grammars can be described by deterministic finite automata (DFA) where events describe the transition from one grammar state to the next state (see Figure 1). If multiple transitions are possible, the EXI stream indicates with a so-called event code which path has to be chosen. Finally, the EXI grammars are a mechanism to feed an EXI implementation with the necessary information in order to sensitize the implementation for a given set of XML documents.

An implementation approach of providing grammar knowledge to a generic EXI processor is realized through an automatic mechanism which produces a program or a library that encodes XML information as objects in memory to an EXI stream. By means of the proposed mechanism also an EXI stream or respectively XML information item can be unmarshaled to an in memory object again. The mechanism comprises three steps:

1. Analyze one or several XML schema documents

2. Generate EXI grammars according to schema constructs and data types derived from the first step.

3. Create source code according to the grammars created in (2)

The step (1) is done once statically. For example the XM...