
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>
      Address microdata description · Data-Vocabulary.org
    </title>
    <link href="/css/default.css" rel="stylesheet">
    <script src="//www.google.com/js/gweb/analytics/autotrack.js">
</script>
    <script>
new gweb.analytics.AutoTrack({profile: 'UA-12481063-1'});
    </script>
  </head>
  <body>
    <h1>
      <a href="/">Data-Vocabulary.org</a>
    </h1>
    <h2>
      Address
    </h2>
    <ul id="promo">
      <li>Looking for Google’s <a href=
      "http://google.com/support/webmasters/bin/answer.py?answer=99170">webmaster docs</a>?
      </li>
      <li>Looking for <a href="http://rdf.data-vocabulary.org/">RDF</a>?
      </li>
    </ul>
    <div itemid="http://data-vocabulary.org/Address" itemscope itemtype=
    "http://data-vocabulary.org/itemtype">
      <p>
        See our <a href=
        "http://www.google.com/support/webmasters/bin/answer.py?hl=en&amp;answer=146861">Businesses
        and Organizations webmaster docs</a> for a full explanation of the Address type, and how to
        encode Address data in RDFa, microformats or microdata. This page exists to contain a
        machine-readable microdata description of the Address type itself (at the URI
        http://data-vocabulary.org/Address).
      </p>
      <p>
        An item with the <a href=
        "http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#item-type">item
        type</a> http://data-vocabulary.org/Address represents a physical address. The following
        are the type’s <a href=
        "http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#defined-property-name">
        defined property names</a>:
      </p>
      <table>
        <tr>
          <th>
            Property
          </th>
          <th>
            Description
          </th>
        </tr>
        <tr itemid="http://data-vocabulary.org/Address/street-address" itemprop="itemprop"
        itemscope itemtype="http://data-vocabulary.org/itemprop">
          <td>
            <code itemprop="name">street-address</code>
          </td>
          <td itemprop="description">
            The street address.
          </td>
        </tr>
        <tr itemid="http://data-vocabulary.org/Address/locality" itemprop="itemprop" itemscope
        itemtype="http://data-vocabulary.org/itemprop">
          <td>
            <code itemprop="name">locality</code>
          </td>
          <td itemprop="description">
            The locality (e.g., a city).
          </td>
        </tr>
        <tr itemid="http://data-vocabulary.org/Address/region" itemprop="itemprop" itemscope
        itemtype="http://data-vocabulary.org/itemprop">
          <td>
            <code itemprop="name">region</code>
          </td>
          <td itemprop="description">
            The region (e.g., a state).
          </td>
        </tr>
        <tr itemid="http://data-vocabulary.org/Address/postal-code" itemprop="itemprop" itemscope=
        "" itemtype="http://data-vocabulary.org/itemprop">
          <td>
            <code itemprop="name">postal-code</code>
          </td>
          <td itemprop="description">
            The postal code.
          </td>
        </tr>
        <tr itemid="http://data-vocabulary.org/Address/country-name" itemprop="itemprop" itemscope=
        "" itemtype="http://data-vocabulary.org/itemprop">
          <td>
            <code itemprop="name">country-name</code>
          </td>
          <td itemprop="description">
            The name of the country.
          </td>
        </tr>
      </table>
    </div>
  </body>
</html>
