Skip to content

Adding PublicationRef and ConsequenceCode#209

Open
TuThoThai wants to merge 18 commits into
v2.3-wipfrom
sx_cr_link_actions_consequences
Open

Adding PublicationRef and ConsequenceCode#209
TuThoThai wants to merge 18 commits into
v2.3-wipfrom
sx_cr_link_actions_consequences

Conversation

@TuThoThai

@TuThoThai TuThoThai commented Apr 21, 2026

Copy link
Copy Markdown
Collaborator

Request primarily made by the French mirror group.

Context - Real-life example

What is happening in real life:

  • Situation S: Unattended luggage in a metro currently stopped at the station “Saint-Paul” on the line 1 going toward “Château de Vincennes”
  • Consequence C1: No service between Hôtel-de-Ville and Château de Vincennes
  • Message MB: Unattended luggage. No service between Saint-Paul and Château de Vincennes
  • Consequence C2: Slow service between La Défense and Hôtel-de-Ville
  • Message MA: Unattended luggage. Slow service between La Défense and Hôtel-de-Ville
image

As of today, on the data consumers' side:

  • No possibility to track which ParametrisedAction relates to which Consequence
  • Whenever the Consequence evolve, they have to reprocess the entire payload to publish the right information

Hence, the double need:

  • Possibility to track a ParametrisedAction via an unique identifier
  • Possibility to add a link between a ParametrisedAction and a Consequence of a situation

Change request

  • Adding PublicationRef to identify a ParametrisedAction for easier updates on data consumers side
  • Adding ConsequenceRef in ParametrisedAction to strenghten the link between the Consequence of a Situation and its publication
  • Adding ConsequenceCode in PtConsequence as a unique identifier of the Consequence that can be referrenced elsewhere
    It would allow something like this:
image

This request for change was discussed on 7 Apil 2026 in the SIRI-SX task force with positive outcome.

Need: Data consumers want to track the ParametrisedAction of one or several Consequences

Change:
- Adding `PublicationRef` to identify a `ParametrisedAction` for easier updates on data consumers side
- Adding `ConsequenceRef` in `ParametrisedAction` to strenghten the link between the Consequence of a Situation and its publication
- Adding `ConsequenceCode` in `PtConsequence` as a unique identifier of the Consequence that can be referrenced elsewhere
@TuThoThai TuThoThai added SX For everything SIRI-SX Needs CEN documentation Update These require CEN documentation update to match XSD & examples labels Apr 21, 2026
@TuThoThai TuThoThai added this to the v2.3 milestone Apr 21, 2026
Comment thread xsd/siri_model/siri_situationActions.xsd Outdated
@skinkie

skinkie commented Apr 22, 2026

Copy link
Copy Markdown
Contributor

I don't understand the need. For now -1.

@TuThoThai

TuThoThai commented Apr 22, 2026

Copy link
Copy Markdown
Collaborator Author

I don't understand the need. For now -1.

We discussed it at the previous SIRI-SX task force meeting. Let me detail the context to better reflect what was presented. 😊

==> Change done at the beginning of the PR

@TuThoThai
TuThoThai requested a review from skinkie April 22, 2026 08:04
@TuThoThai

Copy link
Copy Markdown
Collaborator Author

On 22 April, discussions

  • add more details on the PR description with actual messages
  • suggested changed PublicationRef to PublishedRef

@haeckerbaer haeckerbaer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add an example that details in what scenarios these new references can/should be used (as already discussed in the SX task force). Otherwise approved

@TuThoThai
TuThoThai requested a review from haeckerbaer July 15, 2026 19:05
@TuThoThai

Copy link
Copy Markdown
Collaborator Author

@haeckerbaer , after your review I edited:

  • the description of the PR at the top
  • added an example

haeckerbaer
haeckerbaer previously approved these changes Jul 16, 2026
Comment thread xsd/siri_model/siri_reference.xsd Outdated
haeckerbaer
haeckerbaer previously approved these changes Jul 16, 2026
fix the Affects part in the Consequence with noService
@TuThoThai

Copy link
Copy Markdown
Collaborator Author

@haeckerbaer , @skinkie and @thbar , I fixed the example. Ready for your final review!

@TuThoThai
TuThoThai requested review from haeckerbaer and skinkie July 16, 2026 09:15
Comment thread examples/siri_exm_SX/exx_situationExchange_response_multipleconsequences.xml Outdated
Comment thread examples/siri_exm_SX/exx_situationExchange_response_multipleconsequences.xml Outdated
@rbnxx

rbnxx commented Jul 21, 2026

Copy link
Copy Markdown

it looks good.

@skinkie skinkie left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I want this being discussed in the group.

<xsd:documentation>Data associated with action.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="PublicationRef" type="xsd:NMTOKEN" minOccurs="0">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see why this should be tracked with extra references.

<xsd:documentation>Type for disruption.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="ConsequenceCode" type="xsd:NMTOKEN" minOccurs="0">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This linking causes overly complex parsing. Notice that the example has multiple ConsequenceRef's.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@skinkie, indeed the example has multiple ConsequenceRef as it exactly describes the context presented at the top of the PR. The idea is that some PublishingAction can refer to several consequences while other are dedicated to only one consequence of the same situation.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think is the wrong solution for the problem. It creates relationships within the document not able to be checked or enforced.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem to solve here is the case of a SituationExchange that has several different consequences and several messages describing the situation.

In this case, for a single SituationExchange, there can be several complementary messages (PublishingAction):

  • PublishingActions with a text that describes only one of the consequences (one action for each consequence)
  • A PublishingAction with a text that describes several consequences (one action describing all the consequences)

Depending on the context, a system using the SituationExchange needs to be able to choose between the more specific version of the message for a specific consequence (for example, a display at a specific bus stop for a specific line) or the broader version of the message whose text describes all the consequences in a single optimized message (for example, a display in the hall of a bus station to optimize screen usage).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The question is more in the direction: is the document structure wrong for this. If it does not logically flow that PublishingActions are related to Consequences.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The document structure does not seem fundamentally wrong to me.
Adding this kind of relationship between Consequence and PublishingAction is, in my view, similar to the SituationRef found in the SMDelivery (IIRC). It would provide an attribute indicating that a publishing action (i.e., a message) is associated with one or more consequences.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs CEN documentation Update These require CEN documentation update to match XSD & examples SX For everything SIRI-SX

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants