Footprint XML Specification Version 0.1

The Footprint XML Specification is designed for easy delivery of volunteer opportunities that are collected by aggregating organizations (e.g., VolunteerMatch, Idealist). These organizations are referred to as "providers" as they provide opportunity information to the Footprint project. Footprint's goal is to organize these opportunities in one place and direct web traffic back to the provider when a user locates a suitable opportunity.

Overall, there are four main stand-alone objects: the FeedInfo, Organization, VolunteerOpportunity, and Review objects. The provider is the source of information for the FeedInfo object; this object specifies the details of the feed being transmitted to Footprint. The Organization object specifies the details of any group involved in the process, whether it be a sponsoring organization (e.g., Habitat for Humanity) or a local volunteer hub that coordinates local opportunities from various organizations. The VolunteerOpportunity object specifies the details of a volunteer opportunity and usually links to at least one organization (e.g., a sponsoring organization and/or a volunteer hub). The Review objects can be reviews of organizations or opportunities.

The spec is based on several existing XML specifications (specifically the specs developed by Network for Good, VolunteerMatch, and 1-800-Volunteer for opportunities, and Great Nonprofits for reviews). The major difference is that volunteer organizations and hubs are stand-alone objects to which opportunities refer, thus saving space in the XML document. For instance, if Habitat for Humanity posts 100 opportunities on Idealist, Idealist would create a feed with one Habitat Organization object and 100 VolunteerOpportunity objects, rather than 100 of each. Another difference is the use of the iCal Recurrence Rule format so that repeating opportunities need use multiple dateTimeRecurrance sub-objects to represent one opportunity.

Quick access to objects:

FeedInfo elements
Organization elements
VolunteerOpportunity elements
Review elements
location type elements
dateTimeDuration type elements

Sample data (so you can see the format in action) is available here.

The top-level object is FootprintFeed and requires a schemaVersion attribute. Order of objects does not matter. Thus, a feed would be wrapped in the following XML:

<?xml version="1.0" ?>
<FootprintFeed schemaVersion="0.1">
 ...
</FootprintFeed>

required: at least 1 times
Multiple not allowed
The FeedInfo object contains the information about the feed being delivered from the provider.
datatype: string
A unique ID for the provider organization. Either a number assigned by Footprint or a URI. Required. No default.

Examples:
<providerID>99</providerID>
<providerID>adomainweown.org</providerID>

datatype: string
Name of organization providing the feed. Required.

Example:
<providerName>Volunteer Opportunity Aggregators</providerName>

required: optional.
datatype: string
Only needed if the provider delivers multiple, mutually exclusive feeds (can be URI). Optional. Default is "0".

Example:
<feedID>1</feedID>

datatype: dateTimeOlsonDefaultPacific
The date+time (Olson time zone attribute optional, default is "America/Los_Angeles" which represents the U.S. Pacific time zone) that this specific iteration of the feed was created. Required. No default.

Examples:
<createdDateTime olsonTZ="Etc/UTC">2009-08-02T09:24:34</createdDateTime>
<createdDateTime olsonTZ="America/New_York">2009-03-02T09:24:34</createdDateTime>

required: optional.
datatype: string
URL to the provider organization's homepage. Optional. No default.

Example:
<providerURL>http://www.voloppaggregator.org</providerURL>

required: optional.
datatype: string
Terms of use. Optional. Recommended. No default.

Examples:
<termsOfUse>Public Domain.</termsOfUse>
<termsOfUse>See terms of use on our website: http://www.voloppaggregator.org/terms.html</termsOfUse>

required: optional.
datatype: string
Any notes about the feed. Optional. Not recommended. No default.

Examples:
<description>This feed contains all volunteer opportunities from Volunteer Opportunity Aggregators. </description>
<description>This feed contains only virtual volunteer opportunities from Volunteer Opportunity Aggregators. See feed with feedID=2 for physical opportunities. </description>

