# Version 0.3 (latest)¶

A file conforming to the openEPDA CDF format has the following structure. The first line is the format identifier, # openEPDA CDF. After this, the data section follows, which adheres to the YAML format, and contains all settings (numeric and textual) data in the form of an associative array.

An example of a file recorded in the openEPDA CDF format is shown below.

## JSON Schema¶

In order to validate the CDF data, the following JSON Schema can be used: cdf_schema_v0.3.yaml. In case of documentation disagreements, JSON schema has priority.

## Attributes¶

In this section, a list and explanation of the attributes is given. Additional attributes which are not listed below are not allowed.

### Required¶

The following attributes are required to be present in the CDF:

• _openEPDA: a dictionary defining the format and its version. See the field in the example.

• cdf: a string with a unique identifier of the CDF.

• cell: a string with an identifier of the PIC design described by the CDF.

• unit: a string defining the length unit for the coordinates in the file.

• bbox: a list with the coordinates of two bounding box corners, (south-west and north-east).

• io: A dictionary with IOs located on the chip.

### Optional¶

The following attributes are optional to be present in the CDF:

• fiducial: a dictionary with fiducial markers on the chip.

## Example CDF¶

# openEPDA CDF
_openEPDA:
format: openEPDA-CDF
version: "0.3"

cdf: SP19-34
cell: SP19-34
unit: um

bbox:
- [-50, -50]
- [4550, 3950]

fiducial:
target:
fidt0: [2250, 257.5]
fidt1: [2250, 3642.5]
cornerUL:
cul0: [1737.5, 257.5]
cul1: [1737.5, 3642.5]
disc:
dsk0: [1500.0, 1500.0]

io:
optical_port:
ioW001: [-50, 25]
ioW003: [-50, 50]
ioW005: [-50, 75]
ioW007: [-50, 100]
ioW009: [-50, 125]
ioE001: [4550, 25]
ioE003: [4550, 50]
ioE005: [4550, 75]
ioE007: [4550, 100]
ioE009: [4550, 125]