Program: 23068
Project: 23068
Buggy source:
protected void composeStructureDefinition(Complex parent,String parentType,String name,StructureDefinition element,int index){
  if (element == null)   return;
  Complex t;
  if (Utilities.noString(parentType))   t=parent;
 else {
    t=parent.predicate("String_Node_Str" + parentType + '.'+ name);
  }
  composeDomainResource(t,"String_Node_Str",name,element,index);
  if (element.hasUrlElement())   composeUri(t,"String_Node_Str","String_Node_Str",element.getUrlElement(),-1);
  for (int i=0; i < element.getIdentifier().size(); i++)   composeIdentifier(t,"String_Node_Str","String_Node_Str",element.getIdentifier().get(i),i);
  if (element.hasVersionElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getVersionElement(),-1);
  if (element.hasNameElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getNameElement(),-1);
  if (element.hasTitleElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getTitleElement(),-1);
  if (element.hasStatusElement())   composeEnum(t,"String_Node_Str","String_Node_Str",element.getStatusElement(),-1);
  if (element.hasExperimentalElement())   composeBoolean(t,"String_Node_Str","String_Node_Str",element.getExperimentalElement(),-1);
  if (element.hasDateElement())   composeDateTime(t,"String_Node_Str","String_Node_Str",element.getDateElement(),-1);
  if (element.hasPublisherElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getPublisherElement(),-1);
  for (int i=0; i < element.getContact().size(); i++)   composeContactDetail(t,"String_Node_Str","String_Node_Str",element.getContact().get(i),i);
  if (element.hasDescriptionElement())   composeMarkdown(t,"String_Node_Str","String_Node_Str",element.getDescriptionElement(),-1);
  for (int i=0; i < element.getUseContext().size(); i++)   composeUsageContext(t,"String_Node_Str","String_Node_Str",element.getUseContext().get(i),i);
  for (int i=0; i < element.getJurisdiction().size(); i++)   composeCodeableConcept(t,"String_Node_Str","String_Node_Str",element.getJurisdiction().get(i),i);
  if (element.hasPurposeElement())   composeMarkdown(t,"String_Node_Str","String_Node_Str",element.getPurposeElement(),-1);
  if (element.hasCopyrightElement())   composeMarkdown(t,"String_Node_Str","String_Node_Str",element.getCopyrightElement(),-1);
  for (int i=0; i < element.getKeyword().size(); i++)   composeCoding(t,"String_Node_Str","String_Node_Str",element.getKeyword().get(i),i);
  if (element.hasFhirVersionElement())   composeId(t,"String_Node_Str","String_Node_Str",element.getFhirVersionElement(),-1);
  for (int i=0; i < element.getMapping().size(); i++)   composeStructureDefinitionStructureDefinitionMappingComponent(t,"String_Node_Str","String_Node_Str",element.getMapping().get(i),i);
  if (element.hasKindElement())   composeEnum(t,"String_Node_Str","String_Node_Str",element.getKindElement(),-1);
  if (element.hasAbstractElement())   composeBoolean(t,"String_Node_Str","String_Node_Str",element.getAbstractElement(),-1);
  for (int i=0; i < element.getContext().size(); i++)   composeStructureDefinitionStructureDefinitionContextComponent(t,"String_Node_Str","String_Node_Str",element.getContext().get(i),i);
  for (int i=0; i < element.getContextInvariant().size(); i++)   composeString(t,"String_Node_Str","String_Node_Str",element.getContextInvariant().get(i),i);
  if (element.hasTypeElement())   composeCode(t,"String_Node_Str","String_Node_Str",element.getTypeElement(),-1);
  if (element.hasBaseDefinitionElement())   composeCanonical(t,"String_Node_Str","String_Node_Str",element.getBaseDefinitionElement(),-1);
  if (element.hasDerivationElement())   composeEnum(t,"String_Node_Str","String_Node_Str",element.getDerivationElement(),-1);
  if (element.hasSnapshot())   composeStructureDefinitionStructureDefinitionSnapshotComponent(t,"String_Node_Str","String_Node_Str",element.getSnapshot(),-1);
  if (element.hasDifferential())   composeStructureDefinitionStructureDefinitionDifferentialComponent(t,"String_Node_Str","String_Node_Str",element.getDifferential(),-1);
}

