Skip to content

SCL edits with the Ace editor cause namespace problems #9

@danyill

Description

@danyill

I made some changes to descriptions using the Ace editor today.

I was surprised to find that it appears to have inlined the namespaces on all elements which was not desired as well as introduce additional whitespace/formatting.

Just a think to be aware of!

diff --git a/sel-411l-2-line-protection/settings/SEL-411L-2.icd b/sel-411l-2-line-protection/settings/SEL-411L-2.icd
index f60fa40..1669222 100644
--- a/sel-411l-2-line-protection/settings/SEL-411L-2.icd
+++ b/sel-411l-2-line-protection/settings/SEL-411L-2.icd
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<SCL xmlns:esel="http://www.selinc.com/2006/61850" version="2007" revision="B" xmlns="http://www.iec.ch/61850/2003/SCL">
+<?xml version="1.0" encoding="UTF-8"?>
+<SCL xmlns:esel="http://www.selinc.com/2006/61850" xmlns="http://www.iec.ch/61850/2003/SCL" version="2007" revision="B">
 	<Header id="New Project" version="0" revision="1.0" toolID="AcSELerator Architect 2.3.16.143" nameStructure="IEDName">
 		<History>
 			<Hitem version="0" revision="1.0" when="11/26/2024 22:12:04" who="AzureAD\MaikUfferhardt" what="IED exported from Project New Project"/>
@@ -131,7 +131,8 @@
 			<esel:System controllableModeSupported="true"/>
 		</Private>
 		<Private type="SEL_HostFile">
-      <esel:host_file path="SETTINGS\" filename="SET_LCC.TXT" allowRemoval="false"><![CDATA[[LCC]
+			<esel:host_file path="SETTINGS\" filename="SET_LCC.TXT" allowRemoval="false">
+				<![CDATA[[LCC]
 		"PROTSEL1","CSV01 := DSTRT OR NSTRT"
 		"PROTSEL2","CSV02 := BFI3P1 OR BFIA1 OR BFIB1 OR BFIC1"
 		"PROTSEL3","CSV03 := BFI3P2 OR BFIA2 OR BFIB2 OR BFIC2"
@@ -163,7 +164,8 @@
 		"PROTSEL29",""
 		"PROTSEL30",""
 		"PROTSEL31",""
-		"PROTSEL32",""]]></esel:host_file>
+		"PROTSEL32",""]]>
+			</esel:host_file>
 		</Private>
 		<Private type="SEL_OriginatorAccess">
 			<esel:Originator category="0" allowed="0"/>
@@ -205,7 +207,7 @@
 		<AccessPoint desc="Station Bus" name="S1">
 			<Server>
 				<Authentication/>
-        <LDevice desc="Data Sets, Control Blocks, and Supervision Logical Nodes" inst="CFG">
+				<LDevice xmlns="http://www.iec.ch/61850/2003/SCL" desc="Data Sets, Control Blocks, and Supervision Logical Nodes" inst="CFG">
 					<LN0 lnType="LN0_Root_Cmb_2" lnClass="LLN0" inst="">
 						<DataSet desc="For Transpower test technicians. Mapped to GOOSE." name="Test">
 							<FCDA ldInst="ANN" prefix="TLED" lnClass="GGIO" lnInst="7" doName="Ind03" daName="stVal" fc="ST"/>
@@ -522,25 +524,25 @@
 							</DAI>
 						</DOI>
 						<DOI name="Loc">
-              <DAI esel:datasrc="db:LOC" name="stVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:LOC" name="stVal"/>
 						</DOI>
 						<DOI name="LocSta">
 							<SDI name="Oper">
-                <DAI esel:datasrc="db:LOCSTA" name="ctlVal" />
+								<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:LOCSTA" name="ctlVal"/>
 							</SDI>
-              <DAI esel:datasrc="db:LOCSTA" name="stVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:LOCSTA" name="stVal"/>
 							<DAI name="ctlModel">
 								<Val>sbo-with-enhanced-security</Val>
 							</DAI>
