docs: def _as_published_topic(self):
          """This stream as a PublishedTopic if it is published otherwise None
          """
  
          oop = self.get_operator_output_port()
          if not hasattr(oop, 'export'):
              return
  
          export = oop.export
          if export['type'] != 'properties':
              return
  
          seen_export_type = False
          topic = None
  
          for p in export['properties']:
              if p['type'] != 'rstring':
                  continue
              if p['name'] == '__spl_exportType':
                  if p['values'] == ['"topic"']:
                      seen_export_type = True
                  else:
                      return
              if p['name'] == '__spl_topic':
                  topic = p['values'][0]
  
          if seen_export_type and topic is not None:
              schema = None
              if hasattr(oop, 'tupleAttributes'):
                  ta_url = oop.tupleAttributes
                  ta_resp = self.rest_client.make_request(ta_url)
                  schema = streamsx.topology.schema.StreamSchema(ta_resp['splType'])
              return PublishedTopic(topic[1:-1], schema)
          return