Why the Real Estate Transaction Standard (RETS) is a Framework, NOT a Language
Many people who use the Real Estate Transaction Standard, or RETS, refer to it as a language. Even RESO, the Real Estate Organization, refers to RETS as an “intermediate” language between systems used to exchange data. However, calling RETS a language narrows its true potential and doesn’t describe what RETS really is.
RETS is a Framework
The Real Estate Transaction Standard is a technology used to exchange standardized real estate data between all of the various types of software systems that handle real estate information. RETS itself is not a program, nor is it a language. It is a framework that can be adopted by any computer system to receive data from the Multiple Listing Service (MLS) and many other real estate systems that doesn’t require the computer system to be hardwired or configured in any other way to specifically interact with MLS or anything else for that matter.
RETS is mostly used by software developers and programmers to create applications and services that take advantage of various components of the framework.
The History of RETS
In February of 1999, the National Association of Realtors, NAR, joined forces with a number of leaders in the technology industry along with representatives from many sectors of the real estate industry to devise a way to make access to MLS easier for individual realtors and local organizations.
Together, they began to develop a set of data interchange standards that would facilitate the free flow of information between various users and the raw real estate transaction data. This group’s mission was clear from the beginning. It was to define detailed technical standards for Internet based communication and exchange of real estate property information.
The Traverse Area Association of REALTORS®, or TAAR, located in Traverse City, Michigan was one of the first organizations to adopt RETS. Initially, TAAR members wanted to search MLS data using a simple interface and a web browser. So TAAR developed its own parallel database of the primary MLS system, known as a “shadow database.”
With the assistance of Fidelity National Solutions, then known as VISTAInfo, and its “.9 release” of RETS, TAAR was able to extract data from its Maestro/RExplorer databases on a frequent basis to populate its shadow database. Not only did TAAR develop a simple, browser-based search for its members as was initially desired, but it also leveraged RETS and its shadow database to provide members with additional products and services including IDX, VOWs, and public views.
It took around three years to fully develop RETS. By March of 2002, NAR finally presented the first version of the well-documented Real Standard Transaction Specifications. It was a well defined standard interface through which a client program could communicate with property data, or other real estate data servers.
Since its inception, RETS has been what it was intended to be – limited without being limiting and created the following criteria:
- HTTP-based transactions: provide a reliable, error-free communications link that is widely and inexpensively available to users
- XML Support
- Extendable: it has the ability to handle tomorrow’s business problems because it can be incorporated into new systems and technologies
- Implementation at a reasonable cost
- Support established business rules: ability to ensure the security of MLS data
- Create an environment conducive to increased competition between software vendors
- Allow for queries and transfers of more than property data such as agent, office, and tax data
The RETS Framework
The RETS framework consists of the RETS Common Specifications, RCS, which is commonly called “The Standard,” the Base Client Class Library, or BCCL, and Client Tools, or the applications used to exchange information with MLS.
RETS Common Specifications: RCS
RETS Common Specifications, or “the standard,” are the core of the RETS platform. The standard consists of a set of rules, database schemas, and metadata definitions.
There are two active branches of RETS Specifications – the Web Services RETS 2 branch, which has XML based format, and the HTTP RETS 1.x branch, which has a compressed metadata format. Format specifications are mainly composed of links, descriptions of schemas, payloads and metadata. However, depending on what system you use to access the database, the format specifications may vary.
The Specifications also contain a large number of System Names. These system names are common names used by all markets to get access to specific fields of data. It is precisely the Common Specifications that make RETS much more than just a “standardized language” between applications that pull data from MLS (web sites, desktop applications, mobile applications, etc.) and the MLS servers that transmit the information stored in its databases.
Base Client Class Library: BCCL
The Base Client Class Library is a Common Client-Language Infrastructure (CCLI) standard library that has been written in many languages including C++, PHP, C#, Java, Perl, Python, and Ruby, that allows software developers and programmers to rapidly develop RETS client applications.
These class libraries encapsulate a large number of common functions, such as file reading and writing, graphic rendering, database interaction, login processes, security, XML, and metadata handlers which makes a programmer’s job easier.
LibRETS is actually the base, or primary, class library. It was written in C++ and allows bindings for .Net, Java, Perl, Python, and Ruby. LibRETS can also be used on many platforms including Visual C++ on Windows and GCC on just about any flavor of Unix.
There are many third party client applications (software) that should be considered part of the RETS framework. These are applications that have become so popular among RETS users that RETS developers have endorsed them as solutions for exchanging real estate data with the MLS system. The most popular ones are:
- RETS Connector – a Windows desktop app
- VieleRETS – a web-based solution
- Open Realty – a web-based CMS application
The Basics: Clients and Services
The applications built on RETS generally work in pairs, using software known as “RETS servers” and “RETS clients.”
The RETS client resides on a computer that initiates a request in the form of a query, requesting specific information. The RETS server resides on the MLS system itself and responds to the client request with data results. An RETS client needs to use the BCCL to connect to RETS.
10 Benefits of RETS
RETS has made it possible for all realtor associations across the country to communicate data with one another and much more.
- With RETS, data feeds are much more organized because of the standard methods created by NAR and the use of metadata. RETS has streamlined the integration of MLS with all major third party vendors. As technology evolved, RETS revolutionized the way to extract raw data from MLS databases for every purpose imaginable.
- RETS also provides access to near real-time data, which is a premium service offering compared to daily FTP files. RETS clients update every five minutes, which allows them to display the most accurate and timely live data on their web sites.
- MLS vendors support RETS’ role-based security, which makes data secure so no one has to worry about vulnerable data.
- RETS allows users to download Research MLS data for use in consumer and VOW websites.
- RETS has drastically reduced support costs by standardizing communication between MLS and various systems used by realtors across the country to access data. Third party providers are now taking advantage of RETS metadata by developing solutions that are “Metadata Aware,” which makes communication flawless, lessening the need for support when communication fails.
- RETS provides more flexibility within the real estate industry. Prior to RETS, getting data was much more difficult due to custom data exports, setup, and making sure that exports run overnight.
- By using user agent headers that are included in RETS Specifications, clients now have access to specific data or resources.
- By using the Base Client Class Library, RETS prevents competition by establishing itself as the standard framework for the real estate industry; rather, creating an environment of competition between software vendors using the RETS as the standard RETS.
- RETS uses a simpler programming model that eliminates the need for Interface Definition Language (IDL) files, header files, or any external method of component reference. The metadata used by RETS allows users to describe themselves automatically in a language-neutral manner, unseen by both the developer and the user. Additionally, metadata is extendable through the use of attributes, which ultimately make RETS an extensible framework.
- By using web services, RETS offers benefits like interoperability, usability, reusability, and deploy-ability.
The Future of RETS
The future of RETS is extremely promising. Important system vendors like Rapattoni, MarketLinx, FBS, and FNIS are offering RETS-compliant solutions. RETS has also become a standard in the real estate industry that already has more than 220 MLS’s with access to a RETS-compliant server, which represents more than 50% of the active listing inventory. It’s a huge opportunity for the real estate industry as well as programmers and software developers.
No doubt about it, RETS is a reality and it is here to stay!
Programmers at Optimum7 have developed a custom solution that integrates RETS with WordPress. If you are a real estate professional seeking the competitive edge online, please contact us today!