Transmodel Ontology - Fares
type: Ontology
version IRI: https://w3id.org/transmodel/fares/0.3
license: http://creativecommons.org/licenses/by/4.0/
creator: Jhon Toledo (Ontology Engienering Group - Universidad Politécnica de Madrid)
creator: Miguel Angel García (Ontology Engienering Group - Universidad Politécnica de Madrid
creator: Oscar Corcho (Ontology Engineering Group - Universidad Politécnica de Madrid)
date: 2021-04-20
description: Module of the Transmodel Ontology focused on fares. This ontology provides support to the NeTEx model. Visit https://github.com/oeg-upm/transmodel-ontology
rights: Creative Commons Attribution 4.0 International (CC BY 4.0)
version info: This is the initial version of the module on Fares, after considering the UML models and XSD descriptions of Transmodel and NeTEx

aChainOf
type: ObjectProperty
comment: This property represents a chain or sequence of another class

composedOf
type: ObjectProperty

definedBy
type: ObjectProperty

described through
type: ObjectProperty
sub property of: contactPoint
domain: Distribution Channel
type: NamedIndividual
comment: This property relates a Distribution Channel with its corresponding Contact Details. It is a subproperty of schema:contactPoint, which relates anything to a ContactPoint

distribution Channel Type
type: ObjectProperty
domain: Distribution Channel
range: Class
  intersection of: Concept
  intersection of: Restriction
    on property: inScheme
    has value: distribution-channel-type
type: NamedIndividual
comment: This property assigns to a Distribution Channel one or several SKOS Concepts from the codelist on types of distribution channels

endOf
type: ObjectProperty

fareType
type: ObjectProperty
type: NamedIndividual
comment: This property is used to link a fare with the types of fares available in the SKOS concept scheme of types of fares
comment: fare type

governed by
type: ObjectProperty
domain: Distribution Channel
range: Organisation
type: NamedIndividual
comment: This property relates a Distribution Channel to the Organisation that takes responsability over it

relatedTo
type: ObjectProperty

representing
type: ObjectProperty

specifiedBy
type: ObjectProperty

startOf
type: ObjectProperty

viewedAs
type: ObjectProperty

description
type: DatatypeProperty
type: NamedIndividual

name
type: DatatypeProperty
type: NamedIndividual

accessNumber
type: DatatypeProperty
comment: Access number in sequence.

amount
type: DatatypeProperty
domain: FarePrice
range: float
comment: Price in a specified currency.

discountAmount
type: DatatypeProperty
domain: FarePrice
range: float
comment: Discount given, if any, in a specified currency.

discountPercentageUsed
type: DatatypeProperty
domain: FarePrice
range: float
comment: Discount percentage used, if any when deriving price.

embargoUntilDate
type: DatatypeProperty
comment: Data is to be kept private until the stated date.

endDate
type: DatatypeProperty
range: dateTime
comment: End date for price validity.

endGeographicalValue
type: DatatypeProperty
range: string
comment: End value for Geographical Interval.

InfoUrl
type: DatatypeProperty
comment: Link for product information.

isAllowed
type: DatatypeProperty
range: boolean
comment: Whether the fare price is allowed. default is true.

isFirstInSequence
type: DatatypeProperty
comment: Whether element is the first in the sequence.

isLastInSequence
type: DatatypeProperty
comment: Whether element is the last in the sequence.

limitedAccessNumber
type: DatatypeProperty
comment: Flag indicating whether this rights gives an unlimited number of accesses or not.

privateCode
type: DatatypeProperty
domain: Fare Structure Element
range: string
type: NamedIndividual
comment: Alternative identifier of an entity. can be used to associate with legacy systems.

ranking
type: DatatypeProperty
range: integer
comment: Relative ranking to be given to discount to use to favour it over other discounts available.

returnFareTwiceSingle
type: DatatypeProperty
domain: Fare Structure Element
range: boolean
type: NamedIndividual
comment: Whether the return ticket is the double as the fare for a single ticket.

startDate
type: DatatypeProperty
range: dateTime
comment: start date for price validity.

startGeographicalValue
type: DatatypeProperty
range: string
comment: start value for geographical interval.

url
type: DatatypeProperty
domain: UsageParameter
range: string
comment: A parameter used to specify the use of a sales package or a fare product.

Point
type: Class

ScheduledStopPoint
type: Class
subclass of: Point
comment: A specialisation of scheduled stop point describing a stop with fare accounting and routing characteristics.

TariffZone
type: Class
subclass of: Zone
subclass of: Restriction
  on property: composedOf
  some values from: ScheduledStopPoint
comment: A Zone used to define a zonal fare structure in a zone-counting or zone-matrix system.

Zone
type: Class

AccessRightInProduct
type: Class
subclass of: FareElementInSequence
subclass of: Restriction
  on property: viewedAs
  some values from: ValidableElement
comment: A validable element as a part of a pre-assigned fare product, including its possible order in the set of all validable elements grouped together to define the access right assigned to that pre-assigned fare product.

AccessRightParameterAssignment
type: Class
subclass of: Restriction
  on property: isAllowed
  max qualified cardinality: 1
  on data range: boolean
comment: The assignment of a fare collection parameter (referring to geography, time, quality or usage) to an element of a fare system (access right, validated access, control mean, etc.).

CappingRulePrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a capping rule: default total price, discount in value or percentage etc.

CommercialProfile
type: Class
subclass of: UsageParameter
comment: A category of users depending on their commercial relations with the operator (frequency of use, amount of purchase etc.), often used for allowing discounts.

CompanionProfile
type: Class
subclass of: UsageParameter
comment: The number and characteristics of the persons entitled to travel in a group or as companions to another User Profile.

ControllableElement
type: Class
subclass of: PriceableObject
subclass of: Restriction
  on property: viewedAs
  some values from: ControllableElementInSequence
comment: The smallest controllable element of public transport consumption, all along which any validity parameter assignment remains valid.

ControllableElementInSequence
type: Class
subclass of: FareElementInSequence
comment: A controllable element as a part of a fare structure element, including its possible order in the sequence of controllable elements grouped together to form that fare structure element, and its possible quantitative limitation.

ControllableElementPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a Controllable Element: default total price, discount in value or percentage etc.

DiscountingRule
type: Class
subclass of: PricingRule
comment: A price calculation rule determined by a set of discounts, depending upon a usage parameter, to be applied to a fare price.

DistanceMatrixElement
type: Class
subclass of: PriceableObject
subclass of: Restriction
  on property: relatedTo
  some values from: DistanceMatrixElementPrice
subclass of: Restriction
  on property: endOf
  qualified cardinality: 1
  on class: TariffZone
subclass of: Restriction
  on property: startOf
  qualified cardinality: 1
  on class: TariffZone
comment: A cell of an origin-destination matrix for Tariff zones or stop points, expressing a fare distance for the corresponding trip: value in km, number of fare units etc.

DistanceMatrixElementPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a Distance Matrix Element: default total price etc.

DistributionAssignment
type: Class
comment: An assignment of the country and/or distribution channel through which a product may or may not be distributed.

Distribution Channel
type: Class
subclass of: Restriction
  on property: distribution Channel Type
  all values from: Class
    intersection of: Concept
    intersection of: Restriction
      on property: inScheme
      has value: DistributionChannelType
subclass of: Restriction
  on property: governed by
  all values from: Organisation
type: NamedIndividual
comment: A type of outlet for selling a Fare Product

EntitlementGiven
type: Class
subclass of: UsageParameter
comment: Parameter indicating whether a particular fare product provides an entitlement to buy or use an access right.

EntitlementProduct
type: Class
subclass of: ServiceAccessRight
comment: A precondition to access a service or to purchase a Fare Product issued by an organisation that may not be a pt operator (e.g. military card).

EntitlementRequired
type: Class
subclass of: UsageParameter
comment: Parameter indicating whether a particular fare product requires an entitlement to by or use an access right.

Exchanging
type: Class
subclass of: Reselling
comment: Whether and how the access right may be exchanged for another access right.

FareElementInSequence
type: Class
subclass of: Restriction
  on property: accessNumber
  some values from: integer
subclass of: Restriction
  on property: isFirstInSequence
  max qualified cardinality: 1
  on data range: boolean
subclass of: Restriction
  on property: isLastInSequence
  max qualified cardinality: 1
  on data range: boolean
subclass of: Restriction
  on property: limitedAccessNumber
  max qualified cardinality: 1
  on data range: boolean
comment: A fare element as a part of an element, including its possible order in the sequence of fare elements.

FareInterval
type: Class
subclass of: PriceableObject
comment: An interval based aspect of the fare structure.

FarePrice
type: Class
subclass of: Restriction
  on property: amount
  max qualified cardinality: 1
  on data range: float
subclass of: Restriction
  on property: discountAmount
  max qualified cardinality: 1
  on data range: float
subclass of: Restriction
  on property: discountPercentageUsed
  max qualified cardinality: 1
  on data range: float
subclass of: Restriction
  on property: endDate
  max qualified cardinality: 1
  on data range: dateTime
subclass of: Restriction
  on property: isAllowed
  max qualified cardinality: 1
  on data range: boolean
subclass of: Restriction
  on property: ranking
  max qualified cardinality: 1
  on data range: integer
subclass of: Restriction
  on property: startDate
  max qualified cardinality: 1
  on data range: dateTime
type: NamedIndividual
comment: Price features defined by default characterizing different price groups.

FareProduct
type: Class
subclass of: ServiceAccessRight
subclass of: Restriction
  on property: relatedTo
  some values from: FareProductPrice
subclass of: Restriction
  on property: specifiedBy
  some values from: GenericParameterAssignment
comment: An immaterial marketable element (access rights, discount rights, etc.), specific to a charging moment.

FareProductPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a fare product: default total price, discount in value or percentage etc.

Fare Structure Element
type: Class
subclass of: PriceableObject
subclass of: Restriction
  on property: definedBy
  some values from: DistanceMatrixElement
subclass of: Restriction
  on property: definedBy
  some values from: GeographicalInterval
subclass of: Restriction
  on property: definedBy
  some values from: GeographicalStructureFactor
subclass of: Restriction
  on property: relatedTo
  some values from: FareStructureElementPrice
subclass of: Restriction
  on property: fareType
  all values from: Class
    intersection of: Concept
    intersection of: Restriction
      on property: inScheme
      has value: tariff-basis-type
subclass of: Restriction
  on property: aChainOf
  min qualified cardinality: 1
  on class: ControllableElementInSequence
subclass of: Restriction
  on property: name
  max qualified cardinality: 1
  on data range: string
subclass of: Restriction
  on property: privateCode
  max qualified cardinality: 1
  on data range: string
subclass of: Restriction
  on property: returnFareTwiceSingle
  max qualified cardinality: 1
  on data range: boolean
type: NamedIndividual
comment: A Fare Structure Element is a service consumption right determined by a set of quantitative (spatial,temporal) rules (i.e. determined by are structure parameters, such as zones, sections, hours, etc);
comment: A sequence or set of controllable elements to which rules for limitation of access rights and calculation of prices (fare structure) are applied.
comment: In some cases, a Fare Structure Element may involve several access rights that must be consumed in a particular order. This may be captured by a Fare Structure Element In Sequence
label: FareStructureElement

FareStructureElementInSequence
type: Class
subclass of: FareElementInSequence
subclass of: Restriction
  on property: viewedAs
  some values from: Fare Structure Element
comment: A fare structure element as a part of a validable element, including its possible order in the sequence of fare structure elements forming that validable element, and its possible quantitative limitation.

FareStructureElementPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a Fare Structure Element: default total price, discount in value or percentage etc.

FareStructureFactor
type: Class
subclass of: PriceableObject
comment: A factor influencing access rights definition or calculation of prices.

FareTable
type: Class
subclass of: Restriction
  on property: embargoUntilDate
  max qualified cardinality: 1
  on data range: dateTime
subclass of: Restriction
  on property: endDate
  max qualified cardinality: 1
  on data range: dateTime
subclass of: Restriction
  on property: startDate
  max qualified cardinality: 1
  on data range: dateTime
comment: A grouping of prices (specialization of price group) that may be associated with all or any of distance matrix element, fare structure element geographical interval, group of access right parameter, class of use, operator, vehicle mode, fare product.

FareUnit
type: Class
subclass of: PriceableObject
comment: A unit associated with a Fare Structure Factor.

FrequencyOfUse
type: Class
subclass of: UsageParameter
comment: The limits of usage frequency for a fare product (or one of its components) or a sales package during a specific validity period. there may be different tariffs depending on how often the right is consumed during the period.

FulfilmentMethodPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a fulfilment method default total price etc.

GeographicalInterval
type: Class
subclass of: FareInterval
subclass of: Restriction
  on property: relatedTo
  some values from: GeographicalIntervalPrice
subclass of: Restriction
  on property: endGeographicalValue
  some values from: string
subclass of: Restriction
  on property: startGeographicalValue
  some values from: string
subclass of: Restriction
  on property: numberOfUnits
  max qualified cardinality: 1
  on data range: integer
comment: A geographical interval specifying access rights for the Fare Structure Elements within the range of this interval: 0-5 km, 4-6 zones etc.

GeographicalIntervalPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a Geographical Interval: default total price etc.

GeographicalStructureFactor
type: Class
subclass of: FareStructureFactor
comment: The value of a geographical interval or a distance matrix element expressed by a geographical unit.

GeographicalUnit
type: Class
subclass of: FareUnit
subclass of: Restriction
  on property: relatedTo
  some values from: GeographicalUnitPrice
comment: A unit for calculating geographical graduated fares.

GeographicalUnitPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a Geographical Unit: default total price etc.

GroupTicket
type: Class
subclass of: UsageParameter
comment: The number and characteristics of persons entitled to travel in addition to the holder of an access right.

Interchanging
type: Class
subclass of: UsageParameter
comment: Limitations on making changes within a trip.

LimitingRule
type: Class
subclass of: DiscountingRule
comment: Rule for limiting the results of a price calculation.

LuggageAllowance
type: Class
subclass of: UsageParameter
comment: The number and characteristics (weight, volume) of luggage that a holder of an access right is entitled to carry.

MinimumStay
type: Class
subclass of: UsageParameter
comment: Details of any minimum stay at the destination required to use the product.

NetworkValidityParameter
type: Class
subclass of: ScopingValidityParameter
comment: A type of validity parameter related to the network structure.

OrganisationalValidityParameter
type: Class
subclass of: ScopingValidityParameter
comment: A type of validity parameter related to organisational issues.

ParkingPrice
type: Class
subclass of: FarePrice
comment: A specialisation of fare price that defines the price of a parking charge band.

PenaltyPolicy
type: Class
subclass of: UsageParameter
comment: Policy regarding different aspects of penalty charges, for example repeated entry at the same station, not having a ticket etc.

PreAssignedFareProduct
type: Class
subclass of: FareProduct
subclass of: Restriction
  on property: composedOf
  min qualified cardinality: 1
  on class: AccessRightInProduct
comment: A fare product consisting of one or several validable elements, specific to a charging method.

PriceUnit
type: Class
comment: A unit to express prices: amount of currency, abstract fare unit, ticket unit or token etc.

PriceableObject
type: Class
comment: An element which may have a fare price.

PricingRule
type: Class
comment: A rule used for the calculation of fare price, determined either by a set of parameters to be applied to a reference price or by a more complex algorithm.

ProductValidityParameter
type: Class
subclass of: ScopingValidityParameter
comment: A type of validity parameter linked to fare products and/or their distribution.

PurchaseWindow
type: Class
subclass of: UsageParameter
comment: Period in which the product must be purchased.

QualityStructureFactorPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a quality structure factor , e.g. default total price etc.

Refunding
type: Class
subclass of: Reselling
comment: Whether and how the product may be refunded.

Replacing
type: Class
subclass of: Reselling
comment: Whether and how the access right may be replaced.

Reselling
type: Class
subclass of: UsageParameter
comment: Common resale conditions (i.e. for exchange or refund) attached to the product

ResidentialQualification
type: Class
subclass of: UsageParameter
comment: A parameter providing an authorisation to consider a user as being characterised by a User Profile.

RoundTrip
type: Class
subclass of: UsageParameter
comment: Properties relating to single or return trip use of an access right.

Rounding
type: Class
comment: Parameters directing the rounding of values that are the result of calculations.

Routing
type: Class
subclass of: UsageParameter
comment: Limitations on routing of an access right.

RoutingValidityParameter
type: Class
subclass of: ScopingValidityParameter
comment: A type of validity parameter linked to specific routing.

SalesPackage
type: Class
subclass of: PriceableObject
subclass of: Restriction
  on property: description
  max qualified cardinality: 1
  on data range: string
comment: A package to be sold as a whole, consisting of one or several fare products materialised thanks to one or several travel documents. the fare products may be either directly attached to the travel documents, or may be reloadable on the travel documents.

SalesPackageElement
type: Class
subclass of: PriceableObject
comment: The assignment of a fare product to a type of travel document in order to define a sales package, realised as a fixed assignment (printing, magnetic storage etc.) or by the possibility for the fare product to be reloaded on the type of travel document.

SalesPackagePrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a sales package: default total price etc.

SalesPackageSubstitution
type: Class
subclass of: SalesPackage
comment: Information on the preferred substitution of packages with other packages if a quota restricted product is no longer available.

ScopingValidityParameter
type: Class
comment: Grouping of assignments to elements.

SeriesConstraintPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a series constraint: default total price etc.

ServiceAccessRight
type: Class
subclass of: PriceableObject
comment: An immaterial marketable element dedicated to accessing some services.

ServiceValidityParameter
type: Class
subclass of: ScopingValidityParameter
comment: A type of validity parameter related to service characteristics (e.g. class).

StepLimit
type: Class
subclass of: UsageParameter
comment: Geographical parameter limiting the access rights by counts of stops, sections or zones.

Tariff
type: Class
subclass of: Restriction
  on property: definedBy
  some values from: DistanceMatrixElement
subclass of: Restriction
  on property: definedBy
  some values from: GeographicalInterval
subclass of: Restriction
  on property: definedBy
  some values from: GeographicalUnit
comment: A Tariff describes all parameters composing a particular fare structure.

TimeIntervalPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a time interval, e.g. default total price etc.

TimeUnitPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a time unit: default total price etc.

Transferability
type: Class
subclass of: UsageParameter
comment: The number and characteristics of persons entitled to use the public transport service instead of the original customer.

UsageParameter
type: Class
subclass of: PriceableObject
subclass of: Restriction
  on property: url
  some values from: string
comment: A parameter used to specify the use of a sales package or a Fare Product.

UsageParameterPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a usage parameter: discount in value or percentage etc.

UsageValidityPeriod
type: Class
subclass of: UsageParameter
comment: A time limitation for validity of a fare product or a sales package. it may be composed of a standard duration (e.g. 3 days, 1 month) and/or fixed start/end dates and times.

UserProfile
type: Class
subclass of: UsageParameter
comment: The social profile of a passenger, based on age group, education, profession, social status, sex etc., often used for allowing discounts: 18-40 years old, graduates, drivers, unemployed, women etc.

ValidableElement
type: Class
subclass of: PriceableObject
subclass of: Restriction
  on property: aChainOf
  some values from: FareStructureElementInSequence
subclass of: Restriction
  on property: representing
  min qualified cardinality: 1
  on class: Fare Structure Element
comment: An element which may have a fare price.a sequence or set of fare structure elements, grouped together to be validated in one go.

ValidableElementPrice
type: Class
subclass of: FarePrice
comment: A set of all possible price features of a Validable Element: default total price, discount in value or percentage etc.

chargingPolicy
type: Class
subclass of: UsageParameter
comment: Parameter governing minimum amount and credit allowed when consuming a fare product.

booking-access-type
type: NamedIndividual
type: ConceptScheme
comment: Concept scheme where all the types of booking access

booking-method-type
type: NamedIndividual
type: ConceptScheme
comment: Concept scheme where all the types of booking methods

distribution-channel-type
type: NamedIndividual
type: ConceptScheme
comment: Concept scheme where all the types of distribution channels

distribution-rights
type: NamedIndividual
type: ConceptScheme
comment: Concept scheme where all the types of distribution rights

fulfilment-method-type
type: NamedIndividual
type: ConceptScheme
comment: Concept scheme where all the types of fulfilment methods

name: Jhon Toledo Barreto