A library containing itinerary data model and itinerary extraction code.

Data Model

This follows the reservation ontology from and Google's extensions to it (

De/serialization is provided via KItinerary::JsonLdDocument.

Data Extraction

The entry point for data extraction is KItinerary::ExtractorEngine. Depending on the provided input, this will look for:

  • Structured data in JSON-LD or XML microdata format, from HTML emails, implemented by KItinerary::StructuredDataExtractor.
  • Structured data from IATA bar coded boarding passes (BCBP), provided by KItinerary::IataBcbpParser.
  • Structured data from UIC 918.3 train ticket passes, provided by KItinerary::Uic9183Parser.
  • Unstructured data from plain text, HTML, iCal, PDF or email documents, using vendor-specific scripts, provided by KItinerary::ExtractorEngine.
  • Unstructured data from Apple Wallet boarding passes, using vendor-specific scripts.
  • Any of the above in email or PDF documents.

Data Augmentation

Extracted data can be augmented by static knowledge obtained from Wikidata:

Via KItinerary::KnowledgeDb:

  • Airport IATA codes, countries, timezones and geo coordinates.
  • Train station countries, timezones and geo coordinates.
  • Train station lookup by UIC, IBNR, SNCF, VR or Indian Railway station identifiers.
  • Country ISO codes, driving side and used power plugs.
  • Timezone and country lookup from a geo coordinate.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sun Jun 4 2023 04:01:33 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.