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? > > > > > >
