anchor.diff:  		| dataUsingClause
   		| dataValueClause
   		| dataUsageClause
  +		| dataReceivedByClause
   		| dataOccursClause
   		| dataSignClause
   		| dataSynchronizedClause
  
positive.code: 	SP
  ;
  
  dataCommonOwnLocalClause :
  	COMMON | OWN | LOCAL
  ;
  
  dataTypeClause :
  	TYPE IS? (SHORT_DATE | LONG_DATE | NUMERIC_DATE | NUMERIC_TIME | LONG_TIME)
  ;
  
  dataUsingClause :
  	USING
  	(
  		CONVENTION OF? (cobolWord | dataName)
  		| LANGUAGE OF? (cobolWord | dataName)
  	)
  ;
  
  pictureCardinality :
  	LPARENCHAR integerLiteral RPARENCHAR
  ;
  
  dataExternalClause :
  	IS? EXTERNAL (BY literal)?
  ;
  
  dataGlobalClause :
  	IS? GLOBAL
  ;
  
  dataTypeDefClause :
  	IS? TYPEDEF
  ;
  
  dataThreadLocalClause :
  	IS? THREAD_LOCAL
  ;
  
  dataUsageClause :
  
negative.code: ;
  
  dataDescriptionEntryFormat2 :
  	LEVEL_NUMBER_66 dataName dataRenamesClause DOT_FS
  ;
  
  dataDescriptionEntryFormat3 :
  	LEVEL_NUMBER_88 conditionName dataValueClause DOT_FS
  ;
  
  dataAlignedClause :
  	ALIGNED
  ;
  
  dataBlankWhenZeroClause :
  	BLANK WHEN? (ZERO | ZEROS | ZEROES)
  ;
  
  dataCommonOwnLocalClause :
  	COMMON | OWN | LOCAL
  ;
  
  dataExternalClause :
  	IS? EXTERNAL (BY literal)?
  ;
  
  dataGlobalClause :
  	IS? GLOBAL
  ;
  
  dataIntegerStringClause :
  	INTEGER | STRING
  ;
  
  dataJustifiedClause :
  