DCSA Reference Documentation / Standards / Standard Releases / Port Call / Archive / Port Call v2.0.0
DCSA PC 2.0.0 - Conformance Scenarios
Archived copy: This immutable copy preserves Port Call v2.0.0. View the current v2 documentation.
Contents
1. What is Conformance?
Conformance refers to the validation process used to assess whether an adopterâs implementation of the DCSA Port Call API adheres to the expected technical and business requirements defined by DCSA.
The objective is to ensure interoperability between event publishers and event subscribers by demonstrating that Port Call events are exchanged using the correct format and content through the GET and/or POST standard endpoints.
2. Conformance Scenarios
GET scenarios
These scenarios measure the conformance of event producers who implement the GET endpoint and send out events in response to GET requests from event consumers.
-
Supply parameters (timestamp) + GET event
-
Supply parameters (move forecasts) + GET event
The âsupply parametersâ conformance action prompts the user to enter a JSON representation of the query parameters filter that, when used by the sandbox in a GET request, would fetch from their system at least one event matching the scenario type (containing either a timestamp or move forecasts).
POST scenarios
These scenarios measure the conformance of event producers who send out events to the POST endpoints of registered event consumers.
-
POST event (timestamp)
-
POST event (move forecasts)
The âPOST eventâ conformance action prompts the user to have their system POST a message containing at least one event matching the scenario type (containing either a timestamp or move forecasts).
3. Conformance Validations
Default validations (URL, response code, schema) are included.
Custom validations must be identical for the GET and the POST scenario of same type (timestamp vs. move forecasts).
Conformance reports contain the text of each relevant custom validation below (without sub-check lines), either with a â or with a đ« depending on whether the validation succeeded or failed.
Custom validation: âAt least one event must be included in a message sent to the sandbox during conformance testingâ
Custom validations for a timestamp scenario:
-
âAt least one event must demonstrate the correct use of the âtimestamp/classifierCodeâ attributeâ
-
âAt least one event must demonstrate the correct use of the âtimestamp/serviceDateTimeâ attributeâ
Custom validations for a move forecasts scenario:
-
âAt least one event must demonstrate the correct use within the âmoveForecastsâ object of at least one of the ârestowUnitsâ, âloadUnitsâ or âdischargeUnitsâ sub-objects.â
-
For each âbase object pathâ
-
âŠwithin this list:
-
âmoveForecasts/loadUnitsâ
-
âmoveForecasts/dischargeUnitsâ
-
-
âŠpresent within any event, add the custom validation:
- âAt least one event including the â<base object path>â object must demonstrate the correct use within it of the âtotalUnitsâ sub-object or of at least one of the âladenUnitsâ, âemptyUnitsâ, âpluggedReeferUnitsâ or âoutOfGaugeUnitsâ sub-objectâ
-
-
For each âbase object pathâ
-
âŠwithin this list:
-
âmoveForecasts/restowUnitsâ
-
âmoveForecasts/loadUnits/totalUnitsâ
-
âmoveForecasts/loadUnits/ladenUnitsâ
-
âmoveForecasts/loadUnits/emptyUnitsâ
-
âmoveForecasts/loadUnits/pluggedReeferUnitsâ
-
âmoveForecasts/loadUnits/outOfGaugeUnitsâ
-
âmoveForecasts/dischargeUnits/totalUnitsâ
-
âmoveForecasts/dischargeUnits/ladenUnitsâ
-
âmoveForecasts/dischargeUnits/emptyUnitsâ
-
âmoveForecasts/dischargeUnits/pluggedReeferUnitsâ
-
âmoveForecasts/dischargeUnits/outOfGaugeUnitsâ
-
-
âŠpresent within any event, add the custom validation:
- âAt least one event including the â<base object path>â object must demonstrate the correct use within it of the âtotalUnitsâ attribute or of at least one of the âsize20Unitsâ, âsize40Unitsâ or âsize45Unitsâ attributeâ
-