AdCOM 1.0 JSON Schema Unofficial

Unofficial · Not an IAB Tech Lab artifact

AdCOM 1.0's code lists, generated as JSON Schema

An unofficial registry of the code lists of AdCOM 1.0, one JSON Schema vocabulary per list, generated from the specification text by Postindustria, an IAB Tech Lab member. The specification remains the reference: where this site and the text differ, the text wins.

Open the type mapWho cites each listHow it's builtRead the decisionsGet the schema files

What the registry holds

AdCOM keeps the code lists that OpenRTB and other specifications cite, such as the device types and the API frameworks. Here each list with codes is one vocabulary, with each code's label from its row, so a specification that cites a list can take its codes from one place.

42lists as vocabulariesOf the 44 lists the text writes, 42 have codes. List: DOOH Venue Types (deprecated) and List: Placement Subtypes - Video hold a deprecation note and no codes, so they become no vocabulary.
287codes, each with its label15 lists also take a vendor's code from 500 up, as their 500+ rows reserve, and List: Start Delay Modes takes a mid-roll's delay in seconds.
18recorded decisions18 gaps, where the text leaves a point open, and no proposal: we propose no change to what the text settles, so the site has no variant switch.

The registry page lists each one with the specifications on this site that cite it. Each decision says what we ask AdCOM's owners to state, and each has its own page.

How other artifacts compare

Other artifacts define AdCOM's lists as enums of their own. A generated report compares each list, code by code, with each artifact's enum: it reports where each enum departs from its list, and it can't fix it.

Read the enum drift report, list by list, with a link to each enum at the commit it was read at.

What it leaves for later

AdCOM also defines 46 objects, such as Ad and Device, with 411 attribute rows. The pipeline extracts every one of those rows, so a decision can quote them, but it doesn't map the objects yet (D-003): the schemas hold the lists alone. The records on the objects' known inconsistencies, such as how the protocol buffer definitions type a timestamp or a flag, quote the rows they rest on already.

How to read a vocabulary

Each list is type: integer and a oneOf of one titled const branch per code, as List: Device Types gives 3 the title "Connected TV". A list with a 500+ row is open: one more branch takes a vendor's code of 500 or more. The kernel holds the 2 types the lists need, MediaOffset and VendorCode.

Inputs

Specification: InteractiveAdvertisingBureau/AdCOM, AdCOM v1.0 FINAL.md.

  • main: the text on AdCOM's main branch at 26c59ba, the default.
  • Tag AdCOM1.0-202607: the text at d67a6a8.

The two inputs have the same lists, code for code; they differ only in the Content object's table, which the tag still writes with the attribute names that main reverted (D-016). The type map's input switch shows either. AdCOM calls every revision since 2018 "1.0", so every release of these schemas names the commit it rests on.