class WaveformStreamID(network_code=None, station_code=None, location_code=None, channel_code=None, resource_uri=None, seed_string=None)[source]

Bases: obspy.core.event.base.__WaveformStreamID

Reference to a stream description in an inventory.

This is mostly equivalent to the combination of networkCode, stationCode, locationCode, and channelCode. However, additional information, e. g., sampling rate, can be referenced by the resourceURI. It is recommended to use resourceURI as a flexible, abstract, and unique stream ID that allows to describe different processing levels, or resampled/filtered products of the same initial stream, without violating the intrinsic meaning of the legacy identifiers (network, station, channel, and location codes). However, for operation in the context of legacy systems, the classical identifier components are supported.

  • network_code (str) Network code.
  • station_code (str) Station code.
  • location_code (str, optional) Location code.
  • channel_code (str, optional) Channel code.
  • resource_uri (ResourceIdentifier, optional) Resource identifier for the waveform stream.
  • seed_string (str, optional) Provides an alternative initialization way by passing a SEED waveform string in the form network.station.location.channel, e.g. BW.FUR..EHZ, which will be used to populate the WaveformStreamID’s attributes. It will only be used if the network, station, location and channel keyword argument are ALL None.


>>> # Can be initialized with a SEED string or with individual components.
>>> stream_id = WaveformStreamID(network_code="BW", station_code="FUR",
...                              location_code="", channel_code="EHZ")
>>> print(stream_id) 
      network_code: 'BW'
      station_code: 'FUR'
      channel_code: 'EHZ'
     location_code: ''
>>> stream_id = WaveformStreamID(seed_string="BW.FUR..EHZ")
>>> print(stream_id) 
      network_code: 'BW'
      station_code: 'FUR'
      channel_code: 'EHZ'
     location_code: ''
>>> # Can also return the SEED string.
>>> print(stream_id.get_seed_string())


__abstractmethods__ frozenset() -> empty frozenset object
__doc__ str(object=’‘) -> str
__module__ str(object=’‘) -> str
__slots__ tuple() -> empty tuple
__weakref__ list of weak references to the object (if defined)
defaults dict() -> new empty dictionary
do_not_warn_on list() -> new empty list
item tuple() -> empty tuple
key str(object=’‘) -> str
readonly list() -> new empty list
warn_on_non_default_key bool(x) -> bool

Public Methods

getSEEDString DEPRECATED: ‘getSEEDString’ has been renamed to
pop If key is not found, d is returned if given, otherwise KeyError is raised.
popitem as a 2-tuple; but raise KeyError if D is empty.

Private Methods


Private methods are mainly for internal/developer use and their API might change without notice.

_pretty_str Return better readable string representation of AttribDict object.

Special Methods

__dir__ default dir() implementation
__eq__ Two instances are considered equal if all attributes and all lists
__format__ default object formatter
__getattr__ Py3k hasattr() expects an AttributeError no KeyError to be
__new__ Create and return a new object.
__reduce__ helper for pickle
__reduce_ex__ helper for pickle
__setattr__ Custom property implementation that works if the class is
__sizeof__ size of object in memory, in bytes
__str__ Fairly extensive in an attempt to cover several use cases.