docs: def as_svg_data_uri(matrix, version, scale=1, border=None, color='#000',
                      background=None, xmldecl=False, svgns=True, title=None,
                      desc=None, svgid=None, svgclass='segno',
                      lineclass='qrline', omitsize=False, unit='',
                      encoding='utf-8', svgversion=None, nl=False,
                      encode_minimal=False, omit_charset=False):
      """\
      Converts the matrix to a SVG data URI.
  
      The XML declaration is omitted by default (set ``xmldecl`` to ``True``
      to enable it), further the newline is omitted by default (set ``nl`` to
      ``True`` to enable it).
  
      Aside from the missing ``out`` parameter and the different ``xmldecl``
      and ``nl`` default values and the additional parameter ``encode_minimal``
      and ``omit_charset`` this function uses the same parameters as the
      usual SVG serializer.
  
      :param bool encode_minimal: Indicates if the resulting data URI should
                      use minimal percent encoding (disabled by default).
      :param bool omit_charset: Indicates if the ``;charset=...`` should be omitted
                      (disabled by default)
      :rtype: str
      """
      encode = partial(quote, safe=b"") if not encode_minimal else partial(quote, safe=b" :/='")
      buff = io.BytesIO()
      write_svg(matrix, version, buff, scale=scale, color=color, background=background,
                border=border, xmldecl=xmldecl, svgns=svgns, title=title,
                desc=desc, svgclass=svgclass, lineclass=lineclass,
                omitsize=omitsize, encoding=encoding, svgid=svgid, unit=unit,
                svgversion=svgversion, nl=nl)
      return 'data:image/svg+xml{0},{1}' \
                  .format(';charset=' + encoding if not omit_charset else '',
                          # Replace " quotes with ' and URL encode the result
                          # See also https://codepen.io/tigt/post/optimizing-svgs-in-data-uris
                          encode(_replace_quotes(buff.getvalue())))