Commit fa55363a authored by Jasja Tijink's avatar Jasja Tijink
Browse files

First draft

parent 7d7840a7
Loading
Loading
Loading
Loading
+25 −209
Original line number Diff line number Diff line
-- official version including bug fixes
-- draft 01 for target V2.2.1

POIM-ParkingAvailability {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) poi(103916) parkingAvailability(1) major-version-1 (1) minor-version-1 (1)}   
POIM-ParkingAvailability {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) poi(103916) parkingAvailability(1) major-version-1 (1) minor-version-2 (2)}   

DEFINITIONS AUTOMATIC TAGS ::= BEGIN

IMPORTS

AltitudeValue, ConfidenceLevel, DangerousGoodsBasic, DeltaLatitude, DeltaLongitude, DeltaReferencePosition, EuVehicleCategoryCode, Identifier2B, Latitude, Longitude, 
SpecialTransportType, TimestampIts, VehicleHeight, Wgs84Angle
FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-4 (4) minor-version-1 (1)} WITH SUCCESSORS
ParkingOccupancyInfo, ParkingSpaceBasic, ParkingSpaceDetailed, ParkingSpaceStatus, ParkingAreaArrangementType, ParkingReservationType, SpecialTransportType, 
TimestampIts, VehicleHeight, Wgs84Angle
FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) major-version-4 (4) minor-version-3 (3)} WITH SUCCESSORS

PoiBlockManagementContainer, RelatedPoiInfoBlockContainer 
FROM POIM-CommonContainers {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) poi(103916) common(99) major-version-1 (1) minor-version-1 (1)} WITH SUCCESSORS
FROM POIM-CommonContainers {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) poim (104258) common(99) major-version-1 (1) minor-version-1 (1)} WITH SUCCESSORS

EngineCharacteristics
FROM EfcDataDictionary {iso(1) standard(0) 17573 dd(3) version1(1) minorVersion3(3)} WITH SUCCESSORS 
FROM EfcDataDictionary {iso(1) standard(0) 17573 dd(3) version1(1) minorVersion6(6)} WITH SUCCESSORS 
-- available  at https://standards.iso.org/iso/17573/-3/
;

-- Parking Availability Block for usage within the Point of Interest Message (POIM):

