Skip to main content

Search by Property Description Schema explain V2.0


Data input field (from Land Registry (LR) test harness) Description Mandatory Minimum value Maximum value Has a pattern constraint XML datatype
Message ID The unique message ID of the request. Yes 5 50 Yes xs:string

<xs:element name="ID"
    type="Q1IdentifierType"
    minOccurs="1" maxOccurs="1" />

<xs:complexType name="Q1IdentifierType">
    <xs:sequence>
        <xs:element name="MessageID"
            type="Q1TextType"
            minOccurs="1" maxOccurs="1">
            <xs:annotation>
                <xs:documentation&gtA character string (i.e. a finite set of
                    characters) generally in the form of
                    words of a language.</xs:documentation>

<xs:complexType name="Q1TextType">
    <xs:documentation>A character string (i.e. a finite set of
        characters) generally in the form of
        words of a language.</xs:documentation>
    <xs:simpleContent>
        <xs:extension base="Q1TextContentType" />
    </xs:simpleContent>

<xs:simpleType name="Q1TextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="5" />
        <xs:maxLength value="50" />
        <xs:pattern value="[a-zA-Z0-9][a-zA-Z0-9\-]*" />
    <xs:restriction>
Request Search By Property Description V2_0

This is the main container element on the schema. General search information follows:

  • The simplest search that is most likely to find a match is a house number or name (in the BuildingName) and a postcode. If the building is divided into flats this could be refined by adding a BuildingNumber, or by selecting from a list of properties returned.
  • If the postcode is not known, the street and town elements should be used. There is no cross-matching between elements, as all elements are search together for a match.
  • If a number is entered into either BuildingName or BuildingNumber it will be searched against both elements (i.e. if you search for Flat 1 it will return House 1 Flat 1).
  • The search criteria are also matched against historical and alternative versions of an address. This means that any address returned may not necessarily match the entered search criteria exactly.

<xs:element name="RequestSearchByPropertyDescriptionV2_0"
    type="RequestSearchByPropertyDescriptionV2_0Type"/>
Request Search By Property Description V2_0 Type

The ID element is described above (message ID).

The product element is described below. (Q1ProductType).


<xs:complexType name="RequestSearchByPropertyDescriptionV2_0Type">
    <xs:annotation>
        <xs:documentation>This document provides the ability for the
            [External System] to search Title Number
            by providing property description. The
            [Business Gateway] will retrieve a list of
            all properties (maximum of 50) along with
            the title number and tenure matching the
            property description.</xs:documentation>
    </xs:annotation>
    <xs:sequence>
        <xs:element name="ID"
            type="Q1IdentifierType"
            minOccurs="1" maxOccurs="1" />
        <xs:element name="Product"
            type="Q1ProductType"
            minOccurs="1" maxOccurs"1" />
        <xs:annotation>
            <xs:documentation>This component contains details regarding
                the search being ordered, expedited
                service, price details, delivery method and
                any attachment</xs:documentation>
Q1 Product Type

The product type element contains all of the elements necessary to carry enough information to LR to perform the property description search.

Each of the parts are described in detail below.


<xs:complexType name="Q1ProductType">
    <xs:annotation>
        <xs:documentation>This component contains details
            regarding the search being ordered,
            expedited service, price details, deilvery
            method and any attachment</xs:documentation>
    </xs:annotation>
    <xs:sequence>
        <xs:element name="ExternalReference"
            type="Q1ExternalReferenceType"
            minOccurs="1" maxOccurs="1">
            <xs:annotation>
                <xs:documentation>Reference associated with a case in
                    Case Management System</xs:documentation>
            </xs:annotation>
        </xs:element>
        <xs:element name="CustomerReference"
            type="Q1CustomerReferenceType"
            minOccurs="1" maxOccurs="1">
            <xs:annotation>
                <xs:documentation>Reference of the person for whom the
                    remortgage is performed.</xs:documentation>
            </xs:annotation>
        </xs:annotation>
        <xs:element name="SubjectProperty"
            type="Q1SubjectPropertyType"
            minOccurs="1" maxOccurs="1">
            <xs:annotation>
                <xs:documentation>The Property which is the subject of the
                    transaction, or on which a search is
                    being prepared</xs:documentation>