required: optional.
The Organizations object wraps a set of Organization objects. Order of Organization objects has no semantic meaning.
required: optional.
The Organization object represents any organization involved in the non-profit process (specifically volunteer hubs count as organizations). Organization objects are wrapped in an Organizations. Order of fields does not matter.
datatype: string
Unique ID within the feed. Most likely a number (from a database primary key) but can be a URI. Required. No default. Would be helpful if it were constant across feeds from one provider.

Examples:
<organizationID>57</providerID>
<organizationID>genericvolorg.org</organizationID>

datatype: string
required: optional.
National Employer Identification Number. Optional. No default.

Example:
<nationalEIN>91-1914867</nationalEIN>

datatype: integer
required: optional.
ID number from guidestar.org. Optional. No default. Cannot be blank.

Example:
<guidestarID>91</guidestarID>

datatype: string
Name of the organization. Required. No default.

Example:
<name>American Helpers United</name>

datatype: string
required: optional.
Mission statement of organization. Optional. No default.

Example:
<missionStatement>Change the world. Do good.</missionStatement>

datatype: string
required: optional.
Description of organization. Optional. No default.

Example:
<description>Based in Faketown, VA, we help people change the world and do good things.</description>

datatype: locationType
required: optional.
Physical location of organization. See locationType for type definition. Optional, but recommended at the city/regional/postalCode level. No default.

Example:
<location>
 <virtual>no</virtual>
 <streetAddress1>45 W 3rd St</streetAddress1>
 <city>Faketown</city>
 <region>VA</region>
 <postalCode>22322</postalCode>
</location>

datatype: string
required: optional.
Phone number (and extension) of organization. Optional. No default. Not expected from most providers.

Examples:
<phone>121-555-1212</phone>
<phone>1215551212</phone>
<phone>44 844 394 0 787</phone>

datatype: string
required: optional.
Fax number of organization. Optional. No default. Not expected from most providers.

Examples:
<fax>121-555-1213</fax>
<fax>1215551213</fax>

datatype: string
required: optional.
Email of organization. Optional. No default. Not expected from most providers.

Example:
<email>contact@coolvols.org</email>

datatype: string
required: optional.
URL of the organization's homepage. Optional. No default.

Example:
<organizationURL>http://www.coolvols.org</organizationURL>

datatype: string
required: optional.
URL of the organization's donation page. Optional. No default.

Example:
<donateURL>http://www.coolvols.org/donate</donateURL>

datatype: string
required: optional.
URL of the organization's logo. Optional. No default. Dimensions are TBD.

Example:
<logoURL>http://www.coolvols.org/logo.gif</logoURL>

datatype: string
required: optional.
URL of the organization's page on the providers site. Optional. No default. Highly recommended.

Examples:
<detailURL>http://www.awesomevolaggergator.org/orgs.php?id=3</detailURL>
<detailURL>http://www.anothervolaggergator.org/coolvols.html</detailURL>

required: optional.
The VolunteerOpportunities object wraps a set of VolunteerOpportunity objects. Order of VolunteerOpportunity objects has no semantic meaning.

Example:
<VolunteerOpportunities>
 <VolunteerOpportunity>
  ...
 </VolunteerOpportunity>
 <VolunteerOpportunity>
  ...
 </VolunteerOpportunity>
</VolunteerOpportunities>

required: optional.
The VolunteerOpportunity object represents one volunteer opportunity listing. It is capable of representing a repeating or ongoing event. Often an Opportunity object will link to an Organization object via the sponsoringOrganizationID or volunteerHubOrganizationID fields. Order of fields does not matter.
datatype: string
Unique ID within the feed. Often a primary key from a database, but can be a URI. Required. No default.

Examples:
<volunteerOpportunityID>157</volunteerOpportunityID>
<volunteerOpportunityID>urn:fpvol:101-001-157</volunteerOpportunityID>