-              <DAI esel:datasrc="imm" name="sboTimeout">
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="imm" name="sboTimeout">
 								<Val>10000</Val>
 							</DAI>
-              <DAI esel:datasrc="imm" name="stSeld">
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="imm" name="stSeld">
 								<Val>false</Val>
 							</DAI>
 						</DOI>
 						<DOI name="MltLev">
-              <DAI esel:datasrc="db:MLTLEV" name="setVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:MLTLEV" name="setVal"/>
 						</DOI>
 						<Inputs>
 							<ExtRef desc="IAW (Line CB current)" intAddr="IAW" serviceType="SMV"/>
@@ -610,7 +612,7 @@
 						</Inputs>
 						<GSEControl desc="Trip, Close, CBF and ARecl signals" name="Ctl" datSet="Ctl" confRev="1" appID="Ctl">
 							<Private type="SEL_GOOSETXAddress">
-                <esel:Address>
+								<esel:Address xmlns:esel="http://www.selinc.com/2006/61850">
 									<esel:P type="MAC-Address">01-0C-CD-01-00-03</esel:P>
 									<esel:P type="APPID">0001</esel:P>
 									<esel:P type="VLAN-ID">06E</esel:P>
@@ -618,15 +620,15 @@
 								</esel:Address>
 							</Private>
 							<Private type="SEL_GOOSETXMinTime">
-                <esel:MinTime>4</esel:MinTime>
+								<esel:MinTime xmlns:esel="http://www.selinc.com/2006/61850">4</esel:MinTime>
 							</Private>
 							<Private type="SEL_GOOSETXMaxTime">
-                <esel:MaxTime>1000</esel:MaxTime>
+								<esel:MaxTime xmlns:esel="http://www.selinc.com/2006/61850">1000</esel:MaxTime>
 							</Private>
 						</GSEControl>
 						<GSEControl desc="GOOSE messages between P1 line protection relays of separate primary busses in 1.5 CB applications." name="CtlHalfCB" datSet="CtlHalfCB" confRev="1" appID="HalfCB">
 							<Private type="SEL_GOOSETXAddress">
-                <esel:Address>
+								<esel:Address xmlns:esel="http://www.selinc.com/2006/61850">
 									<esel:P type="MAC-Address">01-0C-CD-01-00-04</esel:P>
 									<esel:P type="APPID">0002</esel:P>
 									<esel:P type="VLAN-ID">3EE</esel:P>
@@ -634,15 +636,15 @@
 								</esel:Address>
 							</Private>
 							<Private type="SEL_GOOSETXMinTime">
-                <esel:MinTime>4</esel:MinTime>
+								<esel:MinTime xmlns:esel="http://www.selinc.com/2006/61850">4</esel:MinTime>
 							</Private>
 							<Private type="SEL_GOOSETXMaxTime">
-                <esel:MaxTime>1000</esel:MaxTime>
+								<esel:MaxTime xmlns:esel="http://www.selinc.com/2006/61850">1000</esel:MaxTime>
 							</Private>
 						</GSEControl>
 						<GSEControl desc="For Transpower test technicians." name="Test" datSet="Test" confRev="1" appID="Test">
 							<Private type="SEL_GOOSETXAddress">
-                <esel:Address>
+								<esel:Address xmlns:esel="http://www.selinc.com/2006/61850">
 									<esel:P type="MAC-Address">01-0C-CD-01-00-05</esel:P>
 									<esel:P type="APPID">0005</esel:P>
 									<esel:P type="VLAN-ID">06E</esel:P>
@@ -650,15 +652,15 @@
 								</esel:Address>
 							</Private>
 							<Private type="SEL_GOOSETXMinTime">
-                <esel:MinTime>4</esel:MinTime>
+								<esel:MinTime xmlns:esel="http://www.selinc.com/2006/61850">4</esel:MinTime>
 							</Private>
 							<Private type="SEL_GOOSETXMaxTime">