Customer reference

This element carries the customer reference to LR. The customer reference is the reference the CMS uses to identify the customer linked to the request, within its own system.

Allocated by and description are not curently used.

Yes 1 25 Yes xs:string

<xs:element name="CustomerReference"
    type="Q1CustomerReferenceType"
    minOccurs="1" maxOccurs="1">

<xs:complexType name="Q1CustomerReferenceType">
    <xs:documentation>Provides a unique reference to identify a
        particular request, order or instruction or
        object in the system of the organisation
        allocating it.</xs:documentation>

<xs:element name="Reference"
    type="ReferenceTextContentType"
    minOccurs="1" maxOccurs="1">
    <xs:documentation>A unique reference given to identify a
        particular request, order or instruction in
        the system of the organisation
        allocating it.</xs:documentation>

<span class="hmlr-mark-highlight" role="mark"><xs:element name="AllocatedBy"
    type="TextType"
    minOccurs="0" maxOccurs="1">
    <xs:documentation>The name of the organisation that has
    allocated the Reference</xs:documentation>

<xs:element name="Description"
    type="TextType"
    minOccurs="0" maxOccurs="1">
    <xs:documentation>This field can be used to provide
        reference description</xs:documentation></span>

<xs:simpleType name="ReferenceTextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="25" />
        <xs:pattern
            value="[A-Za-z0-9\s~!&quot;@#$%&apos;\(\)\*\+,\-\./:;=>\?\[\\]_
                \{\}\^&#xa3;]*" />
    </xs:restriction>

<xs:complexType name="TextType">
    <xs:documentation>A character string (i.e. a finite set of
        characters) generally in the form of words
        of a language.</xs:documentation>
    <xs:simpleContent>
        <xs:extension base="xs:string" />
External reference

This element carries the external reference to LR. The external reference is the reference the CMS uses to identify the request within its own system.

Allocated by and description are not currently used.

Yes 1 25 Yes xs:string

<xs:element name="ExternalReference"
    type="Q1ExternalReferenceType"
    minOccurs="1" maxOccurs="1">

<xs:complexType name="Q1ExternalReferenceType">
    <xs:documentation>A unique reference given to identify a
        particular request, order or instruction in
        the system of the organisation allocating
        it with the ability to associate the name of
        the Company that has allocated it.</xs:documentation>

<xs:sequence>
    <xs:element name="Reference"
        type="ReferenceTextContentType"
        minOccurs="1" maxOccurs="1">
        <xs:annotation>
            <xs:documentation>A unique reference given to identify a
                particular request, order or instruction
                in the system of the organisation
                allocating it.</xs:documentation>

<span class="hmlr-mark-highlight" role="mark"><xs:element name="AllocatedBy"
    type="TextType"
    minOccurs="0" maxOccurs="1">
    <xs:annotation>
        <xs:documentation>The name of the organisation that has
        allocated the Reference</xs:documentation>

<xs:element name="Description"
    type="TextType"
    minOccurs="0" maxOccurs="1">
    <xs:annotation>
        <xs:documentation>This field can be used to provide
            reference description</xs:documentation></span>

<xs:simpleType name="ReferenceTextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="25" />
        <xs:pattern
            value="[A-Za-z0-9\s~!&quot;@#$%&apos;\(\)\*\+,\-\./:;=>\?\[\\]_
                \{\}\^&#xa3;]*" />
    </xs:restriction>

<xs:complexType name="TextType">
    <xs:documentation>A character string (i.e. a finite set of
        characters) generally in the form of words
        of a language.</xs:documentation>
    <xs:simpleContent>
        <xs:extension base="xs:string" />
Subject property This is the container element that holds the details of the address to be searched for.

<xs:element name="SubjectProperty"
    type="Q1SubjectPropertyType"
    minOccurs="1" maxOccurs="1">

<xs:complexType name="Q1SubjectPropertyType">
    <xs:documentation>The property which is the subject of the
        transaction.</xs:documentation>

<xs:element name="Address"
    type="Q1AddressType"
    minOccurs="1" maxOccurs="1">
    <xs:documentation>This is the address format used for the
        subject property</xs:documentation>

<xs:complexType name="Q1AddressType">
    <xs:documentation>A specific address that can be used for
        the delivery of physical mail.</xs:documentation>

<xs:sequence>
    <xs:element name="BuildingName"
        type="BuildingNameTextContentType"
        minOccurs="0" maxOccurs="1">
        <xs:documentation>The name of the building or house on a
            street of this address</xs:documentation>

    <xs:element name="BuildingNumber"
        type="BuildingNumberTextContentType"
        minOccurs="0" maxOccurs="1">
        <xs:documentation>The number of a building or house on a
            street of this address. Where the
            building or house occupies a range of
            numbers on the street (e.g. "1-9 Main St"),
            this will be the lower number on the
            range.</xs:documentation>

    <xs:element name="StreetName"
        type="StreetNameTextContentType"
        minOccurs="0" maxOccurs="1">
        <xs:documentation>Name of a street or
            thoroughfare</xs:documentation>

    <xs:element name="CityName"
        type="CityTextContentType"
        minOccurs="0" maxOccurs="1">
        <xs:documentation>The name of the city, town or village of
            this address.</xs:documentation>

    <xs:element name="PostcodeZone"
        type="PostcodeTextContentType"
        minOccurs="0" maxOccurs="1">
        <xs:documentation>The identifier for one or more properties
            according to the UK postal service; a group
            of letters and numbers added to the postal
            address to assist in the sorting of mail,
            as defined by the Royal Mail.</xs:documentation>
Building name

The name or number of a building or house.

  • If the building has both a name and a number, just the number should be used, unless the number also contains alpha characters (e.g. “70B Courtyard Apartments”).
  • If the number has just a single trailing alpha, the alpha should be dropped (e.g. use “70” instead of “70B” and select from the list returned).
  • The wildcard parameter (“*”) can be added at the end of this element, but may return more properties than required (e.g. using “HILL*” would return “HILLVIEW” and “HILLCREST”).
  • It is not possible to search on a sub-building name (e.g. “Ground Floor Flat”). Such properties would have to be selected from the list returned.
1 50 Yes xs:string

<xs:element name="BuildingName"
    type="BuildingNameTextContentType"
    minOccurs="0" maxOccurs="1">

<xs:simpleType name="BuildingNameTextContentType"
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="50" />
        <xs:pattern value=".*\S.*" />
    </xs:restriction>
</xs:simpleType>
Building number Leading information such as “Flat” should be dropped. 1 5 Yes s:string

<xs:element name="BuildingNumber"
    type="BuildingNumberTextContentType"
    minOccurs="0" maxOccurs="1">

<xs:simpleType name="BuildingNumberTextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="5" />
        <xs:pattern value=".*\S.*" />
    </xs:restriction>
</xs:simpleType>
Street name

This element carries the name of the street the target is located on.

The wildcard parameter (“*”) can be added at the end of this element to increase the chance of a match, but may return more properties than required.

1 80 Yes xs:string

<xs:element name="StreetName"
    type="StreetNameTextContentType"
    minOccurs="0" maxOccurs="1">

<xs:simpleType name="StreetNameTextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="80" />
        <xs:pattern value=".*\S.*" />
    <xs:restriction>
</xs:simpleType>
City name

This element carries the name of the city the target property is located in.

Locality should not be used here.

1 35 Yes xs:string

<xs:element name="CityName"
    type="CityTextContentType"
    minOccurs="0" maxOccurs="1">

<xs:simpleType name="CityTextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="35" />
        <xs:pattern value=".*\S.*" />
    </xs:restriction>
</xs:simpleType>
Postcode zone

This element carries the postcode of the target property.

Partial postcodes (even for London, e.g. SW1) cannot be searched and will be rejected.

1 8 Yes xs:string

<xs:element name="PostcodeZone"
    type="PostcodeTextContentType"
    minOccurs="0" maxOccurs="1">

<xs:simpleType name="PostcodeTextContentType">
    <xs:restriction base="xs:string">
        <xs:minLength value="1" />
        <xs:maxLength value="8" />
        <xs:pattern value="[A-Z]{1,2}[0-9R][0-9A-Z]? [0-9][A-Z-[CIKMOV]]{2}" />
    </xs:restriction>
</xs:simpleType>