Skip to main content

Knowledge Domain Database - Tourism

How does the domain work before writing a line of code? Choose a document from the left tree: each page explains part of the model.

Business Rules - Tourism Domain

Business rules define the explicit constraints and behavioural policies that govern operations in the Tourism domain. Each rule is identified by a BR-NNN code for traceability.

---

BR-001 - Booking Date Validation

Category: Data integrity Scope: Booking entity, StayPeriod value object

A Booking can only be created with valid dates:

  • Check-in date must be on or after the current calendar date
  • Check-out date must be strictly after the check-in date (minimum 1 night - INV-001)
  • The maximum advance booking window may be defined by the operator (typical range: 365–730 days ahead)
  • Violation: The system rejects the Booking request and returns a validation error specifying the invalid field. Traceable invariant: INV-001

    ---

    BR-002 - Destination and Attraction Carrying Capacity

    Category: Sustainability constraint Scope: Destination, Attraction, booking availability

    A Tourist Destination and each of its Attractions have a defined maximum carrying capacity (physical and/or ecological). When the number of simultaneous visitors reaches the threshold:

  • No new bookings or access passes may be issued for that time slot
  • The booking system closes that slot automatically
  • The DMO/Tourism Entity is notified to activate a visitor flow management protocol
  • Alternative destinations or adjacent time slots are proposed to the Tourist
  • Regulatory basis: UNWTO sustainable tourism principles; GSTC destination criteria. Traceable invariant: INV-002

    ---

    BR-003 - Cancellation Policy and Penalties

    Category: Contractual constraint Scope: Booking lifecycle, CancellationPolicy value object

    The cancellation penalty depends on the rate type:

  • FLEXIBLE rate: Free cancellation up to the number of hours defined in freeDeadlineHours; partial or full penalty after that threshold
  • NON_REFUNDABLE rate: 100% penalty immediately upon confirmation; no refund under any circumstance
  • EARLY_BOOKING rate: Penalty defined contractually (typically 50–100% of the total stay)
  • Payment-window expiry (PAYMENT_PENDING state): the Booking is automatically cancelled if payment is not received within the defined window.

    Regulatory basis: EU Directive 2015/2302 (Package Travel), which provides for exceptions in cases of unavoidable and extraordinary circumstances (natural disasters, pandemics, documented force majeure). Traceable events: BookingCancelled, NoShowRecorded

    ---

    BR-004 - Accommodation Structure Classification

    Category: Regulatory compliance Scope: AccommodationStructure entity

    Each Accommodation Structure must declare a valid classification type: hotel, agriturismo, B&B, hostel, resort, or other. Hotel-type structures must display a star rating assigned by the competent regional authority.

    • Stars are assigned based on objective minimum requirements (surface area, services, facilities) defined by regional decree
    • The star rating may not be self-declared; it requires official certification
    • Structures operating without a valid classification are not eligible to appear in the booking system
    Regulatory basis: Italian Framework Law on Tourism n. 135/2001; regional implementation decrees.

    ---

    BR-005 - Itinerary Completeness before Publication

    Category: Product quality gate Scope: Itinerary entity, Itinerary lifecycle

    An Itinerary may not transition from DRAFT to PUBLISHED state unless:

  • Every night of the itinerary has an associated confirmed Accommodation Structure (INV-003)
  • Each planned tourist service (guided tour, transport leg, activity) has a confirmed supplier
  • The Itinerary price is set and includes all mandatory components as required by EU Directive 2015/2302
  • Violation: Transition to PUBLISHED is blocked; the operator is notified of which stages are incomplete. Traceable invariant: INV-003

    ---

    BR-006 - Tour Guide Territorial Authorisation

    Category: Professional regulatory compliance Scope: TouristGuide actor, guided visit services

    A Tourist Guide may only lead visitors in the territories for which they hold a valid regional authorisation. The authorisation:

  • Is non-transferable
  • Must be renewed according to the requirements of the issuing region
  • Does not automatically extend to adjacent regions or UNESCO sites unless explicitly included
  • A Tour Operator may not assign a guide to a destination for which the guide is not authorised.

    Regulatory basis: Italian Framework Law on Tourism n. 135/2001.

    ---

    BR-007 - Tour Operator Anti-insolvency Insurance

    Category: Consumer protection - mandatory Scope: TourOperator actor, Package Tourism

    Any Tour Operator that sells Package Tourism products (as defined under EU Directive 2015/2302) must maintain mandatory anti-insolvency insurance or a bond. This guarantees:

  • Repatriation of Tourists if the operator becomes insolvent during a trip
  • Reimbursement of advance payments for cancelled packages
  • Violation: The operator may not legally sell packages without this coverage. Regulatory basis: EU Directive 2015/2302, transposed in Italy by Legislative Decree n. 62/2018.

    ---

    BR-008 - Agriturismo Agricultural Prevalence

    Category: Regulatory compliance - specialised accommodation Scope: AccommodationStructure with type=agriturismo

    An agriturismo (farm tourism) accommodation is a specialised type of AccommodationStructure. Its fundamental constraint is that the agricultural activity of the farm must remain the primary activity by revenue. Specifically:

  • Tourism revenue must not exceed agricultural revenue on an annual basis
  • The accommodation activity must be carried out by the agricultural entrepreneur using their own farm buildings, land, and resources
  • If the tourism revenue exceeds the agricultural revenue, a non-compliance alert is generated
  • Regulatory basis: Italian Law n. 96/2006 (Framework for Agriturismo).