BRC-233 Transactions

Subject BEEF

Subject BEEF is Atomic BEEF in shape (a prefix and a subject transaction id in front of a BRC-96 BEEF V2) without BRC-95's restriction to the subject's ancestors. The subject names which transaction the bag is about. Anything else in the bag is allowed: a profile decides what must be present.

David Case (david.case@shruggr.cloud)

How it connects

Relationships

Authoritative content mirror

Full upstream text

View source ↗
Rendered from transactions/0233.md at the indexed upstream commit

Abstract

Subject BEEF is Atomic BEEF in shape (a prefix and a subject transaction id in front of a BRC-96 BEEF V2) without BRC-95's restriction to the subject's ancestors. The subject names which transaction the bag is about. Anything else in the bag is allowed: a profile decides what must be present.

Specification

Atomic BEEF (BRC-95) Subject BEEF (this BRC)
Prefix (4 bytes) 0x01010101 0x5709beef
Subject TXID (32 bytes) TXID (32 bytes)
Body BEEF BEEF V2 (BRC-96)
Graph Ancestors of the subject transaction Any transactions
Fail if Subject tx missing, or unrelated txs present Subject tx missing
5709beef                                                 // prefix
2222222222222222222222222222222222222222222222222222222222222222 // subject TXID
0200beef                                                 // BEEF V2 (example)
...

Notes (informative)

  • A reader MUST NOT apply BRC-95's ancestor rule or strip transaction bodies from a Subject BEEF. Re-encoding it as Atomic BEEF may drop transactions a profile requires.
  • Completeness is profile-defined (e.g. BRC-176). Subject BEEF alone says only which transaction is the subject.
  • The distinct prefix lets a strict Atomic BEEF reader fail cleanly instead of rejecting a valid bag as malformed Atomic BEEF.
  • For a subject output rather than a transaction, use Outpoint BEEF.