/**
 * This type represents the POI Information Block concerning a parking availability at a given facility.  
 * This type represents the POI Information Block concerning a parking availability at a given parking place.  
 *
 * It shall include the following components: 
 *
 * @field managementContainer: the management container of the parking availability POI Information Block.
 *
 * @field placeInfo: general information about the parking facility.
 * @field placeInfo: general information about the parking place.
 *
 * @field aggregatedStatus: aggregated status information about the parking facility.
 * @field aggregatedStatus: aggregated status information about the parking place.
 *
 * @field detailedStatus: optional detailed topology and status information about the parking areas and spaces.
 *
@@ -48,21 +49,21 @@ ParkingAvailabilityBlock::= SEQUENCE{
-- POIM-PA Containers: 

/** 
 * This type represents the General Parking Facility Container.
 * This type represents the General Parking Place Container.
 *
 * It shall include the following components: 
 *
 * @field position: the position of the parking facility.
 * @field position: the position of the parking place.
 *
 * @field name: the name of the parking facility.
 * @field name: the name of the parking place.
 *
 * @field openingPeriods: the optional opening periods of the parking facility.
 * @field openingPeriods: the optional opening periods of the parking place.
 *
 * @field address: the optional address of the parking facility.
 * @field address: the optional address of the parking place.
 *
 * @field phoneNumber: the optional phone number of the operator of the parking facility. 
 * @field phoneNumber: the optional phone number of the operator of the parking place. 
 *
 * @field website: the optional URL of the website of the operator of the parking facility.
 * @field website: the optional URL of the website of the operator of the parking place.
 *
*/
GeneralParkingPlaceContainer::= SEQUENCE{
@@ -80,12 +81,12 @@ GeneralParkingPlaceContainer::= SEQUENCE{
 *
 * It shall include the following components: 
 *
 * @field currentFacilityStatus: the current status of the facility.
 * @field currentFacilityStatus: the current status of the parking space (facility).
 *
 * @field currentOccupancy: the optional current occupancy of the entire facility.
 * This component is only representative if the entire facility has areas and spaces of the same type. e.g. personal car parking spaces only. 
 * @field currentOccupancy: the optional current occupancy of the entire parking place (facility).
 * This component is only representative if the parking place has areas and spaces of the same type. e.g. personal car parking spaces only. 
 *
 * @field detailedStatus: the optional detailed parking availability status of the facility.
 * @field detailedStatus: the optional detailed parking availability status of the parking place (facility).
 *
*/
ParkingStatusContainer::= SEQUENCE {
@@ -194,7 +195,7 @@ OccupancyInformation::= SEQUENCE{
 *
 * It shall include the following components: 
 *
 * @field id: the identifier of the parking area within the parking place/facility.
 * @field id: the identifier of the parking area within the parking place(facility).
 *
 * @field currentOccupancy: the current occupancy information of the parking area.
 *
@@ -274,98 +275,11 @@ ParkingArea::=SEQUENCE{
*/
ParkingAreas::= SEQUENCE OF ParkingArea

/** 
 * This DF indicates the allowed type of occupancy of a parking space/area in terms of time and/or usage.
 *
 * The following options are available:
 * 
 * @field unknown: indicates that the allowed type of occupancy is unknown.
 *
 * @field unlimitedOccupancy: indicates that it can be occupied without limits.
 *
 * @field onlyWhileCharging: indicates that it can be occupied only while charging an electric vehicle.
 *
 * @field limitedDuration: indicates that it can be occupied for a limited and indicated duration in minutes.
 *
 * @field onlyWhileChargingLimitedDuration: indicates that it can be occupied only while charging an electric vehicle and only for a limited and indicated duration in minutes.
 *
 * @field parkingAllowedUntil: indicates that it can be occupied only until an indicated moment in time.
 *
 * @field forcedParkingUntil: indicates that it can be occupied and departure is possible only after an indicated moment in time.
 *
*/
ParkingOccupancyInfo::= CHOICE { 
   unknown                              NULL, 
   unlimitedOccupancy                   NULL,
   onlyWhileCharging                    NULL,  
   limitedDuration                      INTEGER,  
   onlyWhileChargingLimitedDuration     INTEGER, 
   parkingAllowedUntil                  TimestampIts,
   forcedParkingUntil                   TimestampIts,
   ...
} 

/**
 * This DF provides basic information about the parking capabilities and availabilities of a single parking space. 
 *
 * It shall include the following components: 
 *
 * @field id: the unqiue identifier of the parking space within the parking area.
 *
 * @field location: the optional location of the geometrical center of the parking space w.r.t. the location of the parking area.
 *
 * @field status: the actual status of the parking space.
 *
*/
ParkingSpaceBasic ::= SEQUENCE{
   id         Identifier2B,
   location   DeltaReferencePosition OPTIONAL, 
   status     ParkingSpaceStatus
}

/**
 * This DF provides detailed information about the parking capabilities and availabilities of a single parking space. 
 * 
 * It is an extension of @ref ParkingSpaceBasic and it shall additionally include the following additional components: 
 *
 * @field arrangementType: the optional arrangement of the parking space w.r.t. other spaces.
 * This is component, if present, overrides the common arrangementType defined in the @ref ParkingArea.
 *
 * @field boundary: the optional physical boundary of the parking space as a polygon w.r.t. the location of the parking space.
 *
 * @field orientation: the optional orientation of the parking space.
 * This is component, if present, overrides the common orientation defined in the @ref ParkingArea.
 *
 * @field occupancyRule: the occupancy rule applicable to the parking space.
 *
 * @field chargingStationId: the optional identitfier of a charging station that serves the parking space.
 *
 * @field accessViaLane: the optional identifier of a lane that provides access to the parking space.
 *
 * @field accessViaParkingSpaces: the optional identifier(s) of a parking spaces that provide access to the parking space.
 * 
 * @field reservationType: the optional parking reservation type(s) associated to the parking space.
 * This is component, if present, overrides the common reservationType defined in the @ref ParkingArea.
 *
*/
ParkingSpaceDetailed ::= SEQUENCE{
   COMPONENTS OF            ParkingSpaceBasic,
   arrangementType          ParkingAreaArrangementType OPTIONAL,
   boundary                 DeltaPositions OPTIONAL,
   orientation              Wgs84Angle OPTIONAL,
   occupancyRule            ParkingOccupancyInfo, 
   chargingStationId        Identifier2B OPTIONAL,
   accessViaLane			Identifier2B OPTIONAL,
   accessViaParkingSpaces	SEQUENCE (SIZE(0..7)) OF Identifier2B OPTIONAL,	
   reservationType          SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL,			
   ...
}

/**
 * This DF shall contain a list of @ref ParkingSpaceBasic.  
 *
*/
ParkingSpacesBasic ::= SEQUENCE OF ParkingSpaceBasic -- bug fix of official version
ParkingSpacesBasic ::= SEQUENCE OF ParkingSpaceBasic

/**
 * This DF shall contain a list of @ref ParkingSpaceDetailed.  
@@ -373,44 +287,6 @@ ParkingSpacesBasic ::= SEQUENCE OF ParkingSpaceBasic -- bug fix of official vers
*/
ParkingSpacesDetailed ::= SEQUENCE OF ParkingSpaceDetailed

/** 
 * This DF indicates the status of parking space.
 *
 * The following options are available:
 * 
 * @field unknown: indicates that the status is unknown.
 *
 * @field free: indicates that the parking space is free and hence available to be used.
 *
 * @field freeUntil: indicates that the parking space is free to be used until an indicated moment in time.
 *
 * @field fullyOccupied: indicates that the parking space is interely occupied.
 *
 * @field partiallyOccupied: indicates that the parking space that allows parking of multiple vehicles is occupied by an indicated percentage.
 *
 * @field occupiedUntil: indicates that the parking space is entirely occupied until an indicated moment in time.
 *
 * @field reservedUntil: indicates that the parking space is reserved (but not necessarily occupied) until an indicated moment in time.
 *
 * @field accessBlocked: indicates that the parking space cannot accessed, e.g. due to obstructing vehicles.
 *
 * @field retrictedUsage: indicates that the parking space is available but that it is not an official parking space and that there are some phyiscal restrictions applicable, 
 * such as parking behind or in front of other vehicles that, depending on the situation, may then have problems entering or leaving their respective parking spaces.
 *
*/ 
ParkingSpaceStatus::= CHOICE { 
   unknown             NULL, 
   free                NULL,  
   freeUntil           TimestampIts, 
   fullyOccupied       NULL,
   partiallyOccupied   INTEGER(0..100), 
   occupiedUntil       TimestampIts,
   reservedUntil       TimestampIts, 
   accessBlocked       NULL,
   retrictedUsage      NULL,
   ...
} 

/**
 * This DF provides information about the status of a defined type of parking.
 *
@@ -549,7 +425,7 @@ GoodsType::= INTEGER {
*/
NumberOfSpaces ::= INTEGER {
    unavailable (16383)  
} (0..16383) -- bug fix of official version
} (0..16383)

/** 
 * This DE represents an occupancy rate in percentage.
@@ -561,7 +437,7 @@ NumberOfSpaces ::= INTEGER {
*/
OccupancyRate ::= INTEGER {
    unavailable (101)  
} (0..101) -- bug fix of official version
} (0..101)

/** 
 * This DE indicates the trend of occupancy.
@@ -611,66 +487,6 @@ OpeningStatus ::= INTEGER {
	unknown				(15)
} (0..15)

/** 
 * This DE indicates the arrangement of parking space in a parking area.
 *
 * The value shall be set to:
 * - `0` to indicate that the parking spaces are arranged in a line and parallel to a road or curb,
 * - `1` to indicate that the parking spaces are arranged side-by-side and diagonally to a curb,
 * - `2` to indicate that the parking spaces are arranged side-by-side and perpendicularly to a curb,
 * - `3` to indicate that the parking spaces are arranged so that vehicles form a queue,
 * - `4` to indicate that the parking spaces are arranged in a mixed fashion, 
 * - 5-7 - reserved for future usage. 
 *
*/ 
ParkingAreaArrangementType ::= INTEGER { 
   parallelParkingSpace(0), 
   diagonalParkingSpace(1), 
   perpendicularParkingSpace(2),
   queueParking (3),
   mixed(4),
   unknown(7)   
} (0..7)

/** 
 * This DE indicates the type of a reservation of a parking space/area.
 *
 * The value shall be set to:
 * - `0` to indicate that it is reserved to disabled persons,
 * - `1` to indicate that it is reserved to pregnant women,
 * - `2` to indicate that it is reserved to women,
 * - `3` to indicate that it is reserved to parents with small children,
 * - `4` to indicate that it is reserved for loading and unloading of goods,
 * - `5` to indicate that it is reserved for manual charging of electric vehicles,
 * - `6` to indicate that it is reserved for automated charging of electric vehicles,
 * - `7` to indicate that it is reserved for vehicles carrying out refrigerated transport of goods,
 * - `8` to indicate that it is reserved for VIPs,
 * - `9` to indicate that it is reserved for pre-booked reservations only,
 * - `10` to indicate that it is not reserved and can still be reserved,
 * - `11` to indicate that it cannot be reserved,
 * - `12` to indicate that it reserved for drop-off and pick-up of vehicles for automated valet parking,
 * - `13` to indicate that it is reserved for vehicles with a permit,
 * - 14-31  - reserved for future usage. 
 *
*/
ParkingReservationType ::= INTEGER { 
   disabled(0), 
   pregnant(1), 
   womenOnly(2), 
   parentAndChild(3), 
   loadAndOffloadGoods(4), 
   manualElectricVehicleCharging (5), 
   automatedElectricVehicleCharging (6), 
   refriferatedTransport(7),
   vip(8),
   preBooking (9), 
   freeToBeReserved (10),
   reservationNotPossible (11),
   automatedValetparking (12), 
   permit (13)
}(0..31)


/** 
 * This DE indicates the applicable type of parking fee.
 *