This schema describes Opencaching Network extensions to the: 1. Topografix GPX file XML schema, identified by "http://www.topografix.com/GPX/1/0" XML namespace. We will refer to elements in this namespace using the "gpx:" prefix. 2. Groundspeak's geocaching GPX extensions, identified by "http://www.groundspeak.com/cache/1/0/1" XML namespace. We will refer to elements in this namespace using the "groundspeak:" prefix. Note, that "Opencaching Network" refers to the sites such as Opencaching.PL and Opencaching.DE, NOT the (discontinued) Garmin's OpenCaching.COM site. Some Opencaching-specific information is missing in this schema. It may be added later in a backward-compatible manner. E.g. - Opencaching geocache attributes - Opencaching log entry types - Opencaching waypoint types - Opencaching cache maintenance state flags You may join the discussion on these issues at https://github.com/opencaching/gpx-extension-v1 . This element is supposed to be added as a child of the gpx:wpt element. The type of geocache in terms of common Opencaching types. So far, the following types have been defined: * Traditional Cache * Multi-cache * Quiz Cache * Moving Cache * Virtual Cache * Webcam Cache * Podcast Cache * Event Cache * Own Cache * Other Cache The types "Quiz", "Moving", "Podcast", "Own" and "Other" are not defined for groundspeak:type and will usually be mapped to groundspeak:type "Unknown Cache", which usually will be understood as "Mystery Cache" or "Quiz Cache". Note that the type "Other Cache" is called "Unknown Cache" or "Unknown type" on the OC websites. We adopted the OKAPI naming "Other" here, which clearer expresses its meaning and distinguishes it from Groundspeak "Unknown Cache". More OC types may be added. You should be prepared to handle them, so that your app does not break if it encounters an unknown cache type. The size of the geocache. So far, the following sizes have been definied: oc:size usual groundspeak:container mapping Nano Micro (recommended) or Other Micro Micro Small Small Regular Regular Large Large Very large Large Other Other No container Virtual More sizes may be added. You should be prepared to handle them, so that your app does not break if it encounters an unknown cache size. Approximate total amount of time needed to find the cache, in hours. This will usually include the time to reach the cache location and go back (from/to a parking spot, etc.) Approximate total distance needed to find the cache, in kilometers. This will usually include the time to reach the cache location and go back (from/to a parking spot, etc.) If true, then a password is required in order to submit 'Found it' or 'Attended' logs for this geocache. If this element is not present, this means "we don't know if a log password is required". To express "no password is required", you must include oc:requires_password with "false" (or 0) value. The "waypoint code" of a listing of this geocache at another geocaching site. E.g. the codes OP8EB7 (Opencaching.PL), OC12C6F (Opencaching.DE) and GC6BX4Z (Geocaching.COM) represent different listings of the same geocache. If gpx:wpt contains the Opencaching.PL listing, then gpx:name is OP8EB7, while there can be oc:other_code elements for OC12C6F and GC6BX4Z. Please keep in mind that all the properties of a geocache can be different in different listings. E.g when this schema was drafted, OP8EB7 had difficulty 2, OC12C6F had difficulty 2.5 and GC6BX4Z had difficulty 1.5. The geocache properties given in a GPX file only refer to the gpx:name listings, not to the oc:other_code listings. Any uppercase string may appear as waypoint code. Some well-known code prefixes are: CX: geocaching.com challenge (discontinued) EC: extremcaching.com GC: geocaching.com NC: navicache.com OB: opencachig.be .nl .lu OC: opencaching.de .it .es .fr OK: opencache.uk OP: opencaching.pl OR: opencaching.ro OS: opencaching.se .no (discontinued) OU: opencaching.us OX: opencaching.com (discontinued) OZ: opencaching.cz TC: terracaching.com TP: geocaching.com.au This element contains Opencaching-specific information about log entries of the geocache. This type contains Opencaching-specific information of one log entry. If a groundspeak:log element is present with the same ID attribute, you can merge oc:log and the groundspeak:log to get the whole log entry information. It is NOT guaranteed that there is a matching groundspeak:log element! The GPX file may contain only the OC-specific information. If this element is true (or 1), then the log entry has been "officially" made by a member of the Opencaching site's team. The site-dependent ID of the log entry. If there is a groundspeak:log element with the same ID, then it contains information of the same log entry. IMPORTANT NOTE: This ID is unique only for GPX files from the same source. Different log entries retrieved from different geocaching websites can have the same ID. Also, when Opencaching websites will eventually be interconnected, the same log entry will have different IDs when retrieved from different Opencaching sites. So if you need a unique and safe identifier for log entries, use the UUID instead. This element contains the UUID of the log entry. You can use it to retrieve additional information about the log entry through the Opencaching API (OKAPI), or just as a globally unique identifier of the log entry. Note: Though this attribute is optional by definition, all OC websites which support the OC GPX extension supply it for each log entry. So when retrieving data from an OC site, you can rely on the UUID. Also, if you process the oc:logs element, you MUST NOT discard UUIDs, but retain them in any GPX output. The only case when the UUID may be omitted is if you create a GPX file from some source with does not supply an OC UUID, but need to include other oc:log properties like the site team entry flag.