required: optional.
Wrapper for sponsoringOrganizationID fields to allow multiple sponsoring organizations. Order does matter semantically and indicates the order that the sponsors should be shown (i.e., first sponsor is lead sponsor). Optional. Recommended.
datatype: string
required: optional.
Link to an Organization object that relates to this opportunity as the sponsoring organization via the organizationID field. Most opportunities will have an associated sponsoringOrganizationID, which funds and/or conducts the opportunity. Optional. Recommended. If present, must be the same as exactly one Organization.organizationID value in the same field.

Example:
<sponsoringOrganizationIDs>
 <sponsoringOrganizationID>57</sponsoringOrganizationID>
</sponsoringOrganizationIDs>

required: optional.
Wrapper for volunteerHubOrganizationID. Semantic order of volunteerHubOrganizationID fields does not matter.
datatype: string
required: optional.
Link to an Organization object that relates to this opportunity as the local volunteer hub via the organizationID field. In contrast to the sponsoring organization, the volunteer hub is the organization that coordinates many local opportunities conducted by several sponsoring organizations. A minority of opportunities will have a volunteer hub associated with them, so if you are confused by this field, that's fine, you probably do not have the data in your database. Optional. No default. If present, must be the same as exactly one Organization.organizationID value in the same field.

Example:
<volunteerHubOrganizationID>
 <volunteerHubOrganizationID>genericvolorg.org</volunteerHubOrganizationID>
</volunteerHubOrganizationID>

datatype: string
Short title of the opportunity. Required. No default.

Examples:
<title>Help at the Newville Shelter</title>
<title>Plant some Trees in Widerton</title>

datatype: string
required: optional.

Examples:
<abstract>Help cook, pass out food and clean at the Newville Shelter. Every Sunday at 10am to noon. Bring friends.</abstract>
<abstract>Come to Widerton park and plant trees this Sunday, April 19th, 2:00pm. Sponsored by the local SAVE organization. Bring gloves.</abstract>

datatype: integer
required: optional.
How many volunteers are needed for this opportunity. Special codes: -999 for unlimited. -8888 for unknown number of volunteers. Other than those exceptions, must be a non-negative integer. Optional. Default is -8888 to represent unknown number of volunteers. Cannot be blank. May not be up-to-date as volunteers sign up. Design decision: large negative numbers for special codes since overbooking might lead to accidental use of negative numbers.

Examples:
<volunteersNeeded>10</volunteersNeeded>
<volunteersNeeded>-999</volunteersNeeded>
<volunteersNeeded>-8888</volunteersNeeded>

