Back to results
US 8,751,687 B2Granted
Efficient encoding of structured data
AssigneeMicrosoft Corporation
InventorsAlexander F. Nagy, Ashok Chandrasekaran, Kristof Roomp, Novia Rosalinda Wijaya
Life of this patent
Estimating the term…
Abstract
This document describes various techniques for efficiently sequencing structured data in a particular order to provide a sequence of data elements suitable for storage or communication. The sequence may contain values representing a number of default-value structured data elements omitted from the sequence and/or a byte length of the sequence.
Claims20
A device-implemented method comprising:
- determining, via a data encoder of a device, a number of consecutive non-default-value structured data elements of a set of default-value structured data and non-default-value structured data elements forming at least a portion of a data structure and having a particular order;
- determining a number of consecutive default-value structured data elements of the particular order that precede or follow consecutive non-default-value structured data elements in the particular order;
- sequencing, based on the particular order, the consecutive non-default-value structured data elements;
- inserting, into the sequence and adjacent to the consecutive non-default-value structured data element that the consecutive default-value data elements precede or follow, a value representing the number of consecutive non-default-value structured data elements and the number of consecutive default-value structured data elements that precede or follow the consecutive non-default-value structured data elements, the consecutive default-value structured data elements not inserted into the sequence;
- and
- transmitting, via a data interface of the device, the sequence to an entity, the entity having access to information about the particular order, the sequence not including the consecutive default-value structured data elements.
3 more elements
A device-implemented method comprising:
- receiving, via a data interface of a device, a sequence of data elements having a particular order and a value, the data elements being non-default-value data elements of the particular order, the value representing a number of consecutive default-value data elements and a number of consecutive non-default-value data elements, the value indicating the number of consecutive default-value data elements that precede or follow the consecutive non-default-value data element in the particular order, the default-value data elements not received with the sequence;
- inserting, via a data encoder of the device, default-value data elements into the sequence based on the value representing the number of consecutive default-value data elements and the number of consecutive non-default-value data elements and information about the particular order, the default-value data elements inserted adjacent to the consecutive non-default-value data elements that the consecutive default-value data elements precede or follow;
- and
- structuring the sequence of the consecutive non-default-value data elements and consecutive default-value data elements to provide structured data.
1 more element
A device-implemented method comprising:
- determining a number of non-default-value structured data elements of a data structure, the non-default-value data elements being consecutive data elements of a particular order;
- determining a number of consecutive default-value structured data elements of the data structure, the consecutive default-value data elements preceding or following the consecutive non-default-value structured data elements in the particular order;
- interleaving bits of a bit-value representing the number of consecutive non-default-value structured data elements and bits of a bit-value representing the number of consecutive default-value structured data elements to provide a bit interleaved value representing the number of consecutive non-default-value structured data elements and the number of consecutive default-value structured data elements;
- encoding, using 7-bit encoding, the bit-interleaved value to provide a 7-bit encoded value representing the number of consecutive non-default-value structured data elements and the number of consecutive default-value structured data elements;
- serializing the 7-bit encoded value;
- and
- serializing, based on the particular order, the non-default-value structured data elements to respectively precede or follow the 7-bit encoded value representing the number of consecutive non-default-value structured data elements and the number of consecutive default-value structured data elements, the default-value structured data elements not serialized into the serialized data elements.
4 more elements
Dependencies are inferred from the claim text.