IP Library Granted Patent US 7,020,666
Granted Patent B2
US 7,020,666 · App. 10/383,666 · Granted Mar 28, 2006

System and method for unknown type serialization

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,020,666
App. No.
10/383,666
Granted
Mar 28, 2006
Kind
B2
Abstract

A method of serializing and deserializing unknown data types in a strongly typed model. The method includes serializing an object to a data stream at first node and communicating the data stream to a second node. The second node may be another process, machine or a file on a disk. The data stream is deserialized at a later time, and the data types within the data stream are determined. Objects are instantiated in accordance with known data types, and unknown objects are created to retain information related to each unknown data type in the data stream. These unknown objects are used to regenerate the unknown data type when a serialization operation is performed at the second node on an unknown object.

Claims (15)

1. A method for communicating serialized data between nodes in a distributed system having a strongly typed model, comprising:

serializing an object to the data stream at first node;

communicating the data stream to a second node;

deserializing the data stream at the second node;

determining data types within the data stream;

instantiating objects in accordance with known data types; and

creating unknown objects to retain information related to unknown data types in the data stream, said unknown objects being used to regenerate retained information when a serialization operation is performed at the second node on said unknown objects.

2. The method of claim 1 , further comprising determining completely unknown objects, said completely unknown objects being objects not having a known base class.

3. The method of claim 2 , further comprising retaining a type hierarchy of the unknown object and a number of unknown fields.

4. The method of claim 1 , further comprising determining a base class of said unknown data type, and if base class deserialization is allowed, assigning said base class to said unknown data type.

5. The method of claim 4 , further comprising retaining a type hierarchy of the unknown object and a number of unknown fields.

6. The method of claim 1 , wherein said determining data types includes determining XML element names.

7. The method of claim 6 , wherein said determining data types includes determining XML QNames.

8. The method of claim 1 , wherein the data stream comprises one of a filestream, netstream, or memorystream.

9. The method of claim 1 , further comprising determining unknown arrays.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
RE-RECORD TO CORRECT THE SECOND CONVEYING PARTY'S NAME, PREVIOUSLY RECORDED AT REEL 013871, FRAME 0844. Recorded Jan 15, 2004
From: DOISE, CALEB L.; KAKIVAYA, GOPALA KRISHNA
To: MICROSOFT CORPORATION
Reel/Frame 014891/0375 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2003
From: DOISE, CALEB L.; KAKIVAYA, GOPALAKRISHNA R.
To: MICROSOFT CORPORATION
Reel/Frame 013871/0844 →