Menu

XML is Helping to Solve Real Estate Problem

August 12, 1998

Lisa Rein

OpenMLS's and 4thWORLD Telecom's implementation of XML for the real estate industry is one of the first real-world examples of XML in use. XML can be implemented server-side to create a sophisticated search application capable of serving pages in XML or HTML.

For the real estate industry, the Web's advantages appear to be outweighed by a big disadvantage: there's just too much information.  How can buyers look through every listing available to find what they are looking for with as little effort as possible?  How can buyers search across many different listings?

"The web's larger impact will be to streamline the adjunct transactions (around a sale of real estate) such as finance, title, and insurance."
--Tim Popin

What a buyer really wants to do is specify exactly what they are looking for and get back a list of houses that fit the description. Such criteria might be "home, less than $640,000, on more than 3 acres of land," or "San Francisco AND 94101 AND Ocean View" to find all of the listings in San Francisco county with a zip code of 94101 that included an ocean view.

The Problem

Presently, real estate properties are "listed" in the Multiple Listing Service (MLS), a directory that has become the standard source of information for real estate agents.  Unfortunately, there is no standardized MLS format, and no two realtors offer the service in exactly the same way.

Each Board of Realtors (several hundred in the US) uses its own legacy-based MLS software.  These MLS systems cannot exchange data, even when using products from the same vendor.  Also, each Board specifies which information belongs in a listing, customizing it to fit local needs.  Thus, to date, there has been no central location to obtain listings and no easy way to interface with these services or the information managed by them.

In recent years, there have been several attempts to provide centralized web sites for large numbers of listings.   However, there is an intense political debate over having a single company centralize all this data.

The Solution

A new direction is in the works, and it involves XML as a means of standardizing this information and providing easier and wider access to it.

A company called OpenMLS has collaborated with John Petit of 4thWORLD Telecom to develop the Real Estate Listing Markup Language (RELML). OpenMLS offers a complete suite of applications, called the OpenMLS Listing Management System, which is used to aggregate legacy listings, generate their XML counterparts, and then index and update this information. The company has also developed XSearch!, a stand-alone search engine product that can be used with RELML or any other DTD. We'll be looking at the DTD later in more depth as well as the system applications that use this DTD. The result for end users is a simple, Web-based search interface for residential listings

One of the advantages of the RELML-based scheme is that there need be no single central site. XML-based listings can be distributed across the web. Portal sites need only crawl the servers where the information is published. Individual portals can create their own interfaces to the information they choose to index.

Let's take a closer look at OpenMLS and this application.

The Business of Residential Listings

The Web is changing the Multiple Listing Service, but more profoundly, the whole business of real estate.

"Two years ago, we saw real estate as an open niche market; a perfect vehicle for a start up company, so we started working on it," explains Tim Popin, cofounder of OpenMLS. "While we were doing that, the whole world of real estate software changed from a vertical to a horizontal market, and we had to adapt."

Popin feels that although the focus of attention is moving away from franchises, such as Century 21, Prudential, ReMAX and many others, to a more horizontal web-based market, certain aspects of real estate, such as appraisals or inspections, will always require humans for the time being. "The franchise organizations should be shaking in their boots," explains Popin. "It's disintermediation. The intermediaries providing financial services, title insurance, and paper work processing in general, will be displaced by automation. Other services such as appraisal and, perhaps, sales will always need a human touch."

"While the web will help in connecting buyer to seller, there will always be a subjective element in choosing one's dwelling. Real estate agents have the critical local knowledge to lead a buyer through the purchase. Agents who demand software like OpenMLS' listing management system will be empowered in the new world; it's the brokers, franchises, real estate boards, and state or national organizations whose world is liquefying beneath them," Popin explains. "The web's larger impact will be to streamline the adjunct transactions: finance, title, insurance and the rest. The interest we see from the portal sites is in matchmaking between buyers and providers of these standardized transactions."

A Look At the OpenMLS Application

The OpenMLS software can be used over the Web, Intranet, or Extranet. Typically, an agent enters the MLS information as they do now, but using their web browser to connect to the Web server. Once entered into the system, the listing is automatically saved as an XML file conforming to the RELML specification. These files can be made available at a specified web site on the Internet, thereby making it accessible by the major portals for searching.

OpenMLS screen shot

Real Estate agents can use the listing management system to automatically notify buyers when new homes become available. They can also use it to automatically update information on the pages of their Web site.

In addition, the OpenMLS Listing Management System could be used as a centralized location for buyers to conduct their own searches in order to survey what properties are available, perhaps before contacting an agent for a tour. Microsoft's Active Channel Technology, which uses CDF on the client, can enable a buyer to set up a channel in order to be automatically-notified if a change in a properties status has occured.

The OpenMLS Listing Management System uses XML both the server and client. On the server-side, the XML-enabled search engine performs searches and generates the HTML search results for the end user that can be viewable in any browser.

On the client-side, they use the "data-binding" controls in IE to display data as web pages, offering not only faster and more streamlined data transmissions, but more importantly, the delivery of up-to-date information.

Try out the OpenMLS search application yourself on sample data made available on their site. Notice that the search results link to an HTML version of the listing but you can also look at the raw XML data by following the link underneath the summary.

Inside OpenMLS's XML Application

If you had a chance to look at the demo, you'll see that it starts off with an HTML-based form interface. The form allows the buyer to fine-tune searches that are more likely to deliver valuable real estate results. On the backend is the XSearch! engine, which is able to process XML on the server-side.

