code: def build_pubnote(title, volume, page_start=None, page_end=None, artid=None):
      
      if title and volume and artid and artid != page_start:
          pubnote_format = u'{title},{volume},{artid}'
      elif title and volume and page_start and page_end:
          pubnote_format = u'{title},{volume},{page_start}-{page_end}'
      elif title and volume and page_start:
          pubnote_format = u'{title},{volume},{page_start}'
      elif title and volume:
          pubnote_format = u'{title},{volume}'
      else:
          return None
  
      return pubnote_format.format(
          title=title, volume=volume, page_start=page_start, page_end=page_end, artid=artid
      )
docs: Build pubnote string from parts (reverse of split_pubnote).