Skip to content
Commits on Source (38)
/.vscode
/archive
/dependencies
/doc
\ No newline at end of file
include:
- project: 'forge-tools/asn2md'
file: '/gitlab-ci/base.yml'
variables:
ASN1_SRC: 'asn/*.asn asn/cdd_ts102894_2/*.asn'
ASN2MD_OPTIONS: --force-all-fields
validate:
extends: .validate
documentation:
extends: .documentation
[submodule "cdd_ts102894_2"]
path = asn/cdd_ts102894_2
url = https://forge.etsi.org/rep/ITS/asn1/cdd_ts102894_2.git
Copyright 2019 ETSI
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
PIM-PDU-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) pimPduRelease2 (104072) pim (1) major-version-2 (2) minor-version-1 (1)}
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
BasicContainer, ItsPduHeader, Identifier2B, ParkingSpaceStatus, StandardLength12b, TimestampIts, StationId, Wgs84Angle, DeltaPosition, Path, DeltaTimeTenthOfSecond, StandardLength1B, GeoPosition, ParkingReservationType, ParkingAreaArrangementType, ParkingOccupancyInfo, ParkingSpaceBasic, DeltaPositions, MessageSegmentationInfo, ObjectDimension
FROM ETSI-ITS-CDD {
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-2 (2)
} WITH SUCCESSORS
;
/**
* This DF represents the Parking Information Service
* and is the top level Protocol Data Unit.
*
* @field header: This header contains basic message information
*
* @field pimPayload: This field contains the data necessary for ParkingInformationMessage
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingInformationMessage ::= SEQUENCE {
header ItsPduHeader (WITH COMPONENTS {... , protocolVersion (2), messageId(21)}),
pimPayload PimPayload
}
/**
* This DF indicates the parameters necessary for the PIM
*
* @field managementContainer: The management container.
*
* @field detections: The list of detected spaces.
*
* @field arrivalIndication: This field is used to indicate the parking space intended to be occupied by the sender.
*
* @field departureIndication: This field is used to indicate the parking space from which the sender is about to depart.
*
* @category:
* @revision: Created in V2.1.1
*/
PimPayload ::= SEQUENCE {
managementContainer PimManagementContainer,
detections ParkingSpaceDetections OPTIONAL,
arrivalIndication ParkingSpaceIntentIndication OPTIONAL,
departureIndication ParkingSpaceIntentIndication OPTIONAL,
...
}
/**
* This DF represents the management container of the PIM.
* It shall include the following components:
*
* @field segmentationInfo: information regarding the message segmentation on facility layer.
*/
PimManagementContainer ::= SEQUENCE {
segmentationInfo MessageSegmentationInfo,
...
}
/**
* This DF describes the list of space detections
*
* @field individualParkingSpaces: The list of individual parking spaces detected
*
* @field segmentsOfParkingSpaces: The list of parking spaces detected in a segment-based way
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSpaceDetections ::= SEQUENCE {
individualParkingSpaces IndividualParkingSpaces,
segmentsOfParkingSpaces ParkingSpaceSegments,
...
}
/**
* The DF shall contain a list of DF @ref IndividualParkingSpace.
*
* @category:
* @revision: Created in V2.1.1
*/
IndividualParkingSpaces ::= SEQUENCE (SIZE (0..31)) OF IndividualParkingSpace
/**
* The DF shall contain a list of DF @ref ParkingSpaceSegment.
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSpaceSegments ::= SEQUENCE (SIZE (0..31)) OF ParkingSpaceSegment
/**
* This DF indicates the space intended to be allocated by the ego vehicle
*
* @field spaceId: The identifier of an individual parking space. Unique for each sender.
*
* @field reporter: The station id of the reporter of the particular space. Shall be filled if the reporter is not the same as the sender.
*
* @field estimatedActionTime: The estimated time of completion of the intent (e.g., arrival or departure time).
*
* @field subjectParkingSpace: Represents the target of the parking space intent. If the intended parking space was received in a non individual
* representation, then the sender shall genenrate an individual representation and append to the intent.
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSpaceIntentIndication ::= SEQUENCE {
spaceId Identifier2B,
reporter StationId OPTIONAL,
estimatedCompletionTime TimestampIts OPTIONAL,
subjectParkingSpace IndividualParkingSpace OPTIONAL,
...
}
/**
* This DF represents the location of an individual parking space
*
* @field detectionMetaData: The field contains meta data about the individual parking space.
*
* @field position: The position of the individual space.
*
* @field attributes: Shared attributes of the parking space, such as status, arrangement type, occupancy rules,
* and reservation type. These attributes provide key details about the parking space's characteristics.
*
* @field size: The size dimensions of the parking space, including width and length measurements.
*
* @field externalParkingSpaceIds: Represents links to external systems, e.g., to electric vehicle charging stations.
*
* @category:
* @revision: Created in V2.1.1
*/
IndividualParkingSpace ::= SEQUENCE {
detectionMetaData ParkingSpaceDetectionMetaData,
position GeoPosition,
attributes ParkingSpaceAttributes,
size ParkingSpaceSize OPTIONAL,
externalParkingSpaceIds ExternalParkingSpaceIdentifiers OPTIONAL,
...
}
/**
* This DF describes parking space detection parameters
*
* @field id: The identifier of the detection. Shall be unique when combined with source
*
* @field source: The station id of the sender vehicle. Shall only be filled if the sender is not the detector.
*
* @field endTime: The end time of detection. (e.g., when the detector vehicle passed by)
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSpaceDetectionMetaData ::= SEQUENCE {
id Identifier2B,
source StationId OPTIONAL,
endTime TimestampIts,
...
}
/**
* This DF represents subsequent parking spaces
*
* @field detectionMetaData: The field contains meta data about the individual parking space.
*
* @field detectionReferencePosition: The reference position related to the detection segment.
*
* @field path: The path of the ego vehicle. A new point shall be at least added each time the heading of the
* vehicle changes more then SegmentNewPathPointHeadingThreshold, the closest distance between the current
* position and line calculated from the last two path points exceeds SegmentNewPathPointLateralDistanceThreshold,
* or the detection segment is ended. The pathDeltaTime in the path points should not be filled.
*
* @field spacesOnTheLeft: The list of parking space segments on the left of the vehicle.
*
* @field spacesOnTheRight: The list of parking space segments on the right of the vehicle.
*
* @field externalParkingSpaceIds: Represents links to external systems, e.g., to electric vehicle charging stations.
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSpaceSegment ::= SEQUENCE {
detectionMetaData ParkingSpaceDetectionMetaData,
detectionReferencePosition GeoPosition,
path Path,
spacesOnTheLeft ParkingSegments OPTIONAL,
spacesOnTheRight ParkingSegments OPTIONAL,
externalParkingSpaceIds ExternalParkingSpaceIdentifiers OPTIONAL,
...
}
((WITH COMPONENTS {..., spacesOnTheLeft PRESENT}) |
(WITH COMPONENTS {..., spacesOnTheRight PRESENT}))
/**
* This DF represents external ids
*
* @field evSEId: Electric Vehicle Supply Equipment Identification, as defined in ISO 15118.
*
* @field parkingSpaceId: The identifier of the parking space, as defined in the ParkingSpaceBasic data frame.
*
* @category:
* @revision: Created in V2.1.1
*/
ExternalParkingSpaceIdentifiers ::= SEQUENCE {
evSEId IA5String (SIZE(1..36)) OPTIONAL,
parkingSpaceId Identifier2B OPTIONAL,
...
}
/**
* This DF describes a list of subsequent parking space segments
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSegments ::= SEQUENCE SIZE(1..32, ...) OF ParkingSegment
/**
* This DF represents a parking space segment
*
* @field distanceFromLastPoint: The starting point of the segment relative to the previous point.
* The distance is measured on the path of the detector vehicle. If the first point is not the same
* as the starting point of the path, a space shall be added with status unknown. If the last point is
* not the same as the terminating point of the path, a space shall be added with status unknown.
*
* @field status: The status of the parking space.
*
* @field timeDelta: The time between the detectionTime and the detection of the current space
* @note: D where X is detectionTime and Y is the detection of the current space:
* ------Y---------X------>
* |<---D--->|
*
* @field offsetToPath: Distance between the path of the vehicle and the closest position of
* the parking space to the path.
*
* @field attributes: Shared attributes of the parking space, such as status, arrangement type, occupancy rules,
* and reservation type. These attributes provide key details about the parking space's characteristics.
*
* @field size: The size dimensions of the parking space, including width and length measurements.
*
* @category:
* @revision: Created in V2.1.1
*/
ParkingSegment ::= SEQUENCE {
distanceFromLastPoint StandardLength12b,
timeDelta DeltaTimeTenthOfSecond,
offsetToPath StandardLength1B OPTIONAL,
attributes ParkingSpaceAttributes,
size ParkingSpaceSize OPTIONAL,
...
}
/**
* This sequence encapsulates shared attributes for parking space entities.
*
* @field status: The status of the parking space.
*
* @field arrangementType: The arrangement of the parking space. It is optional to fill this field.
*
* @field occupancyRule: The occupancy rule of the parking space. It is optional to fill this field.
*
* @field reservationType: The reservation type of the parking space. If it is not filled, then the value is not known.
* If it is filled with length 0, then no restriction applies.
*/
ParkingSpaceAttributes ::= SEQUENCE {
status ParkingSpaceStatus,
arrangementType ParkingAreaArrangementType OPTIONAL,
occupancyRule ParkingOccupancyInfo OPTIONAL,
reservationType SEQUENCE (SIZE(0..3,...)) OF ParkingReservationType OPTIONAL,
...
}
/**
* This sequence encapsulates the size dimensions of a parking space.
*
* @field observedWidth: The observed width of the physical space available for parking measured perpendicular
* to the anticipated orientation of the parking vehicle.
*
* @field observedLength: The observed length of the physical space available for parking measured
* in the direction of the parking vehicle.
*
* @field nominalWidth: The width of a parking space. This field indicates the length between
* the center of the width markings, if there are any.
*
* @field nominalLength: The length of a parking space. This field indicates the length between
* the center of the length markings, if there are any.
*/
ParkingSpaceSize ::= SEQUENCE {
observedWidth ObjectDimension OPTIONAL,
observedLength ObjectDimension OPTIONAL,
nominalWidth ObjectDimension OPTIONAL,
nominalLength ObjectDimension OPTIONAL
}
END
PIM-SA-Application-Data-Descriptions {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) pimPduRelease2 (104072) saApplicationData (2) major-version-2 (2) minor-version-1 (1)}
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
TrafficParticipantType
FROM ETSI-ITS-CDD {
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-2 (2)
}
;
/**
* This DF indicates data to be put in the advertisement service's application-specific data field.
*
* @field request: If present, then the sender C-ITS station indicates a request for PIMs from remote ITS stations.
*
* @category:
* @revision: Created in V2.1.1
*/
PimAdvertiseApplicationData ::= SEQUENCE {
request PimRequest OPTIONAL,
...
}
/**
* This DF contains data fields elaborating the parking space request.
*
* @field vehicleType: This field represents the type of the sender vehicle.
*
* @category:
* @revision: Created in V2.1.1
*/
PimRequest ::= SEQUENCE {
vehicleType TrafficParticipantType,
...
}
END
Subproject commit 8141a3cb167c879cf55ff105db8d891cd0a6189a
This diff is collapsed.
# <a name="PIM-PDU-Descriptions"></a>ASN.1 module PIM-PDU-Descriptions
OID: _{itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) pimPduRelease2 (104072) pim (1) major-version-2 (2) minor-version-1 (1)}_
## Imports:
* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-2 (2) } WITH SUCCESSORS*<br/>
## Data Elements:
### <a name="ParkingInformationMessage"></a>ParkingInformationMessage
This DF represents the Parking Information Service
and is the top level Protocol Data Unit.
Fields:
* _header_ of type [**ItsPduHeader**](ETSI-ITS-CDD.md#ItsPduHeader) (WITH COMPONENTS {... , protocolVersion (2), messageId(21)})<br>
This header contains basic message information
* _pimPayload_ of type [**PimPayload**](#PimPayload) <br>
This field contains the data necessary for ParkingInformationMessage
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingInformationMessage ::= SEQUENCE {
header ItsPduHeader (WITH COMPONENTS {... , protocolVersion (2), messageId(21)}),
pimPayload PimPayload
}
```
### <a name="PimPayload"></a>PimPayload
This DF indicates the parameters necessary for the PIM
Fields:
* _managementContainer_ of type [**PimManagementContainer**](#PimManagementContainer) <br>
The management container.
* _detections_ of type [**ParkingSpaceDetections**](#ParkingSpaceDetections) OPTIONAL<br>
The list of detected spaces.
* _arrivalIndication_ of type [**ParkingSpaceIntentIndication**](#ParkingSpaceIntentIndication) OPTIONAL<br>
This field is used to indicate the parking space intended to be occupied by the sender.
* _departureIndication_ of type [**ParkingSpaceIntentIndication**](#ParkingSpaceIntentIndication) OPTIONAL<br>
This field is used to indicate the parking space from which the sender is about to depart.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
PimPayload ::= SEQUENCE {
managementContainer PimManagementContainer,
detections ParkingSpaceDetections OPTIONAL,
arrivalIndication ParkingSpaceIntentIndication OPTIONAL,
departureIndication ParkingSpaceIntentIndication OPTIONAL,
...
}
```
### <a name="PimManagementContainer"></a>PimManagementContainer
This DF represents the management container of the PIM.
It shall include the following components:
Fields:
* _segmentationInfo_ of type [**MessageSegmentationInfo**](ETSI-ITS-CDD.md#MessageSegmentationInfo) <br>
information regarding the message segmentation on facility layer.
```asn1
PimManagementContainer ::= SEQUENCE {
segmentationInfo MessageSegmentationInfo,
...
}
```
### <a name="ParkingSpaceDetections"></a>ParkingSpaceDetections
This DF describes the list of space detections
Fields:
* _individualParkingSpaces_ of type [**IndividualParkingSpaces**](#IndividualParkingSpaces) <br>
The list of individual parking spaces detected
* _segmentsOfParkingSpaces_ of type [**ParkingSpaceSegments**](#ParkingSpaceSegments) <br>
The list of parking spaces detected in a segment-based way
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingSpaceDetections ::= SEQUENCE {
individualParkingSpaces IndividualParkingSpaces,
segmentsOfParkingSpaces ParkingSpaceSegments,
...
}
```
### <a name="IndividualParkingSpaces"></a>IndividualParkingSpaces
The DF shall contain a list of DF [**IndividualParkingSpace**](#IndividualParkingSpace).
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
IndividualParkingSpaces ::= SEQUENCE (SIZE (0..31)) OF IndividualParkingSpace
```
### <a name="ParkingSpaceSegments"></a>ParkingSpaceSegments
The DF shall contain a list of DF [**ParkingSpaceSegment**](#ParkingSpaceSegment).
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingSpaceSegments ::= SEQUENCE (SIZE (0..31)) OF ParkingSpaceSegment
```
### <a name="ParkingSpaceIntentIndication"></a>ParkingSpaceIntentIndication
This DF indicates the space intended to be allocated by the ego vehicle
Fields:
* _spaceId_ of type [**Identifier2B**](ETSI-ITS-CDD.md#Identifier2B) <br>
The identifier of an individual parking space. Unique for each sender.
* _reporter_ of type [**StationId**](ETSI-ITS-CDD.md#StationId) OPTIONAL<br>
The station id of the reporter of the particular space. Shall be filled if the reporter is not the same as the sender.
* _estimatedCompletionTime_ of type [**TimestampIts**](ETSI-ITS-CDD.md#TimestampIts) OPTIONAL<br>
* _subjectParkingSpace_ of type [**IndividualParkingSpace**](#IndividualParkingSpace) OPTIONAL<br>
Represents the target of the parking space intent. If the intended parking space was received in a non individual
representation, then the sender shall genenrate an individual representation and append to the intent.
* estimatedActionTime<br>
The estimated time of completion of the intent (e.g., arrival or departure time).
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingSpaceIntentIndication ::= SEQUENCE {
spaceId Identifier2B,
reporter StationId OPTIONAL,
estimatedCompletionTime TimestampIts OPTIONAL,
subjectParkingSpace IndividualParkingSpace OPTIONAL,
...
}
```
### <a name="IndividualParkingSpace"></a>IndividualParkingSpace
This DF represents the location of an individual parking space
Fields:
* _detectionMetaData_ of type [**ParkingSpaceDetectionMetaData**](#ParkingSpaceDetectionMetaData) <br>
The field contains meta data about the individual parking space.
* _position_ of type [**GeoPosition**](ETSI-ITS-CDD.md#GeoPosition) <br>
The position of the individual space.
* _attributes_ of type [**ParkingSpaceAttributes**](#ParkingSpaceAttributes) <br>
Shared attributes of the parking space, such as status, arrangement type, occupancy rules,
and reservation type. These attributes provide key details about the parking space's characteristics.
* _size_ of type [**ParkingSpaceSize**](#ParkingSpaceSize) OPTIONAL<br>
The size dimensions of the parking space, including width and length measurements.
* _externalParkingSpaceIds_ of type [**ExternalParkingSpaceIdentifiers**](#ExternalParkingSpaceIdentifiers) OPTIONAL<br>
Represents links to external systems, e.g., to electric vehicle charging stations.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
IndividualParkingSpace ::= SEQUENCE {
detectionMetaData ParkingSpaceDetectionMetaData,
position GeoPosition,
attributes ParkingSpaceAttributes,
size ParkingSpaceSize OPTIONAL,
externalParkingSpaceIds ExternalParkingSpaceIdentifiers OPTIONAL,
...
}
```
### <a name="ParkingSpaceDetectionMetaData"></a>ParkingSpaceDetectionMetaData
This DF describes parking space detection parameters
Fields:
* _id_ of type [**Identifier2B**](ETSI-ITS-CDD.md#Identifier2B) <br>
The identifier of the detection. Shall be unique when combined with source
* _source_ of type [**StationId**](ETSI-ITS-CDD.md#StationId) OPTIONAL<br>
The station id of the sender vehicle. Shall only be filled if the sender is not the detector.
* _endTime_ of type [**TimestampIts**](ETSI-ITS-CDD.md#TimestampIts) <br>
The end time of detection. (e.g., when the detector vehicle passed by)
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingSpaceDetectionMetaData ::= SEQUENCE {
id Identifier2B,
source StationId OPTIONAL,
endTime TimestampIts,
...
}
```
### <a name="ParkingSpaceSegment"></a>ParkingSpaceSegment
This DF represents subsequent parking spaces
Fields:
* _detectionMetaData_ of type [**ParkingSpaceDetectionMetaData**](#ParkingSpaceDetectionMetaData) <br>
The field contains meta data about the individual parking space.
* _detectionReferencePosition_ of type [**GeoPosition**](ETSI-ITS-CDD.md#GeoPosition) <br>
The reference position related to the detection segment.
* _path_ of type [**Path**](ETSI-ITS-CDD.md#Path) <br>
The path of the ego vehicle. A new point shall be at least added each time the heading of the
vehicle changes more then SegmentNewPathPointHeadingThreshold, the closest distance between the current
position and line calculated from the last two path points exceeds SegmentNewPathPointLateralDistanceThreshold,
or the detection segment is ended. The pathDeltaTime in the path points should not be filled.
* _spacesOnTheLeft_ of type [**ParkingSegments**](#ParkingSegments) OPTIONAL<br>
The list of parking space segments on the left of the vehicle.
* _spacesOnTheRight_ of type [**ParkingSegments**](#ParkingSegments) OPTIONAL<br>
The list of parking space segments on the right of the vehicle.
* _externalParkingSpaceIds_ of type [**ExternalParkingSpaceIdentifiers**](#ExternalParkingSpaceIdentifiers) OPTIONAL<br>
Represents links to external systems, e.g., to electric vehicle charging stations.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingSpaceSegment ::= SEQUENCE {
detectionMetaData ParkingSpaceDetectionMetaData,
detectionReferencePosition GeoPosition,
path Path,
spacesOnTheLeft ParkingSegments OPTIONAL,
spacesOnTheRight ParkingSegments OPTIONAL,
externalParkingSpaceIds ExternalParkingSpaceIdentifiers OPTIONAL,
...
}
((WITH COMPONENTS {..., spacesOnTheLeft PRESENT}) |
(WITH COMPONENTS {..., spacesOnTheRight PRESENT}))
```
### <a name="ExternalParkingSpaceIdentifiers"></a>ExternalParkingSpaceIdentifiers
This DF represents external ids
Fields:
* _evSEId_ of type [**IA5String**](#IA5String) (SIZE(1..36)) OPTIONAL<br>
Electric Vehicle Supply Equipment Identification, as defined in ISO 15118.
* _parkingSpaceId_ of type [**Identifier2B**](ETSI-ITS-CDD.md#Identifier2B) OPTIONAL<br>
The identifier of the parking space, as defined in the ParkingSpaceBasic data frame.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ExternalParkingSpaceIdentifiers ::= SEQUENCE {
evSEId IA5String (SIZE(1..36)) OPTIONAL,
parkingSpaceId Identifier2B OPTIONAL,
...
}
```
### <a name="ParkingSegments"></a>ParkingSegments
This DF describes a list of subsequent parking space segments
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
ParkingSegments ::= SEQUENCE SIZE(1..32, ...) OF ParkingSegment
```
### <a name="ParkingSegment"></a>ParkingSegment
This DF represents a parking space segment
Fields:
* _distanceFromLastPoint_ of type [**StandardLength12b**](ETSI-ITS-CDD.md#StandardLength12b) <br>
The starting point of the segment relative to the previous point.
The distance is measured on the path of the detector vehicle. If the first point is not the same
as the starting point of the path, a space shall be added with status unknown. If the last point is
not the same as the terminating point of the path, a space shall be added with status unknown.
* _timeDelta_ of type [**DeltaTimeTenthOfSecond**](ETSI-ITS-CDD.md#DeltaTimeTenthOfSecond) <br>
The time between the detectionTime and the detection of the current space
* _offsetToPath_ of type [**StandardLength1B**](ETSI-ITS-CDD.md#StandardLength1B) OPTIONAL<br>
Distance between the path of the vehicle and the closest position of
the parking space to the path.
* _attributes_ of type [**ParkingSpaceAttributes**](#ParkingSpaceAttributes) <br>
Shared attributes of the parking space, such as status, arrangement type, occupancy rules,
and reservation type. These attributes provide key details about the parking space's characteristics.
* _size_ of type [**ParkingSpaceSize**](#ParkingSpaceSize) OPTIONAL<br>
The size dimensions of the parking space, including width and length measurements.
* status<br>
The status of the parking space.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
>>>
NOTE:&emsp;D where X is detectionTime and Y is the detection of the current space:
------Y---------X------>
|<---D--->|
>>>
```asn1
ParkingSegment ::= SEQUENCE {
distanceFromLastPoint StandardLength12b,
timeDelta DeltaTimeTenthOfSecond,
offsetToPath StandardLength1B OPTIONAL,
attributes ParkingSpaceAttributes,
size ParkingSpaceSize OPTIONAL,
...
}
```
### <a name="ParkingSpaceAttributes"></a>ParkingSpaceAttributes
This sequence encapsulates shared attributes for parking space entities.
Fields:
* _status_ of type [**ParkingSpaceStatus**](ETSI-ITS-CDD.md#ParkingSpaceStatus) <br>
The status of the parking space.
* _arrangementType_ of type [**ParkingAreaArrangementType**](ETSI-ITS-CDD.md#ParkingAreaArrangementType) OPTIONAL<br>
The arrangement of the parking space. It is optional to fill this field.
* _occupancyRule_ of type [**ParkingOccupancyInfo**](ETSI-ITS-CDD.md#ParkingOccupancyInfo) OPTIONAL<br>
The occupancy rule of the parking space. It is optional to fill this field.
* _reservationType_ of type **SEQUENCE** (SIZE(0..3,...)) OF ParkingReservationType OPTIONAL<br>
The reservation type of the parking space. If it is not filled, then the value is not known.
If it is filled with length 0, then no restriction applies.
```asn1
ParkingSpaceAttributes ::= SEQUENCE {
status ParkingSpaceStatus,
arrangementType ParkingAreaArrangementType OPTIONAL,
occupancyRule ParkingOccupancyInfo OPTIONAL,
reservationType SEQUENCE (SIZE(0..3,...)) OF ParkingReservationType OPTIONAL,
...
}
```
### <a name="ParkingSpaceSize"></a>ParkingSpaceSize
This sequence encapsulates the size dimensions of a parking space.
Fields:
* _observedWidth_ of type [**ObjectDimension**](ETSI-ITS-CDD.md#ObjectDimension) OPTIONAL<br>
The observed width of the physical space available for parking measured perpendicular
to the anticipated orientation of the parking vehicle.
* _observedLength_ of type [**ObjectDimension**](ETSI-ITS-CDD.md#ObjectDimension) OPTIONAL<br>
The observed length of the physical space available for parking measured
in the direction of the parking vehicle.
* _nominalWidth_ of type [**ObjectDimension**](ETSI-ITS-CDD.md#ObjectDimension) OPTIONAL<br>
The width of a parking space. This field indicates the length between
the center of the width markings, if there are any.
* _nominalLength_ of type [**ObjectDimension**](ETSI-ITS-CDD.md#ObjectDimension) OPTIONAL<br>
The length of a parking space. This field indicates the length between
the center of the length markings, if there are any.
```asn1
ParkingSpaceSize ::= SEQUENCE {
observedWidth ObjectDimension OPTIONAL,
observedLength ObjectDimension OPTIONAL,
nominalWidth ObjectDimension OPTIONAL,
nominalLength ObjectDimension OPTIONAL
}
```
# <a name="PIM-SA-Application-Data-Descriptions"></a>ASN.1 module PIM-SA-Application-Data-Descriptions
OID: _{itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) pimPduRelease2 (104072) saApplicationData (2) major-version-2 (2) minor-version-1 (1)}_
## Imports:
* **[ETSI-ITS-CDD](ETSI-ITS-CDD.md)** *{ itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-2 (2) }*<br/>
## Data Elements:
### <a name="PimAdvertiseApplicationData"></a>PimAdvertiseApplicationData
This DF indicates data to be put in the advertisement service's application-specific data field.
Fields:
* _request_ of type [**PimRequest**](#PimRequest) OPTIONAL<br>
If present, then the sender C-ITS station indicates a request for PIMs from remote ITS stations.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
PimAdvertiseApplicationData ::= SEQUENCE {
request PimRequest OPTIONAL,
...
}
```
### <a name="PimRequest"></a>PimRequest
This DF contains data fields elaborating the parking space request.
Fields:
* _vehicleType_ of type [**TrafficParticipantType**](ETSI-ITS-CDD.md#TrafficParticipantType) <br>
This field represents the type of the sender vehicle.
&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** @revision: Created in V2.1.1
```asn1
PimRequest ::= SEQUENCE {
vehicleType TrafficParticipantType,
...
}
```