The main problem with JSON is that it's not very concise, for easy use with
CLI tools, so you'll probably often have to provide it as a file. And
that's a bit clunky for a single key.

On Sat, Aug 15, 2026, 10:48 Marc P. <[email protected]> wrote:

> Yaml for canonical user facing spec with Json for some equivalent
> serialized form since they should serialize to the same keyspec?
>
> On Sat, Aug 15, 2026, 9:55 AM Dave Marion <[email protected]> wrote:
>
> >   JSON is probably the right approach, it already handles binary as a
> value
> > using Base64 encoding.
> >
> >   However, passing JSON on the command line is tricky with the quoting
> and
> > it might need to be on one line. I think the best approach here is for
> the
> > client tool to read the JSON from a file.
> >
> >   I asked Gemini to create a JSON schema (below) using Base64 encoding
> and
> > only requiring the row.
> >
> > {
> >   "$schema": "https://json-schema.org";,
> >   "title": "AccumuloKeyBase64RowRequired",
> >   "type": "object",
> >   "description": "Accumulo Key object with base64 binary fields where
> only
> > the row is required",
> >   "properties": {
> >     "row": {
> >       "type": "string",
> >       "contentEncoding": "base64",
> >       "description": "Base64 encoded row ID byte array"
> >     },
> >     "columnFamily": {
> >       "type": "string",
> >       "contentEncoding": "base64",
> >       "description": "Base64 encoded column family byte array"
> >     },
> >     "columnQualifier": {
> >       "type": "string",
> >       "contentEncoding": "base64",
> >       "description": "Base64 encoded column qualifier byte array"
> >     },
> >     "columnVisibility": {
> >       "type": "string",
> >       "description": "Plain ASCII string representing security
> expressions"
> >     },
> >     "timestamp": {
> >       "type": "integer",
> >       "minimum": 0,
> >       "description": "64-bit millisecond epoch version timestamp"
> >     }
> >   },
> >   "required": [
> >     "row"
> >   ]
> > }
> >
> >
> > On Fri, Aug 14, 2026 at 5:11 PM Christopher <[email protected]> wrote:
> >
> > > Accumulo Devs,
> > >
> > > In the context of my comment at
> > >
> >
> https://github.com/apache/accumulo/pull/5959#pullrequestreview-4941125333,
> > > I was wondering if anybody had any ideas for a standard KEYSPEC format
> > > to express an Accumulo entry key in a standard way for client tools.
> > > Is JSON the right approach? Or some standard delimiter with special
> > > characters to denote binary? I feel like there's a bunch of options
> > > here, but if we can formalize the spec, it would make feature
> > > decisions for CLI tools and parsing implementations easier.
> > >
> > > Thoughts?
> > >
> >
>

Reply via email to