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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions