Buggy code:
public void checkForDuplicateNames ( DocumentRoot root ) { } public void setPrintedType ( DocumentRoot root , SCDAdditionalMappings map ) { } public void checkForCircularSDOReferences ( DocumentRoot root ) { } public void mapFCDAToDataType ( DocumentRoot root , SCDAdditionalMappings map ) { } public TIED getIEDFromFCDA ( DocumentRoot root , TFCDA fcda ) { } public void checkControlHasControlBlock ( DocumentRoot root ) { } public void mapDataSetToControl ( DocumentRoot root , SCDAdditionalMappings map ) { } public void mapExtRefToDataSet ( DocumentRoot root , SCDAdditionalMappings map ) { final EObjectCondition isExtRef = new org . eclipse . emf . query . conditions . eobjects . EObjectTypeRelationCondition ( eINSTANCE . getTExtRef ( ) ) ; IQueryResult extRefs = new SELECT ( new org . eclipse . emf . query . statements . FROM ( root ) , new org . eclipse . emf . query . statements . WHERE ( isExtRef ) ) . execute ( ) ; for ( EObject object : extRefs ) { final TExtRef extRef = ( ( TExtRef ) ( object ) ) ; PruneHandler pruner = new PruneHandler ( ) { public boolean shouldPrune ( EObject object ) { if ( ( object . eClass ( ) ) == ( eINSTANCE . getTIED ( ) ) ) { TIED found = ( ( TIED ) ( object ) ) ; if ( ! ( found . getName ( ) . equals ( extRef . getIedName ( ) ) ) ) { return true ; } } return false ; } } ; final EObjectCondition isFCDA = new org . eclipse . emf . query . conditions . eobjects . EObjectTypeRelationCondition ( eINSTANCE . getTFCDA ( ) , pruner ) ; final EObjectCondition isLdInst = new org . eclipse . emf . query . conditions . eobjects . structuralfeatures . EObjectAttributeValueCondition ( eINSTANCE . getTFCDA_LdInst ( ) , new org . eclipse . emf . query . conditions . strings . StringValue ( extRef . getLdInst ( ) ) ) ; final EObjectCondition isPrefix = new org . eclipse . emf . query . conditions . eobjects . structuralfeatures . EObjectAttributeValueCondition ( eINSTANCE . getTFCDA_Prefix ( ) , new org . eclipse . emf . query . conditions . strings . StringValue ( extRef . getPrefix ( ) ) ) ; ObjectInstanceCondition sc = new ObjectInstanceCondition ( ( ( Object ) ( extRef . getLnClass ( ) ) ) ) { @ Override public boolean isSatisfied ( Object obj ) { return getObject ( ) . toString ( ) . equals ( obj . toString ( ) ) ; } } ; final EObjectCondition isLnClass = new org . eclipse . emf . query . conditions . eobjects . structuralfeatures . EObjectAttributeValueCondition ( eINSTANCE . getTFCDA_LnClass ( ) , sc ) ; final EObjectCondition isLnInst = new org . eclipse . emf . query . conditions . eobjects . structuralfeatures . EObjectAttributeValueCondition ( eINSTANCE . getTFCDA_LnInst ( ) , new org . eclipse . emf . query . conditions . strings . StringValue ( extRef . getLnInst ( ) ) ) ; final EObjectCondition isDOName = new org . eclipse . emf . query . conditions . eobjects . structuralfeatures . EObjectAttributeValueCondition ( eINSTANCE . getTFCDA_DoName ( ) , new org . eclipse . emf . query . conditions . strings . StringValue ( extRef . getDoName ( ) ) ) ; IQueryResult result = new SELECT ( new org . eclipse . emf . query . statements . FROM ( root ) , new org . eclipse . emf . query . statements . WHERE ( isFCDA . AND ( isLdInst ) . AND ( isPrefix ) . AND ( isLnClass ) . AND ( isLnInst ) . AND ( isDOName ) ) ) . execute ( ) ; if ( ( result . getException ( ) ) != null ) { return ; } else { if ( ( result . size ( ) ) == 0 ) { <START_BUG> error ( ( ( ( ( ( ( ( ( ( ( ( "no<seq2seq4repair_space>dataset<seq2seq4repair_space>satisfies<seq2seq4repair_space>ExtRef:<seq2seq4repair_space>LD<seq2seq4repair_space>Inst:<seq2seq4repair_space>" + ( extRef . getLdInst ( ) ) ) + ",<seq2seq4repair_space>Prefix:<seq2seq4repair_space>" ) + ( extRef . getPrefix ( ) ) ) + ",<seq2seq4repair_space>LN<seq2seq4repair_space>Class:<seq2seq4repair_space>" ) + ( extRef . getLnClass ( ) ) ) + ",<seq2seq4repair_space>LN<seq2seq4repair_space>Inst:<seq2seq4repair_space>" ) + ( extRef . getLnInst ( ) ) ) + ",<seq2seq4repair_space>DO<seq2seq4repair_space>name:<seq2seq4repair_space>" ) + ( extRef . getDoName ( ) ) ) + ",<seq2seq4repair_space>DA<seq2seq4repair_space>name:<seq2seq4repair_space>" ) + ( extRef . getDaName ( ) ) ) ) ; <END_BUG> } else { if ( ( result . size ( ) ) > 1 ) { Set < String > daNames = new HashSet < String > ( ) ; boolean duplicates = false ; for ( EObject r : result ) { TFCDA fcda = ( ( TFCDA ) ( r ) ) ; String daName = fcda . getDaName ( ) ; if ( daNames . contains ( daName ) ) { duplicates = true ; break ; } daNames . add ( daName ) ; } if ( duplicates ) { SCDValidator . warning ( ( ( ( ( ( ( ( ( ( ( ( ( ( result . size ( ) ) + "<seq2seq4repair_space>datasets<seq2seq4repair_space>satisfy<seq2seq4repair_space>ExtRef:<seq2seq4repair_space>LD<seq2seq4repair_space>Inst:<seq2seq4repair_space>" ) + ( extRef . getLdInst ( ) ) ) + ",<seq2seq4repair_space>Prefix:<seq2seq4repair_space>" ) + ( extRef . getPrefix ( ) ) ) + ",<seq2seq4repair_space>LN<seq2seq4repair_space>Class:<seq2seq4repair_space>" ) + ( extRef . getLnClass ( ) ) ) + ",<seq2seq4repair_space>LN<seq2seq4repair_space>Inst:<seq2seq4repair_space>" ) + ( extRef . getLnInst ( ) ) ) + ",<seq2seq4repair_space>DO<seq2seq4repair_space>name:<seq2seq4repair_space>" ) + ( extRef . getDoName ( ) ) ) + ",<seq2seq4repair_space>DA<seq2seq4repair_space>name:<seq2seq4repair_space>" ) + ( extRef . getDaName ( ) ) ) ) ; } } Iterator < EObject > fcdas = result . iterator ( ) ; ArrayList < TDataSet > datasets = new ArrayList < TDataSet > ( ) ; while ( fcdas . hasNext ( ) ) { TFCDA fcda = ( ( TFCDA ) ( fcdas . next ( ) ) ) ;

Fix:
error ( ( ( ( ( ( ( ( ( ( ( ( ( ( "no<seq2seq4repair_space>dataset<seq2seq4repair_space>satisfies<seq2seq4repair_space>ExtRef:<seq2seq4repair_space>IED:<seq2seq4repair_space>" + ( extRef . getIedName ( ) ) ) + ",<seq2seq4repair_space>LD<seq2seq4repair_space>Inst:<seq2seq4repair_space>" ) + ( extRef . getLdInst ( ) ) ) + ",<seq2seq4repair_space>Prefix:<seq2seq4repair_space>" ) + ( extRef . getPrefix ( ) ) ) + ",<seq2seq4repair_space>LN<seq2seq4repair_space>Class:<seq2seq4repair_space>" ) + ( extRef . getLnClass ( ) ) ) + ",<seq2seq4repair_space>LN<seq2seq4repair_space>Inst:<seq2seq4repair_space>" ) + ( extRef . getLnInst ( ) ) ) + ",<seq2seq4repair_space>DO<seq2seq4repair_space>name:<seq2seq4repair_space>" ) + ( extRef . getDoName ( ) ) ) + ",<seq2seq4repair_space>DA<seq2seq4repair_space>name:<seq2seq4repair_space>" ) + ( extRef . getDaName ( ) ) ) ) ;