What is Protobuf Schema?

A proto3 message definition with numbered fields.

Who uses it

gRPC services and anything using Protocol Buffers.

Writing Protobuf Schema

Field numbers are assigned in column order starting at one. Types are inferred from the values.

What it can hold

Protocol Buffers is a data interchange format. Protocol Buffers cannot be read without its .proto definition, because the wire format alone does not name the fields. A machine can read the table back out of it without guessing, which is what makes it safe to convert into and out of.

It keeps

It cannot express

What it looks like

Example Protobuf Schema
syntax = "proto3";

message staff {
  int64 id = 1;
  string name = 2;
  string role = 3;
  string started = 4;
  double hours = 5;
}

Questions

How do I open Protobuf Schema files?

Protobuf Schema is written by Tablizer rather than read by it. Open the file in whichever tool the format belongs to.

Is Protobuf Schema a good format for sharing data?

It depends who is receiving it. gRPC services and anything using Protocol Buffers. If the recipient is outside that group, a plain CSV travels further than anything else.

Convert something else to Protobuf Schema