Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(editors/later-binding): Resolve absent prefix in ExtRef for later binding subscription #1026

Merged
merged 5 commits into from
Oct 5, 2022

Conversation

danyill
Copy link
Collaborator

@danyill danyill commented Oct 1, 2022

Partially resolves #1005

@JakobVogelsang
Copy link
Collaborator

Very nice! Thanks for tracing back the issue. Would it be possible to add a regression test?

@dlabordus dlabordus self-requested a review October 4, 2022 06:15
@danyill
Copy link
Collaborator Author

danyill commented Oct 4, 2022 via email

@danyill
Copy link
Collaborator Author

danyill commented Oct 4, 2022

Thank you for the review, I understand better now, despite this being quite trivial 😉 😢

In preparing the tests I ran the scd file through OpenSCD which is why there is some whitespace diff.

Without this:

@@ -71,6 +71,9 @@
                                                <Inputs>
                                                        <ExtRef intAddr="Pos;CSWI1/Pos/stVal" desc="Interlocking.Input"/>
                                                        <ExtRef intAddr="Pos;CSWI1/Pos/q" desc="Interlocking.Input" iedName="GOOSE_Publisher" serviceType="GOOSE" ldInst="QB2_Disconnector" lnClass="CSWI" lnInst="1" prefix="" doName="Pos" daName="q" srcLDInst="QB2_Disconnector" srcPrefix="" srcLNClass="LLN0" srcCBName="GOOSE2"/>
+                                                       <ExtRef intAddr="Pos;CILO/EnaOpn/stVal" desc="Interlocking.Input2" iedName="GOOSE_Publisher" serviceType="GOOSE" ldInst="QB1_Disconnector" lnClass="CILO" lnInst="1" prefix="" doName="EnaOpn" daName="stVal" srcLDInst="QB2_Disconnector" srcPrefix="" srcLNClass="LLN0" srcCBName="GOOSE2"/>
+                                                       <ExtRef intAddr="Pos;CILO/EnaCls/stVal" desc="Interlocking.Input3" iedName="GOOSE_Publisher" serviceType="GOOSE" ldInst="QB1_Disconnector" lnClass="CILO" lnInst="1" doName="EnaCls" daName="stVal" srcLDInst="QB2_Disconnector" srcPrefix="" srcLNClass="LLN0" srcCBName="GOOSE2"/>
+                                                       <ExtRef intAddr="Pos;CILO/EnaOpn2/stVal" desc="Interlocking.Input4" iedName="GOOSE_Publisher" serviceType="GOOSE" ldInst="QB2_Disconnector" lnClass="CILO" lnInst="1" doName="EnaOpn" daName="stVal" srcLDInst="QB2_Disconnector" srcPrefix="" srcLNClass="LLN0" srcCBName="GOOSE2"/>
                                                </Inputs>
                                        </LN>
                                        <LN prefix="" lnClass="CSWI" inst="1" lnType="Dummy.CSWI">
@@ -94,6 +97,9 @@
                                                <DataSet name="GOOSE2sDataSet">
                                                        <FCDA ldInst="QB2_Disconnector" prefix="" lnClass="CSWI" lnInst="1" doName="Pos" daName="stVal" fc="ST"/>
                                                        <FCDA ldInst="QB2_Disconnector" prefix="" lnClass="CSWI" lnInst="1" doName="Pos" daName="q" fc="ST"/>
+                                                       <FCDA ldInst="QB1_Disconnector" lnClass="CILO" lnInst="1" doName="EnaOpn" daName="stVal" fc="ST"/>
+                                                       <FCDA ldInst="QB1_Disconnector" prefix="" lnClass="CILO" lnInst="1" doName="EnaCls" daName="stVal" fc="ST"/>
+                                                       <FCDA ldInst="QB2_Disconnector" lnClass="CILO" lnInst="1" doName="EnaOpn" daName="stVal" fc="ST"/>
                                                </DataSet>
                                                <DataSet name="GOOSE1sDataSet">
                                                        <FCDA ldInst="QB1_Disconnector" prefix="" lnClass="CSWI" lnInst="1" doName="Pos" daName="stVal" fc="ST"/>

I have added CILO LN subscriptions with the following combinations, which I think cover the relevant cases.

FCDA        ExtRef
No prefix   Prefix
Prefix      No prefix
No prefix   No prefix

@dlabordus dlabordus changed the title fix(editors/later-binding) Resolve absent prefix in ExtRef for later binding subscription fix(editors/later-binding): Resolve absent prefix in ExtRef for later binding subscription Oct 5, 2022
@danyill danyill merged commit 31fd177 into openscd:main Oct 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Later Binding on specific file does not work
3 participants