Meetings Home

Change Proposal 1: Structured Data Exchange

RETS Change Proposal 1: Structured Data Exchange
Author: Bruce Toback and Leo Bijnagte
Organization:
Telephone:
Address:
Email:
Status: Proposal
Date: 12/25/2001
Proposal Version: 1.0

1. Synopsis
RETS 1.0 does not provide any way for servers and clients to exchange information with internal structure except within the limited domain of a STANDARD-XML transaction. Structured Data Exchange adds a fourth data exchange type, to be designated LOCAL-XML, to allow structured information to be transmitted with a full metadata description. A LOCAL-XML-packaged query response is a well-formed XML document that can be parsed using any standard XML parser.

2. Rationale
RETS 1.0 specifies two methods for exchanging data between endpoints: COMPACT, which is a flat record format described by metadata, and STANDARD-XML, which is a structured record format that is described by a DTD and a developer note. This means that endpoints can exchange all the information for a resource but with internal structure flattened, or limited information but with a rich internal structure. The obvious weakness here is that there is no way for endpoints to exchange full information with deep internal structure.

To address this need, developers have either been forced to flatten their data structures artificially (often at some cost in completeness), or to extend the standard RETS DTD. Since such extensions are nonstandard, they inhibit the interoperability of RETS implementations that use them. Structured Data Exchange provides a standard method for describing structure, eliminating the need for nonstandard extensions when resources have a complex internal organization.

In addition, some developers have expressed the need for an upload format that uses XML rather than the present HTML field encapsulation. Structured Data Exchange provides a framework within which that need can be accomodated, although this proposal does include modification of the Upload transaction.

3. Proposal
3.1 Specification Changes

This solution involves adding a new LOCAL-XML data return type, and several new fields to the Table metadata. The LOCAL-XML return type encapsulates the returned data as XML, using as the root of each returned record. The return is thus a series of elements within the section of the search transaction response.

The server describes the LOCAL-XML document using six new metadata fields: