The StructureLocator™ solves core problems faced everyday by ETL specialists, data engineers, database administrators, data scientists, and GIS professionals. For consumer-oriented solutions please check out LNS or the GeohashPhrase.
Traditionally, buildings have been numbered, and then referenced by the road, municipality, and region in which they reside. We call this system the street address system and use it in a multitude of ways — navigation, delivery, and post to name but a few. This system has survived, with good reason, for more than 500 years. Unfortunately, it is starting to show it’s ill-fit for the information age.
The StructureLocator™ augments the street address system and is the first step in moving beyond simple street addresses.
What is a StructureLocator™?
The core of the StructureLocator™ is a globally unique, alphanumeric identifier for every building and structure on the planet. A StructureLocator™ is like a car’s VIN, but for an individual structure instead of a vehicle. While a simple ID is sufficient in many cases, StructureLocator™ allows one to precisely identify a particular sub-unit inside a larger structure.
Of particular concern is backwards compatibility with the traditional street address system. The StructureLocator™ is explicitly designed to support translation, as needed, back to a street address. Given a fully specified StructureLocator™ we are able to construct a valid street address for a particular structure (or sub-unit).
Conversion from and to a street address is an essential feature. It enables lossless conversion of address data between systems, drop-in data augmentation for existing systems, and facilitates inter-communication with legacy systems. To do this we separately model street, unit, and structure information as part of each StructureLocator™.
How can I start?
You can retrieve the StructureLocator™ for any valid USA street address today by visiting the QA Locate Map. Simply query the street address (new addresses are not immediately returned, so a re-query may be necessary). No account needed.
To access our API simply start by creating a free account at https://ui.qalocate.com. There you’ll be able to test our API, for free, and if you like it and find it useful, upgrade!
There is a fundamental need within modern software systems, particularly IT systems, to associate location with identity. For example: water, sewer, gas, electric, cable TV, and internet services all need some way to uniquely associate the service location with a ubiquitous and stable identity in order to facilitate installation, repair, and payments.
A particularly common, and fragile, approach is to treat street addresses as equivalent to both an identity as well as a location. Traditional geocoding services enable this delusion by providing services to approximate locations for street addresses, and to derive a street address from a GPS coordinate.
Yet a street address is suitable neither as an identifier nor as a coordinate. Unfortunately, many, many software systems have been written with these assumptions. They are fragile, costly to operate, and time-consuming to service and support.
The StructureLocator™ is at the heart of our revolutionary new approach to geocoding.
The QA Locate API replaces a standard geocoding workflow with a new pair of operations — one to retrieve the StructureLocator™ for a street address, and another to query the latest values of particular attributes for the structure identified by a particular StructureLocator™.
The StructureLocator™ is purpose built for software and IT systems to facilitate safe and precise identification of a particular structure, and then communication or processing of information about that identity, without any danger of ambiguity, or uncertainty. And because structure identities may need to be communicated to, or handled by, various personnel, every StructureLocator™ has a simple textual representation.
StructureLocator™ attributes come in two flavors: that associated with the structure itself, such as a primary entrance or the building centroid, and that associated with the structures’ location, like street-address, school-district, postcode, or campus. We refer to these as ‘attributes’ and ‘relationships’, respectively.
While QA Locate is able to make a great of data available for each structure, we know your organization has its own data and needs. Our LRM system is designed so that organizations such as yours can safely and securely attach custom attributes with arbitrary data to any StructureLocator™. We’ll encrypt it, index it, and let you choose how to share and search it.
The benefits to enriching your data with the StructureLocator™ are immediate and long lasting:
- You immediately tame data rot. No longer do you need to worry about addresses becoming stale as streets are renamed, cities annexed, and postal-code boundaries shift.
- Data sets are now easily joined. A stable identifier is optimal for joins.
- Semi-structured addresses may be trivially de-duplicated. This is can make user error, or even fraud, trivial to detect.
By enriching data sources with the StructureLocator™ you open up completely new possibilities for your data.
Addresses are Complicated
Street addresses are worse than free text — they are messy, inconsistent, and poorly-structured (the apparent structure of street addresses is an illusion) textual data resistant to consistent normalization and standardization. This makes working with address data in software incredibly error prone and costly. The StructureLocator™ addresses these issues.
The diagram below depicts the messy space of addresses for a strip mall, along with the clean and clear identifiers you can instead use once you geocode with QA Locate.
How it Works
The StructureLocator™ separately models structure, unit, and street information in the GSIL, the LUIL, and the SSIL, respectively.
The core of the StructureLocator™ is the GSIL, or Global Structure Identification Label. The GSIL is a globally unique identifier for every unique building or structure. Every StructureLocator™ has a root GSIL. A GSIL is required for all StructureLocator™-keyed API requests.
The LUIL, or Local Unit Identification Label, allows the StructureLocator™ to identify sub-units of a structure, or of other sub-units. Structures without sub-units, like typical single family homes, will not have any LUILs. Depending on your use-case you may, or may not, need to consider LUILs.
The SSIL, or Street Specifier Identification Label, allows the StructureLocator™ to identify each named nearby street. Streets with multiple names have a SSIL for each unique name. The SSIL is of particular importance for backwards compatibility with street addresses. Depending on your use-cases you may, or may not, need to consider SSILs.
Taken together, these three components form a PCIL, or Place Composition Identification Label. The PCIL exists as a compact and flexible representation of the above data to facilitate data reference, storage, and lookup operations locally and through the QA Locate API. A given PCIL will always contain a GSIL and may optionally contain a LUIL, a SSIL, or both.
Note: at a technical level a StructureLocator™ is a PCIL and the two terms are interchangeable. However, we prefer to use StructureLocator™ for marketing and general documentation, and PCIL for technical documentation.
When a PCIL is presented to the API, it will return the most recent information for that PCIL. That may include:
- Normal return of information.
- Notice that the structure has been razed.
- Notice that some component of the PCIL is deprecated, or no longer valid, with a reference to a more current identity when one has been specified. This can happen for a few reasons, such as building re-modeling where sub-units are merged or split, or street renaming. See our FAQ for more information.
All changes to all records are stored in an append-only database model. Access to historical information is possible through the QA Locate API, but is not enabled by default. Please contact us if you require access to historical information.
QA Locate goes to great lengths to present a timely and accurate representation of the world. As we discover changes, or are informed of them, we update our data. We recognize, therefore, that changes will have been made without our knowledge, or for which we take longer than ideal to discover. Our goal is always an eventual convergence of our data with the ground truth of reality. Users should know that any and all data presented by our API reflects a snapshot of reality reflecting the most recent changes of which we are aware, and not necessarily reality as it is at that moment.
By using a StructureLocator™ in your own datasets your data is always fresh, since you are protected from having to discover and integrate location changes on your own.
Street Address to StructureLocator Conversion
A typical single-family-home street address will resolve to a single GSIL, a single SSIL, and no LUILs, unless they have been explicitly defined.
House with Detached Garage
A home with a detached garage results, as expected, with the home having single GSIL, a single SSIL, and no LUILs, and the garage with its own GSIL and SSIL (no LUIL having been defined).
There are several things to note here. First, because the garage is not a valid delivery point, no valid USPS address is constructible. However, a synthetic address can be constructed if necessary. Second, SSILs (as well as LUILs) are defined and valid only within a given GSIL. While the identifiers “LTW” and “J4M” both happen to refer to “Elm Street”, in the real world structures along the same physical road may start using a different street name, as often happens with street renaming.
A typical duplex street address will receive a resolve to a single GSIL, a single SSIL, and a single LUIL, that of the particular sub-unit. The response will not contain the LUIL of the other unit. Instead, an additional query is needed to fetch all active LUILs for a particular GSIL.
Some structures (e.g. office buildings) may have a complex relationship with the postal address system. The Port Authority building in New York is a great example. There are four different roads on which sub-units may exist, and have street addresses. The main entrances to the building are on 8th and 9th avenues, with parking mainly accessed on the cross streets. The build also has a number of floors. In most cases, the street addresses of various units are not mutually compatible.
Here is a greatly simplified diagram:
Let us consider this example more closely. Say that there are 5 LUILs, one for each unit, and 4 SSILs, one for each adjacent street. It is important to note that our API explicitly lists, when necessary, those LUIL+SSIL combinations that are translatable back to valid street addresses. Presenting an invalid combination to the API for translation to a street address can either result in an error (strict mode), or result in an unusable (i.e. USPS would have no associated delivery point, and thus fail to deliver to that address) street address (force mode).
The street address for a campus building will resolve to a single GSIL, a single SSIL, and a single LUIL. The building itself may potentially have many SSILs and LUILs. Additionally, the campus will have many GSILs, one each for the neighboring buildings. These relationships may be queried, along with the street addresses, where they exist, for other campus buildings.
More than Geocoding
The StructureLocator™ starts with simple geocoding, but proceeds to open up entirely new avenues for your business and your data. By leveraging our industry-first features you will be able to propel your business ahead of your competitors and offer higher-quality levels of service at a lower cost.
If there are use-cases you would like us to consider please contact us!
Can a building have NO GSILs?
can a building have multiple gsils?
Has a GSIL been assigned to every building?
Can a building have no LUILs?
Yes. Most single-family homes will not have any LUILs defined.
Can a building have no SSILs?
Yes, though in practice this will be rare in urban and developed environments.
What happens when a street is renamed?
Considering this as the sole change, then the GSIL and any LUILs will remain unaffected. The SSIL corresponding to the previous street name will be deprecated, a new SSIL will be allocated and attached to the record. Subsequent queries will be presented with the latest SSIL. Queries using the legacy SSIL will be directed to use the newer SSIL.
What happens when a zip-code changes?
Considering this as the sole change, then the GSIL, any SSILs, and any LUILs will remain unaffected. This change would be reflected solely in the record meta-data.
Can LUILs contain other LUILs?
Yes. A LUIL may contain other LUIL child elements. For example, a LUIL representing a floor of a hotel will contain all the LUILs of the rooms on that floor. Note: a PCIL will only ever refer to a single LUIL.
What is the life-cycle of a structure and its associated identifiers?
The logical life-cycle is:
- Initial creation:
- A GSIL is allocated for the structure
- If appropriate, a SSIL is allocated
- If appropriate, a LUIL is allocated
- If appropriate, a normalized canonical street address is attached to the resulting PCIL
- LUILs are allocated/deprecated as appropriate as the structure evolves
- SSILs are allocated/deprecated as appropriate as the surroundings evolve
- Meta-data is attached/deprecated as appropriate
- When the structure is razed or condemned the GSIL is marked deprecated and the history of the record marked as complete.
The history of a record is modeled as an append-only log of events. No data is ever deleted.
Glossary of Terms
GSIL – Global Structure Identification Label
Represents a unique building structure, e.g. an apartment building. There is exactly one of these for each unique building, values are universally unique, and values are never re-used. The primary, and only required, part of a PCIL. An example value (for an apartment complex building) is “SM0V4TGE2BP9”. Always 12 alphanumeric characters.
LUIL – Local Unit Identification Label
Represents a unique sub-unit of the building structure, e.g. a specific apartment in an apartment building. There can be many of these within a building identified by a GSIL. An example value for an apartment within the apartment building “SM0V4TGE2BP9” is “TVKKDGBYA5”. Unique only within the context of a given GSIL. LUILs may “nest” and reference other child-LUILs. This is how we model sub-units of larger units. Always 10 alphanumeric characters.
PCIL – Place Composition Identification Label
This is an instance of a collection of a GSIL (required), SSIL (optional), and LUIL (optional) which may be used to compose a unique identifier as a key which points to a particular set of building characteristics. There can be many SSIL + LUIL combinations for a particular building identified by the same GSIL. Every GSIL + SSIL + LUIL combination, where it exists, is unique. A complete PCIL will be textually rendered as “SM0V4TGE2BP9[ULM].TVKKDGBYA5”.
SSIL – Street Specifier Identification Label
Represents a unique street adjacent to the building structure. There can be many of these for a given GSIL. An example value for a street next to the building SM0V4TGE2BP9 is “ULM”. Unique within the content of a given GSIL. Always 3 alphanumeric characters.