mtgjson / mtgjson-website

MTGJSON Documentation Front-End Application built with VitePress
https://mtgjson.com
MIT License
36 stars 24 forks source link

Type of sourceProducts property in Card (Deck) data model #642

Open grim7reaper opened 4 weeks ago

grim7reaper commented 4 weeks ago

Location of update needed

Card (Deck)

What does the documentation look like?

A list of associated Sealed Product uuid properties where this card can be found in.
- Type: `string[]`
- Introduced: `v5.2.2`

What should the documentation look like?

Not 100% sure. On one hand it's clearly not a list of Sealed Product uuid, it looks like more a Source Products object. On the other hand, properties of Source Products are non-optional but we sometimes have only one here. So maybe we should update the Source Products documentation as well?

Example with the card Tetravus from AzaarLichlord_PAST.json, where foil is missing:

{
  "artist": "Mark Tedin",
  "artistIds": ["9ee9a9cc-c09e-486f-918b-69f80cbc4188"],
  "availability": ["paper"],
  "boosterTypes": ["default"],
  "borderColor": "black",
  "colorIdentity": [],
  "colors": [],
  "convertedManaCost": 6.0,
  "count": 3,
  "edhrecRank": 19723,
  "edhrecSaltiness": 0.45,
  "finishes": ["nonfoil"],
  "foreignData": [],
  "frameVersion": "1993",
  "hasFoil": false,
  "hasNonFoil": true,
  "identifiers": {
    "cardKingdomId": "14070",
    "cardsphereId": "5087",
    "mcmId": "6908",
    "mcmMetaId": "5904",
    "mtgjsonV4Id": "d27b4d2e-d801-5c80-a127-e1d7aafe0adb",
    "multiverseId": "1027",
    "scryfallCardBackId": "0aeebaf5-8c7d-4636-9e82-8c27447861f7",
    "scryfallId": "23eb19f9-2e8f-4bf0-9bf8-868e6da70e2d",
    "scryfallIllustrationId": "46f9d0c3-7468-4ecf-b86e-efe79a067960",
    "scryfallOracleId": "85255c26-4e74-4cf0-91a6-78ddba5abdc6",
    "tcgplayerProductId": "3327"
  },
  "isFoil": false,
  "keywords": ["Flying"],
  "language": "English",
  "layout": "normal",
  "legalities": {
    "commander": "Legal",
    "duel": "Legal",
    "legacy": "Legal",
    "oathbreaker": "Legal",
    "oldschool": "Legal",
    "paupercommander": "Restricted",
    "penny": "Legal",
    "predh": "Legal",
    "premodern": "Legal",
    "vintage": "Legal"
  },
  "manaCost": "{6}",
  "manaValue": 6.0,
  "name": "Tetravus",
  "number": "71",
  "originalText": "Flying\nTetravus gets three +1/+1 counters when cast. During your upkeep, you may move each of these counters on or off Tetravus.  Counters moved off of Tetravus become independent 1/1 flying artifact creatures.  If such a creature dies, the counter is removed from play.  Such creatures may not have enchantments cast on them, and they do not share any enchantments on Tetravus.",
  "originalType": "Artifact Creature",
  "power": "1",
  "printings": ["4BB", "4ED", "ATQ", "ME4", "REN", "RIN"],
  "purchaseUrls": {
    "cardKingdom": "https://mtgjson.com/links/399352af19343781",
    "cardmarket": "https://mtgjson.com/links/e67891e1789deba7",
    "tcgplayer": "https://mtgjson.com/links/55f438d136853b5c"
  },
  "rarity": "rare",
  "rulings": [
    {
      "date": "2004-10-04",
      "text": "Any +1/+1 counter which is on this card can be turned into a Tetravite token. It does not care where the +1/+1 counter came from."
    },
    {
      "date": "2004-10-04",
      "text": "If the Tetravus is destroyed when the Tetravites are off the card, they are not destroyed, they are just orphaned."
    },
    {
      "date": "2004-10-04",
      "text": "Only Tetravites from this specific Tetravus may be used for the ability. Ones from a different Tetravus can't."
    },
    {
      "date": "2008-08-01",
      "text": "This card now has two upkeep-triggered abilities. Its controller chooses the order they are put on the stack, and thus the order in which they resolve each upkeep."
    }
  ],
  "setCode": "ATQ",
  "sourceProducts": {
    "nonfoil": ["39d06ba3-a851-5539-8fdc-146e92ba5177"]
  },
  "subtypes": ["Construct"],
  "supertypes": [],
  "text": "Flying\nTetravus enters with three +1/+1 counters on it.\nAt the beginning of your upkeep, you may remove any number of +1/+1 counters from Tetravus. If you do, create that many 1/1 colorless Tetravite artifact creature tokens. They each have flying and \"This creature can't be enchanted.\"\nAt the beginning of your upkeep, you may exile any number of tokens created with Tetravus. If you do, put that many +1/+1 counters on Tetravus.",
  "toughness": "1",
  "type": "Artifact Creature — Construct",
  "types": ["Artifact", "Creature"],
  "uuid": "23d749b2-d958-51e5-a251-9ae96ae09bbf"
}

Additional context

I'm using MTGJSON 5.2.2+20240814