datatype: integer
required: optional.
How many people have signed up for this event (through partner's website). Special codes: -8888 for unknown. Other than that exception, must be a non-negative integer. Optional. Default is -8888 to represent unknown number of rsvp's. Cannot be blank. May not be up-to-date as volunteers sign up.

Examples:
<rsvpCount>5</rsvpCount>
<rsvpCount>-8888</rsvpCount>

A wrapper around one or more dateTimeDuration sub-objects. See the sub-object documentation. Given the recurrence field in dateTimeDuration sub-object, the vast majority of cases should only need one dateTimeDuration sub-object. Order of dateTimeDuration objects has no semantic meaning. Required.
datatype: dateTimeDurationType
required: at least 1 times
Represents the dates/timing of the event. Has a recurrence element for repeated opportunities. Required. Order of fields does not matter.

Example of one-time event:
<dateTimeDurations>
 <dateTimeDuration>
  <openEnded>No</openEnded>
  <startDate>2009-04-19</startDate>
  <endDate>2009-04-19</endDate>
  <startTime olsonTZ="America/Chicago">14:00:00</startTime>
  <endTime olsonTZ="America/Chicago">16:00:00</endTime>
 </dateTimeDuration>
</dateTimeDurations>

Example of two-time (in this case, two-day) event:
<dateTimeDurations>
 <dateTimeDuration>
  <openEnded>No</openEnded>
  <startDate>2009-04-18</startDate>
  <endDate>2009-04-18</endDate>
  <startTime olsonTZ="America/Chicago">14:00:00</startTime>
  <endTime olsonTZ="America/Chicago">16:00:00</endTime>
 </dateTimeDuration>
  <openEnded>No</openEnded>
  <startDate>2009-04-19</startDate>
  <endDate>2009-04-19</endDate>
  <startTime olsonTZ="America/Chicago">14:00:00</startTime>
  <endTime olsonTZ="America/Chicago">16:00:00</endTime>
 </dateTimeDuration>
</dateTimeDurations>

Same example, but using the iCalRecurrance to specify a two-day event:
<dateTimeDurations>
 <dateTimeDuration>
  <openEnded>No</openEnded>
  <startDate>2009-04-18</startDate>
  <endDate>2009-04-19</endDate>
  <startTime olsonTZ="America/Chicago">14:00:00</startTime>
  <endTime olsonTZ="America/Chicago">16:00:00</endTime>
  <iCalRecurrence>FREQ=DAILY;COUNT=2</iCalRecurrence>
 </dateTimeDuration>
</dateTimeDurations>

Example of using the iCalRecurrance to specify a biweekly Tuesday meeting, open-ended:
<dateTimeDurations>
 <dateTimeDuration>
  <openEnded>Yes</openEnded>
  <startTime olsonTZ="America/New_York">17:00:00</startTime>
  <endTime olsonTZ="America/New_York">18:00:00</endTime>
  <iCalRecurrence>FREQ=WEEKLY;INTERVAL=2;WKST=SU;BYDAY=TU</iCalRecurrence>
 </dateTimeDuration>
</dateTimeDurations>

Example of an open inviation to come in during business hours for a day:
<dateTimeDurations>
 <dateTimeDuration>
  <openEnded>No</openEnded>
  <startDate>2009-04-16</startDate>
  <endDate>2009-04-16</endDate>
  <startTime olsonTZ="America/New_York">09:00:00</startTime>
  <endTime olsonTZ="America/New_York">17:00:00</endTime>
  <timeFlexible>Yes</timeFlexible>
 </dateTimeDuration>
</dateTimeDurations>

Example of a flexible, commitment of 2 months, with 10 hours of work per week:
<dateTimeDurations>
 <dateTimeDuration>
  <openEnded>Yes</openEnded>
  <duration>P2M</duration>
  <timeFlexible>Yes</timeFlexible>
  <commitmentHoursPerWeek>10</commitmentHoursPerWeek>
 </dateTimeDuration>
</dateTimeDurations>

required: optional.
A wrapper around one or more location sub-objects. See the sub-object documentation. Order of location objects matters only in that the first location is the default time zone if the time zone for the opportunity start or end time is unspecified. Required, unless volunteerHubOrganizationID is present and that Organization object has location informaion.
datatype: locationType
required: optional.
Represents where the opportunity is physically located or denotes a virtual (non-physical) opportunity. May use multiple location elements to represent multiple opportunity sites. Required, unless volunteerHubOrganizationID is present and that Organization object has location informaion. Order of fields does not matter.

Example of one physical location:
<locations>
 <location>
  <virtual>No</virtual>
  <name>Widerton Homless Shelter</name>
  <streetAddress1>10 City Ln</streetAddress1>
  <city>Widerton</city>
  <region>VA</region>
  <postalCode>22003</postalCode>
  <directions>Use door on the First St side of building</directions>
 </location>
</locations>

Example of an event taking place in two physical locations:
<locations>
 <location>
  <virtual>No</virtual>
  <name>Widerton Homless Shelter</name>
  <streetAddress1>10 City Ln</streetAddress1>
  <city>Widerton</city>
  <region>VA</region>
  <postalCode>22003</postalCode>
 </location>
 <location>
  <virtual>No</virtual>
  <name>Narrowton Homless Shelter</name>
  <streetAddress1>101 Park St</streetAddress1>
  <city>Narrowton</city>
  <region>VA</region>
  <postalCode>22004</postalCode>
 </location>
</locations>

Example of a virtual event (such as online translation help):
<locations>
 <location>
  <virtual>Yes</virtual>
 </location>
</locations>

datatype: yesNoEnum
required: optional.
Does the opportunity pay volunteers. Domain is {"Yes" | "No"}. Optional. Default is "No".
required: optional.
A wrapper for one or more audienceTag fields. An audienceTag field is a string that describes a group of people who would be appropriate volunteers. There is no set domain for the audienceTag field. Optional. Order of audienceTag entries has no semantic meaning.
datatype: string
required: optional.
String that represents a target audience. No domain. Optional. No default.

Example of a two-audience event:
<audienceTags>
   <audienceTag>Teens</audienceTag>
   <audienceTag>College-aged</audienceTag>
</audienceTags>

required: optional.
A wrapper for one or more categoryTag fields. A categoryTag field is a short string that describes the opportunity. Keywords also belong here, as categoryTag fields. There is no set domain for the categoryTag field. Order of categoryTag entries has no semantic meaning.
datatype: string
required: optional.
String that represents a category of the opportunity or a keyword/phrase of the opportunity. No domain. Optional. No default. Recommended.

Example of a three-category event:
<categoryTags>
   <categoryTag>Homeless</categoryTag>
   <categoryTag>Hunger</categoryTag>
   <categoryTag>Weekend opportunity</categoryTag>
</categoryTags>

datatype: integer
required: optional.
The minimum age of volunteers. Optional. Recommended. Cannot be blank.

Examples:
<minimumAge>18</minimumAge>
<minimumAge>7</minimumAge>
<minimumAge>50</minimumAge>

datatype: sexRestrictedEnum
required: optional.
Is the opportunity restricted to one sex/gender. Domain: {"Female" | "Male" | "Neither"}. Optional. Default is "Neither".

Examples:
<sexRestrictedTo>Neither</sexRestrictedTo>
<sexRestrictedTo>Female</sexRestrictedTo>
<sexRestrictedTo>Male</sexRestrictedTo>

datatype: string
required: optional.
String of all the skills a volunteer needs. One (potentially long) string. Optional. Recommended. No default.

Examples:
<skills>Able-bodied.</skills>
<skills>Be able to translate Spanish to English and back. Must be able to work remotely via the Internet.</skills>

datatype: string
required: optional.
Name of contact for this opportunity. Many providers will choose to populate the detailURL instead of this field. Optional. No default.

Example:
<contactName>John Smith</contactName>

datatype: string
required: optional.
Phone number (and extension) for the contact for this opportunity. Many providers will choose to populate the detailURL instead of this fields. Optional. No default.

Examples:
<contactPhone>121-555-1212x32</contactPhone>
<contactPhone>1215551212</contactPhone>
<contactPhone>44 844 394 0 787</contactPhone>

datatype: string
required: optional.
Email for the contact for this opportunity. Many providers will choose to populate the detailURL instead of this field. Optional. No default.

Example:
<contactEmail>johnsmith@example.com</contactEmail>

datatype: string
required: optional.
Links to the page on the provider's website that displays detailed information about the opportunity. Optional. No default. Highly recommended for feeds that do not transmit contact info.

Examples:
<detailURL>http://www.awesomevolaggergator.org/opps.php?id=3</detailURL>
<detailURL>http://www.anothervolaggergator.org/goodopportunity.html</detailURL>

datatype: string
required: optional.
Language of the opportunity. Optional. Default is "English".

Examples:
<language>English</language>
<language>Spanish</language>

datatype: string
required: optional.
Full description of the opportunity. Optional. No default. Recommended.

Example:
<description>Some really long text that describes the event.</description>

datatype: dateTimeOlsonDefaultPacific
required: optional.
Date+time (Olson time zone attribute, olsonTZ, optional; default is "America/Los_Angeles" which represents the U.S. Pacific time zone) of last update to the opportunity on the provider's site. Optional. No default.

Examples:
<lastUpdated olsonTZ="Etc/UTC">2009-08-02T09:24:34</lastUpdated>
<lastUpdated olsonTZ="America/New_York">2009-03-02T09:24:34</lastUpdated>
<lastUpdated>2009-03-02T06:24:34</lastUpdated>

datatype: dateTimeOlsonDefaultPacific
required: optional.
Date+time (Olson time zone attribute, olsonTZ, optional; default is "America/Los_Angeles" which represents the U.S. Pacific time zone) of when the ulisting/u of the opportunity (not the opportunity itself) expires on the provider's site. Optional. No default.

Examples:
<expires olsonTZ="Etc/UTC">2010-08-02T09:24:34</expires>
<expires olsonTZ="America/New_York">2010-03-02T09:24:34</expires>
<expires>2010-03-02T06:24:34</expires>

required: optional.
The Review object wraps a set of Reviews objects. Order of Review objects has no semantic meaning.
required: optional.
The Review object represents a review of an organization or volunteer opportunity. Review objects are wrapped in Reviews. Order of fields does not matter.
datatype: string
A unique ID for the review. Can be a URI. Required. No default.
datatype: string
required: optional.
Link to organizationID in the Organization object. Optional, though required if volunteerOpportunityID is not present. No default.
datatype: string
required: optional.
Link to volunteerOpportunityID in the VolunteerOpportunity object. Optional, though required if organizationID is not present. No default.
datatype: decimal
required: optional.
The rating, or numeric score, of the review. For instance, this field would be 4 if the review gives 4 of 5 stars. Optional. No default.
datatype: decimal
required: optional.
The maximum rating, or numeric score, possible of the review. For instance, this field would be 5 if the review gives 4 of 5 stars. Optional. Highly recommended if numericScore is present. No default.
datatype: string
required: optional.
The text of the review. Optional. No default.
datatype: string
required: optional.
The name of the reviewer. Optional. No default. Recommended.
datatype: string
required: optional.
An ID for the reviewer. If present, must identify a unique reviewer. Optional. No default.
datatype: string
required: optional.
What role the reviewer played in the review entity (either an organization or volunteer opportunity). No default.
datatype: dateTimeOlsonDefaultPacific
required: optional.
Date+time of when the review was created or last updated (Olson time zone attribute, olsonTZ, optional; default is "America/Los_Angeles" which represents the U.S. Pacific time zone). Optional. No default.
datatype: decimal
use is required
fixed value: 0.1
See VolunteerOpportunity for use examples.
datatype: yesNoEnum
required: optional.
Whether the opportunity is not limited by dates. Domain: Yes, No. Optional. Default is "No". If Yes, parser ignores startDate and endDate fields.
datatype: date
required: optional.
The start date of the opportunity. Optional. No default. Highly recommended if openEnded is No.

If left unspecified, the implementation is liable to either display its own epoch (e.g., 12/31/1969 00:00:00) as the opportunity start date or force openEnded to Yes.

Implementations should avoid displaying default dates when startDate is unspecified.
datatype: date
required: optional.
The end date of the opportunity. Optional. No default. Highly recommended if openEnded is No.

If left unspecified, the implementation is liable to either display its own epoch (e.g., 12/31/1969 00:00:00) as the opportunity end date or force openEnded to Yes.

Implementations should avoid displaying default dates when endDate is unspecified.
datatype: string
required: optional.
String from iCal format specifying the frequency of the opportunity. Optional. Default is the empty string, representing no recurrence. String does not include "RRULE:" and should start with "FREQ=".

Example for a biweekly meeting:
  <iCalRecurrence>FREQ=WEEKLY;INTERVAL=2;</iCalRecurrence>

datatype: duration
required: optional.
The duration of open-ended opportunity; i.e., the long-term commitment. For instance, a six-month club that meets only once a week for an hour would have a duration of six months. Type is xs:duration (e.g., P6M for six months). Optional. No default. Highly recommended if openEnded is Yes. Ignored if startDate and endDate are populated.
datatype: timeOlson
required: optional.
Start time for the opportunity (Olson time zone attribute, olsonTZ, optional; defaults to time zone of first location of opportunity; if virtual opportunity, default is "America/Los_Angeles" which represents the U.S. Pacific time zone). There is no "all day" option: exact times should be specified where applicable. Optional. No default.
datatype: timeOlson
required: optional.
End time for the opportunity (Olson time zone attribute, olsonTZ, optional; defaults to time zone of first location of opportunity; if virtual opportunity, default is "America/Los_Angeles" which represents the U.S. Pacific time zone). There is no "all day" option: exact times should be specified where applicable. Optional. No default.
datatype: yesNoEnum
required: optional.
Whether the opportunity is not limited by time of day. Domain: Yes, No. Optional. Default is "Yes" if both startTime and endTime are missing; default is "No" otherwise. If startTime and endTime are present and timeFlexible is Yes then the opportunity is assumed to be open between startTime and endTime but not necessarily fill up that entire time. If timeFlexible is Yes, then commitmentHoursPerWeek is recommended.
datatype: decimal
required: optional.
For long-term or time-flexible opportunities, how many hours per week are expected? Decimal values allowed. Optional. No default. Recommended if either openEnded or timeFlexible is Yes.
See VolunteerOpportunity for use examples.
datatype: yesNoEnum
required: optional.
Is the opportunity virtual (i.e., not physically located anywhere)? Domain: Yes, No. Optional. Default is "No".
datatype: string
required: optional.
Name of physical location. Example: Camelot Elementary School. Optional. No default.
datatype: string
required: optional.
First line of street address. Optional. No default. Not expected from most providers.
datatype: string
required: optional.
Second line of street address. Optional. No default. Not expected from most providers. Only provide if streetAddress1 is provided.
datatype: string
required: optional.
Third line of street address. Optional. No default. Not expected from most providers. Only provide if streetAddress1 and streetAddress2 are provided.
datatype: string
required: optional.
City of physical location. Optional. No default. Expected from most providers.
datatype: string
required: optional.
Region (e.g., State or Province) of physical location. Optional. No default. Expected from most providers.
datatype: string
required: optional.
Postal Code (e.g., zip code) of physical location. Optional. No default. Expected from most providers.
datatype: string
required: optional.
Country. Optional. Default is "US".
datatype: decimal
required: optional.
Latitude of location. Optional. No default. If conflicts with streetAddress1/city/region/postalCode, the latter has precedence.
datatype: decimal
required: optional.
Longitude of location. Optional. No default. If conflicts with streetAddress1/city/region/postalCode, the latter has precedence.
datatype: string
required: optional.
Directions to or special instructions for the location. Optional. No default.
Specific type of string with the restricted domain of "Yes" or "No" (without quotes).
derived from: string
allowed value: Yes
allowed value: No
Specific type of string with the restricted domain of "Female", "Male", or "Neither" (without quotes). For sex restriction.
derived from: string
allowed value: Female
allowed value: Male
allowed value: Neither
Date/time type that has an attribute called olsonTZ, which is a string from the Olson timezone database (default: "America/Los_Angeles").
The content is of the base type xs:datetime, except any additional timezone data is disallowed.
derived from: dateTimeNoTZ
datatype: string
use is optional
default value: America/Los_Angeles
Time type that has an attribute called olsonTZ, which is a string from the Olson timezone database (default: "America/Los_Angeles").
The content is of the base type xs:time, except any additional timezone data is disallowed.
derived from: timeNoTZ
datatype: string
use is optional
default value: (empty string)
Date/time without time zone.
derived from: dateTime
must match (regular expression): .+[0-9]
Time without time zone.
derived from: time
must match (regular expression): .+[0-9]
Sign in with Facebook, Google, More » | Help