Skip to content

Commit 6c8a35f

Browse files
Editorial fixes
Signed-off-by: ClemensLinnhoff <[email protected]>
1 parent f78eb7c commit 6c8a35f

File tree

1 file changed

+39
-38
lines changed

1 file changed

+39
-38
lines changed

doc/architecture/trace_file_mcap_format.adoc

Lines changed: 39 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -10,54 +10,54 @@ endif::[]
1010
- Message records must be written into `chunk records` for indexed files
1111
- Only OSI top-level messages containing a timestamp field are permitted to be directly stored in MCAP channels
1212
- Must contain only a single scenario with a unique global time
13-
- A MCAP file is condidered a single dataset
13+
- An MCAP file is considered a single dataset
1414

1515
== Schema
1616
- `name` field: Full message type name, including package (e.g., `osi3.SensorData`)
1717
- `encoding` field: Must be `protobuf`
1818
- `data` field: String-encoded `google::protobuf::FileDescriptorSet` for the OSI top-level message
1919

2020
== Channel
21-
- `message_encoding` field: Must be "protobuf"
21+
- `message_encoding` field: Must be `protobuf``
2222
- `metadata` field:
23-
- Must include an `osi_version` key, specifying the OSI SemVer version of the OSI top-level message contained within the channel
24-
- Must include a `protobuf` key, specifying the protobuf SemVer version used to create the OSI top-level message contained within the channel
25-
- Should include a `description` key, explaining the data's origin and purpose in natural language.
23+
** Must include an `osi_version` key, specifying the OSI SemVer version of the OSI top-level message contained within the channel
24+
** Must include a `protobuf` key, specifying the protobuf SemVer version used to create the OSI top-level message contained within the channel
25+
** Should include a `description` key, explaining the data's origin and purpose in natural language.
2626

2727

2828
== Message
2929
- `publish_time` field:
30-
- Must reflect the timestamp of the stored OSI top-level message
31-
- Must be in nanoseconds
30+
** Must reflect the timestamp of the stored OSI top-level message
31+
** Must be in nanoseconds
3232
- `log_time` field: Must reflect the time when the message was enqueued for MCAP file addition
33-
- Must reflect the timestamp of the stored OSI top-level message
34-
- Must be in nanoseconds
33+
** Must reflect the timestamp of the stored OSI top-level message
34+
** Must be in nanoseconds
3535

3636

3737
== File-wide Metadata
3838
- Must include metadata with the name `versions` containing at least the following key-value pairs:
39-
* `osi`: SemVer version of the minimum required OSI version
39+
** `osi`: SemVer version of the minimum required OSI version
4040
- Must include metadata with the name `asam_osi` containing at least the following key-value pairs:
41-
* `zero_time`: ISO 8601 YYYYMMDDThhmmss.f formatted point in time representing the zero time of the scenario
42-
* `timestamp`: ISO 8601 YYYYMMDDThhmmss.f formatted creation time of the file
41+
** `zero_time`: ISO 8601 YYYYMMDDThhmmss.f formatted point in time representing the zero time of the scenario
42+
** `timestamp`: ISO 8601 YYYYMMDDThhmmss.f formatted creation time of the file
4343
- It is strongly recommended to include metadata with the name `asam_osi` containing the following key-value pairs:
44-
* `description`: Short human-readable scenario description
45-
* `creator`: csv of person or company (not tool) creating the file
46-
* 'license' csv of spdx identifiers
47-
* 'data_sources' csv of model, scenario player, etc.
48-
- Additional custom metadata may be added, but it is recommended to add a category with the name `context` where the key represents a prefix and the value pointing to the specification of the metadate. This allows to add other (channel-wise) metadata with the stated prefix. Thus, it becomes clear what a metadata is about and where it is specified. The following examples are given:
49-
- GAIA-X4PLC-AAD SHACL Shape
50-
- Assume you want to embed the hdmap of a scenario in the MCAP file.
51-
- The `context` category contains the key `GAIA-X4PLC-AAD-hdmap ` with the value `https://github.com/GAIA-X4PLC-AAD/ontology-management-base/blob/main/hdmap/hdmap_shacl.ttl`
52-
- A channel metadata contains the key `GAIA-X4PLC-AAD-hdmap` with the value of the hdmap data in the given SHACLE shape.
53-
- openDrive Reference
54-
- Assume you want to express that oncoming traffic passes on the right side of the road.
55-
- The `context` category contains the key `openDrive` with the value `https://publications.pages.asam.net/standards/ASAM_OpenDRIVE/ASAM_OpenDRIVE_Specification/1.8.1/specification/index.html`
56-
- A file metadata in a new metadata category with the arbitrary name `specification` contains the key `openDrive-road-rule` with the value `RHT`
57-
- Cycle time variation of a sensor
58-
- Assume you want to express the interface cycle time variation of a sensor.
59-
- The `context` category contains the key `iso_23150` with the value` ISO 23150:2011`
60-
- A channel containing `OSI3::SensorData` messages has metadata with the key `iso_23150-cycle-time-variation:` and the value `80`
44+
** `description`: Short human-readable scenario description
45+
** `creator`: csv of person or company (not tool) creating the file
46+
** `license`` csv of spdx identifiers
47+
** `data_sources` csv of model, scenario player, etc.
48+
- Additional custom metadata may be added, but it is recommended to add a category with the name `context` where the key represents a prefix and the value pointing to the specification of the metadata. This allows to add other (channel-wise) metadata with the stated prefix. Thus, it becomes clear what a metadata is about and where it is specified. The following examples are given:
49+
** GAIA-X4PLC-AAD SHACL Shape
50+
*** Assume you want to embed the hdmap of a scenario in the MCAP file.
51+
*** The `context` category contains the key `GAIA-X4PLC-AAD-hdmap` with the value `https://github.com/GAIA-X4PLC-AAD/ontology-management-base/blob/main/hdmap/hdmap_shacl.ttl`
52+
*** A channel metadata contains the key `GAIA-X4PLC-AAD-hdmap` with the value of the hdmap data in the given SHACL shape.
53+
** openDrive Reference
54+
*** Assume you want to express that oncoming traffic passes on the right side of the road.
55+
*** The `context` category contains the key `openDrive` with the value `https://publications.pages.asam.net/standards/ASAM_OpenDRIVE/ASAM_OpenDRIVE_Specification/1.8.1/specification/index.html`
56+
*** A file metadata in a new metadata category with the arbitrary name `specification` contains the key `openDrive-road-rule` with the value `RHT`
57+
** Cycle time variation of a sensor
58+
*** Assume you want to express the interface cycle time variation of a sensor.
59+
*** The `context` category contains the key `iso_23150` with the value` ISO 23150:2011`
60+
*** A channel containing `OSI3::SensorData` messages has metadata with the key `iso_23150-cycle-time-variation:` and the value `80`
6161