"The path to standardization in the real estate industry will be taken with small steps."
-- John Petit

XSearch is able to deliver XML or serve up its results in HTML 3.0 so it will function properly in Netscape or IE version 3 or above. No scripts are needed for the Xsearch! implementation. Although the online demo uses Active Server pages, the implementation is not tied to them in any way.

The OpenMLS system is deployed on the Microsoft Backoffice Suite, while the online demo uses Microsoft's Index Server and the (validating) MS xmldso Java parser. See The CodeThe actual XML that is pushed to the web for crawling and indexing could be generated any number of ways and implemented in any number of systems. The trick is using a standardized XML-based vocabulary to make the listings interoperable with each other. That's what the RELML DTD provides.

The OpenMLS Listing Management System, also requires Internet Explorer 4.01 or higher, which uses a test for browsers of lower versions and redirects accordingly, and uses the msxml parser that ships with IE4.01 (the very same as that used on the server-side only implementation).

The system generates both an XML page and an HTML 3.0 Web page for each listing as it is entered. The OpenMLS product immediately provides a real estate office with a World Wide Web presence for every listing. If a listing is modified, new XML and HTML documents automatically replace the outdated pages. Consumers view pages on the web with the most current information available.

The Real Estate Listing Markup Language (RELML) DTD

Both the XSearch! and the OpenMLS Listing Management system use the Real Estate Listing Markup Language, or RELML, to markup, aggregate, and index their listings.

The OpenMLS server uses DTDs to validate the listings entered by the listing agents. When the agents enter the listing data, the input is sent to SQL Server; data is read from SQL Server and formatted as XML (& HTML).

Open MLS also needed their application to work with several different ways that listings might be produced: users making MLS entries with custom MLS software, those making MLS entries with standard XML editors, and those who are simply making a web site.

Using a DTD to associate a particular vertical market's meaning to a document's content turned out to be a tricky business indeed.

"In developing the DTD, I had to determine the common denominator for the various MLS forms across the country. It was a balance between the general and the specific, and I tended towards the general," John Petit, principal designer of the RELML DTD, explains. "I feel that the path to standardization in the real estate industry will be taken with small steps. If the proposed standards are too precise or restrictive, there will be too many points of contention."

Crawling and Searching

Another common point of confusion is the differences between "crawling" and "searching" and how each of these functions plays a very specific role in the implementation.

"The distinguishing factor that differentiates 'crawling' from 'searching' is that the search is performed by a separate program on the database that has been gathered by the crawler," Petit explains.   "More than likely, there will be one crawler that will index both HTML and XML but put them into separate indexes. The search is performed on these centralized indexes."

The search engine will crawl for everything; however, during a search, the engine must look for the <doctype> tag that references the vertical market DTD, then the search is refined to that market.   So although the HTML and XML can be crawled and indexed together, they will be searched separately.

When search engines crawl the Web looking for XML based documents, there still may be issues regarding the return of precise information, primarily because various vertical markets could be using the same XML tag definitions that imply different meanings.

For example, <BRAND> in one industry could mean something completely different in another. In order to eliminate this confusion and to allow for searching a specific vertical market, the engine must identify and index the appropriate external DTD reference.

For the consumer, the typical form-driven interface can be provided for searching vertical markets. There are several methods to accomplish this, one being the traditional use of text boxes or list-boxes, prompting for specific information.  In this scenario,  if the consumer clicks "3" for number of bedrooms, the web server will interpret this and send the following string to the index server:

<NUM-BEDS>3</NUM-BEDS>

The index server will return only those documents that contain this literal string.  Another method is to use "free-form" text for input (which is what HTML necessitates), but that could lead to ambiguous information being returned, simply because this data is not tied specifically to tags. For example, entering "3" can return  3 bedrooms, 3 bathrooms or 3 pit bulls that live next door.

"This DTD, if widely adopted, is one small step. Certainly there is more to add such as strong data typing and internationalization and 4thWORLD will continue to refine the real estate DTD as the market and changing technologies dictate.   Indeed,  we may opt for better document description syntax such as those provided by XML-Data or DCD (Document Content Description) syntax, when these specifications have been fully standardized through the proper W3C channels."

"As it stands, the current DTD is quite useful, as the OpenMLS software demonstrates. I also had to show how the XML documents conforming to this DTD could be customizable so that  various Boards of Realtors could create their own MLS form (the OpenMLS software demonstrates how this works).  All of our efforts are to ensure that real estate sites developed by 4thWORLD are seamlessly integrated with the workings of real estate agents and that the pertinent information is universally accessible to buyers on the web."

Take a look at the RELML DTD,
and some sample XML output.

Getting Real XML Applications

OpenMLS's and 4thWORLD Telecom's implementation of XML for the real estate industry is one of the first real-world examples of XML in use. It shows how XML can bridge the gaps between disparate protocols, geographical locations, legacy software applications, and much, much more.

The potential for XML-enabled search engines also seems quite promising. L can be implemented server-side to create a sophisticated search application capable of serving pages in simple HTML. Using this technique, the information can be entered into the database by an end user via simple form-driven interface. Then searched using a similar interface, with results capable of being viewed in any browser.

At the same time, this information can be maintained and managed more effectively as XML.

This Real Estate Listing implementation is only an early example. In the next few months, we will start to see the numerous ways that XML is about to revolutionize how business is conducted all over the world.