Fixed version (ground truth):
protected void composeStructureDefinition(Complex parent,String parentType,String name,StructureDefinition element,int index){
  if (element == null)   return;
  Complex t;
  if (Utilities.noString(parentType))   t=parent;
 else {
    t=parent.predicate("String_Node_Str" + parentType + '.'+ name);
  }
  composeDomainResource(t,"String_Node_Str",name,element,index);
  if (element.hasUrlElement())   composeUri(t,"String_Node_Str","String_Node_Str",element.getUrlElement(),-1);
  for (int i=0; i < element.getIdentifier().size(); i++)   composeIdentifier(t,"String_Node_Str","String_Node_Str",element.getIdentifier().get(i),i);
  if (element.hasVersionElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getVersionElement(),-1);
  if (element.hasNameElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getNameElement(),-1);
  if (element.hasTitleElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getTitleElement(),-1);
  if (element.hasStatusElement())   composeEnum(t,"String_Node_Str","String_Node_Str",element.getStatusElement(),-1);
  if (element.hasExperimentalElement())   composeBoolean(t,"String_Node_Str","String_Node_Str",element.getExperimentalElement(),-1);
  if (element.hasDateElement())   composeDateTime(t,"String_Node_Str","String_Node_Str",element.getDateElement(),-1);
  if (element.hasPublisherElement())   composeString(t,"String_Node_Str","String_Node_Str",element.getPublisherElement(),-1);
  for (int i=0; i < element.getContact().size(); i++)   composeContactDetail(t,"String_Node_Str","String_Node_Str",element.getContact().get(i),i);
  if (element.hasDescriptionElement())   composeMarkdown(t,"String_Node_Str","String_Node_Str",element.getDescriptionElement(),-1);
  for (int i=0; i < element.getUseContext().size(); i++)   composeUsageContext(t,"String_Node_Str","String_Node_Str",element.getUseContext().get(i),i);
  for (int i=0; i < element.getJurisdiction().size(); i++)   composeCodeableConcept(t,"String_Node_Str","String_Node_Str",element.getJurisdiction().get(i),i);
  if (element.hasPurposeElement())   composeMarkdown(t,"String_Node_Str","String_Node_Str",element.getPurposeElement(),-1);
  if (element.hasCopyrightElement())   composeMarkdown(t,"String_Node_Str","String_Node_Str",element.getCopyrightElement(),-1);
  for (int i=0; i < element.getKeyword().size(); i++)   composeCoding(t,"String_Node_Str","String_Node_Str",element.getKeyword().get(i),i);
  if (element.hasFhirVersionElement())   composeId(t,"String_Node_Str","String_Node_Str",element.getFhirVersionElement(),-1);
  for (int i=0; i < element.getMapping().size(); i++)   composeStructureDefinitionStructureDefinitionMappingComponent(t,"String_Node_Str","String_Node_Str",element.getMapping().get(i),i);
  if (element.hasKindElement())   composeEnum(t,"String_Node_Str","String_Node_Str",element.getKindElement(),-1);
  if (element.hasAbstractElement())   composeBoolean(t,"String_Node_Str","String_Node_Str",element.getAbstractElement(),-1);
  for (int i=0; i < element.getContext().size(); i++)   composeStructureDefinitionStructureDefinitionContextComponent(t,"String_Node_Str","String_Node_Str",element.getContext().get(i),i);
  for (int i=0; i < element.getContextInvariant().size(); i++)   composeString(t,"String_Node_Str","String_Node_Str",element.getContextInvariant().get(i),i);
  if (element.hasTypeElement())   composeUri(t,"String_Node_Str","String_Node_Str",element.getTypeElement(),-1);
  if (element.hasBaseDefinitionElement())   composeCanonical(t,"String_Node_Str","String_Node_Str",element.getBaseDefinitionElement(),-1);
  if (element.hasDerivationElement())   composeEnum(t,"String_Node_Str","String_Node_Str",element.getDerivationElement(),-1);
  if (element.hasSnapshot())   composeStructureDefinitionStructureDefinitionSnapshotComponent(t,"String_Node_Str","String_Node_Str",element.getSnapshot(),-1);
  if (element.hasDifferential())   composeStructureDefinitionStructureDefinitionDifferentialComponent(t,"String_Node_Str","String_Node_Str",element.getDifferential(),-1);
}