6262
== Compression
6363
- OSI-compliant tooling must support compression types: `none`, `lz4`, and `zstd`
@@ -68,10 +68,10 @@ endif::[]
6868

6969

7070
----
71-
<opt. prefix>_<opt. timestamp>_<type>_<opt. suffix>.cap
71+
<opt. prefix>_<opt. timestamp>_<type>_<opt. suffix>.mcap
7272
----
7373

74-
When not using an optional field, the corresponding `_` delimiter must be omitted so that no double `_` is present.
74+
When not using an optional field, the corresponding underscore delimiter must be omitted so that no double underscore is present.
7575

7676
[#tab-MCAP-file-naming-convention]
7777
.MCAP file naming convention
@@ -87,21 +87,21 @@ When not using an optional field, the corresponding `_` delimiter must be omitte
8787

8888

8989
|type
90-
| Specifies contained the top-level message(s) and must be one of the following values:
90+
| Specifies the type of the contained the top-level message(s) and must be one of the following values:
9191

9292
`sv` file contains only `SensorView` messages. +
9393
`gt` file contains only `GroundTruth` messages. +
9494
`hvd` file contains only `HostVehicleData` messages. +
9595
`sd` file contains only SensorData` messages. +
96-
`tc` file contains only `TrafficCommand` messages.+
97-
`tcu` file contains only `TrafficCommandUpdate` messages.
98-
`tu` file contains only `TrafficUpdate` messages.
99-
`mr` file contains only `MotionRequest` messages.
100-
`su` file contains only `StreamingUpdate` messages.
96+
`tc` file contains only `TrafficCommand` messages. +
97+
`tcu` file contains only `TrafficCommandUpdate` messages. +
98+
`tu` file contains only `TrafficUpdate` messages. +
99+
`mr` file contains only `MotionRequest` messages. +
100+
`su` file contains only `StreamingUpdate` messages. +
101101
`multi` file contains multiple, different types of of top-level messages (not including different channels of the same type).
102102

103103
|opt. suffix
104-
|An optional suffix which may be used the same way like the optional prefix or be used to specify further details like the minimum required OSI version. May not contain any `_` characters.
104+
|An optional suffix which may be used the same way as the optional prefix or be used to specify further details like the minimum required OSI version. May not contain any `_` characters.
105105

106106

107107
|===
@@ -110,6 +110,7 @@ When not using an optional field, the corresponding `_` delimiter must be omitte
110110
**Example**
111111

112112
The following list shows examples of valid OSI MCAP file names:
113+
113114
- `20210818T150542Z_highway_sv.mcap`
114115
- `20210818T150542Z_highway_sv_run-1.mcap`
115116
- `20210818T150542Z_highway_gt_OSI-3-7.mcap`

0 commit comments

Comments
 (0)