docs: def build(self, builder):
          """Build XML by appending to builder"""
  
          params = dict(
              OID=self.oid,
              Name=self.name,
              Repeating=bool_to_yes_no(self.repeating),
              IsReferenceData=bool_to_yes_no(self.is_reference_data),
          )
  
          if self.sas_dataset_name is not None:
              params["SASDatasetName"] = self.sas_dataset_name
  
          if self.domain is not None:
              params["Domain"] = self.domain
  
          if self.origin is not None:
              params["Origin"] = self.origin
  
          if self.role is not None:
              params["Role"] = self.role
  
          if self.purpose is not None:
              params["Purpose"] = self.purpose
  
          if self.comment is not None:
              params["Comment"] = self.comment
  
          builder.start("ItemGroupDef", params)
  
          for itemref in self.item_refs:
              itemref.build(builder)
  
          # Extensions always listed AFTER core elements
          for labelref in self.label_refs:
              labelref.build(builder)
  
          for alias in self.aliases:
              alias.build(builder)
  
          builder.end("ItemGroupDef")