opengeospatial / opengeospatial/ogcapi-processes

Inline binary input: always encoded base-64 ?

Open
#587 6 comments 0 reactions 1 assignee View on GitHub

@pvretano is already working on this.

Since May 27, 2026.

Dominant language
AsciiDoc
Stars
63
Forks
46
Avg merge
2d 1h
Merged PRs (30d)
8

Description

I am reading the current Draft version 2.0 of the specification.

In the Abstract:
The requirements specified in the OGC API — Processes Standard build on the OGC Web Processing Service (WPS) 2.0 Standard and specify a processing interface to communicate over a RESTful protocol using JSON encodings.

Then the input is expected to be passed using JSON encoding.

Before Listing 16:
In some cases, for example to pass through firewalls, binary input values need to be encoded in-line in an execute request as a string.

From the above I do infer that there are cases where binary input values don't need to be encoded in-line.
I wonder if it is correct.

From requirement 24:
The service SHALL support binary values encoded as base64-encoded strings.

However it says nothing about possibly supporting alternative encoding for inline binary input.
And I find no way the client can know of alternative accepted encoding when "contentEncoding": "binary" (e.g. Example 4).

Personally I understand there should not be alternatives to encoding base64 the in-line values defined as "type": "string", "contentEncoding": "binary".
Differently the client should be able to know about it.

I expect the specification "type": "string", "contentEncoding": "binary" is applicable only where values are passed by reference,
and it should apply to the referenced resource (e.g. a binary "image/tiff" file pointed by an URL),
but I find it hard to find such an information.
Even more: I would expect the content of a reference URL for a "binary" value passed as reference is not encoded (or SHALL NOT be encoded).

However, strictly reading requirement 26 - B, it would result in expecting the content of a binary value specified as a reference to be encoded base64.
Should be the binary value an exception?

Could you please help?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.