The development of Internet standards is led by the W3C (The World Wide Web Consortium). One aspect of W3C’s work involves metadata formats that improve accessibility and describe web content for other web services. This concept, developed by Tim Berners-Lee in 1998, is known as the Semantic Web. It adds machine-readable descriptions to web pages alongside freeform descriptions for other services. However, this concept has not gained widespread popularity due to its complexity and the development and spread of free text search by search engines. The lack of widespread adoption has also diminished the motivation for content producers to generate metadata.
In the context of geographic information, free text search is not the best way to search for and present results, as searching involves more contextual dependencies (current location, distance, connections). At the same time, tourism operators produce tourism-related geographic information in various forms as online communications. They also produce the same content for different platforms such as Google Maps, Tripadvisor, and Visit Finland Datahub.
This blog post introduces a new model that leverages JSON-LD for producing tourism data using an easy-to-use plugin for publishing systems that allows inputting geographic information.
Introduction to the New Model
The goal of the new model is to provide a recommendation for a sufficiently simple method to describe tourism-related geographic information as metadata on a web page. This enables search engine-like utilization of the information and motivates tourism operators to produce metadata alongside the geographic information.
Metadata is produced in commonly used formats, such as Schema markup, JSON-LD, and XML. These formats describe content using a standardized vocabulary, standardized by organizations like schema.org. However, the vocabulary for tourism is only partially functional, covering mainly restaurants and other points of interest with opening hours. For presenting tourism entities and routes, schema.org only has a draft proposal, which is not widely used.
JSON-LD Data Model for Tourism Sites and Routes
The model can be implemented with a plugin for publishing systems, allowing tourism operators to easily enter geographic and other required metadata. The plugin automatically generates JSON-LD formatted data, which is added to the webpage’s metadata.
Example JSON-LD model for a tourism site and route with machine-readable recommendation guidelines:
{
"@context": "https://schema.org",
"@type": "ItemList",
"name": "Tourism Entity",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"item": {
"@type": "Place",
"name": "Site 1",
"description": "Description of Site 1",
"address": {
"@type": "PostalAddress",
"streetAddress": "Address 1",
"addressLocality": "City 1",
"addressRegion": "Region 1",
"postalCode": "12345",
"addressCountry": "Country 1"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.1695,
"longitude": 24.9354
},
"recommendations": {
"@type": "Recommendation",
"weatherRecommendation": {
"condition": "Rain",
"advice": "Do not recommend"
},
"seasonRecommendation": {
"season": "Summer",
"advice": "Recommended"
},
"timeRecommendation": {
"timeOfWeek": "Weekend",
"advice": "Recommended"
}
}
}
},
{
"@type": "ListItem",
"position": 2,
"item": {
"@type": "Place",
"name": "Site 2",
"description": "Description of Site 2",
"address": {
"@type": "PostalAddress",
"streetAddress": "Address 2",
"addressLocality": "City 2",
"addressRegion": "Region 2",
"postalCode": "67890",
"addressCountry": "Country 2"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.2055,
"longitude": 24.6559
},
"recommendations": {
"@type": "Recommendation",
"weatherRecommendation": {
"condition": "Good weather",
"advice": "Recommended"
},
"seasonRecommendation": {
"season": "Spring",
"advice": "Best"
},
"timeRecommendation": {
"timeOfDay": "Peak hours",
"advice": "Avoid"
}
}
}
},
{
"@type": "ListItem",
"position": 3,
"item": {
"@type": "Place",
"name": "Site 3",
"description": "Description of Site 3",
"address": {
"@type": "PostalAddress",
"streetAddress": "Address 3",
"addressLocality": "City 3",
"addressRegion": "Region 3",
"postalCode": "54321",
"addressCountry": "Country 3"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.4518,
"longitude": 25.4414
},
"recommendations": {
"@type": "Recommendation",
"weatherRecommendation": {
"condition": "Winter",
"advice": "Do not recommend"
},
"seasonRecommendation": {
"season": "Summer",
"advice": "Best"
},
"timeRecommendation": {
"timeOfWeek": "Weekday",
"advice": "Good choice"
}
}
}
}
],
"route": {
"@type": "Route",
"name": "Route Line",
"description": "Route connecting Sites 1, 2, and 3",
"startLocation": {
"@type": "Place",
"name": "Site 1",
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.1695,
"longitude": 24.9354
}
},
"endLocation": {
"@type": "Place",
"name": "Site 3",
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.4518,
"longitude": 25.4414
}
},
"routeSegment": [
{
"@type": "Route",
"name": "Route Segment 1",
"startLocation": {
"@type": "Place",
"name": "Site 1",
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.1695,
"longitude": 24.9354
}
},
"endLocation": {
"@type": "Place",
"name": "Site 2",
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.2055,
"longitude": 24.6559
}
}
},
{
"@type": "Route",
"name": "Route Segment 2",
"startLocation": {
"@type": "Place",
"name": "Site 2",
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.2055,
"longitude": 24.6559
}
},
"endLocation": {
"@type": "Place",
"name": "Site 3",
"geo": {
"@type": "GeoCoordinates",
"latitude": 60.4518,
"longitude": 25.4414
}
}
}
]
}
}
Summary
The adoption of the JSON-LD data model and its production through an easy-to-use plugin for publishing systems offers tourism operators a simple and efficient way to produce and share tourism-related geographic information. This not only improves the accessibility and usability of the information but also motivates tourism operators to produce high-quality, machine-readable metadata. This new model can be widely used in the tourism industry, helping to develop better and more user-friendly services for travelers.