-                <esel:MaxTime>1000</esel:MaxTime>
+								<esel:MaxTime xmlns:esel="http://www.selinc.com/2006/61850">1000</esel:MaxTime>
 							</Private>
 						</GSEControl>
 						<GSEControl desc="Interlocking status messages to the central interlocking controller" name="ILock1" datSet="ILock1" confRev="1" appID="ILock1">
 							<Private type="SEL_GOOSETXAddress">
-                <esel:Address>
+								<esel:Address xmlns:esel="http://www.selinc.com/2006/61850">
 									<esel:P type="MAC-Address">01-0C-CD-01-00-06</esel:P>
 									<esel:P type="APPID">0006</esel:P>
 									<esel:P type="VLAN-ID">3EE</esel:P>
@@ -666,13 +668,13 @@
 								</esel:Address>
 							</Private>
 							<Private type="SEL_GOOSETXMinTime">
-                <esel:MinTime>4</esel:MinTime>
+								<esel:MinTime xmlns:esel="http://www.selinc.com/2006/61850">4</esel:MinTime>
 							</Private>
 							<Private type="SEL_GOOSETXMaxTime">
-                <esel:MaxTime>1000</esel:MaxTime>
+								<esel:MaxTime xmlns:esel="http://www.selinc.com/2006/61850">1000</esel:MaxTime>
 							</Private>
 						</GSEControl>
-            <SettingControl esel:activeGroupLabel="ACTGRP" esel:numberOfSettingGroupsLabel="MAXGRP" numOfSGs="6" />
+						<SettingControl xmlns:esel="http://www.selinc.com/2006/61850" esel:activeGroupLabel="ACTGRP" esel:numberOfSettingGroupsLabel="MAXGRP" numOfSGs="6"/>
 					</LN0>
 					<LN lnType="LPHD2" prefix="DevID" lnClass="LPHD" inst="1">
 						<DOI name="Proxy">
@@ -682,99 +684,99 @@
 						</DOI>
 						<DOI name="Sim">
 							<SDI name="Oper">
-                <DAI esel:datasrc="db:LPHDSIM" name="ctlVal" />
+								<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:LPHDSIM" name="ctlVal"/>
 							</SDI>
-              <DAI esel:datasrc="db:LPHDSIM" name="stVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:LPHDSIM" name="stVal"/>
 							<DAI name="ctlModel">
 								<Val>sbo-with-enhanced-security</Val>
 							</DAI>
-              <DAI esel:datasrc="imm" name="sboTimeout">
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="imm" name="sboTimeout">
 								<Val>10000</Val>
 							</DAI>
-              <DAI esel:datasrc="imm" name="stSeld">
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="imm" name="stSeld">
 								<Val>false</Val>
 							</DAI>
 						</DOI>
 					</LN>
 					<LN lnType="LCCH_PB_2" prefix="PB" lnClass="LCCH" inst="1">
 						<DOI name="ChLiv">
-              <DAI esel:datasrc="db:PBCH" name="stVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:PBCH" name="stVal"/>
 						</DOI>
 						<DOI name="RedChLiv">
-              <DAI esel:datasrc="db:PBRCH" name="stVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:PBRCH" name="stVal"/>
 						</DOI>
 						<DOI name="RxCnt">
-              <DAI esel:datasrc="db:PBRX" name="actVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:PBRX" name="actVal"/>
 							<DAI name="pulsQty">
 								<Val>1</Val>
 							</DAI>
 						</DOI>
 						<DOI name="RedRxCnt">
-              <DAI esel:datasrc="db:PBRRX" name="actVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:PBRRX" name="actVal"/>
 							<DAI name="pulsQty">
 								<Val>1</Val>
 							</DAI>
 						</DOI>
 						<DOI name="RxCntGo">
-              <DAI esel:datasrc="db:PBRXGO" name="actVal" />
+							<DAI xmlns:esel="http://www.selinc.com/2006/61850" esel:datasrc="db:PBRXGO" name="actVal"/>
 							<DAI name="pulsQty">
 								<Val>1</Val>
 							</DAI>
 						</DOI>
 						<DOI name="RedRxCntGo">

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions