{
  "resourceType": "StructureDefinition",
  "id": "TulipBulb",
  "url": "https://fake-acme.org/fhir/TulipCare/models/StructureDefinition/TulipBulb",
  "version": "0.1.0",
  "name": "TulipBulbLm",
  "title": "Tulip Bulb",
  "status": "draft",
  "fhirVersion": "4.0.1",
  "kind": "logical",
  "abstract": false,
  "type": "https://fake-acme.org/fhir/TulipCare/models/StructureDefinition/TulipBulb",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Base",
  "derivation": "specialization",
  "differential": {
    "element": [
      {
        "id": "TulipBulb",
        "path": "TulipBulb",
        "short": "Tulip bulb or bulb batch inventory record",
        "definition": "Represents an individual bulb or a counted batch of bulbs in the farmer's physical inventory, linked to a TulipVariety and tracking provenance, quantity, location, and lifecycle status.",
        "min": 0,
        "max": "*"
      },
      {
        "id": "TulipBulb.bulbId",
        "path": "TulipBulb.bulbId",
        "short": "Unique identifier for this bulb or bulb batch",
        "definition": "Farmer-assigned or generated unique identifier for this bulb or bulb batch. System: https://fake-acme.org/fhir/TulipCare/bulb-id.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "TulipBulb.varietyReference",
        "path": "TulipBulb.varietyReference",
        "short": "Reference to the associated TulipVariety",
        "definition": "Reference to the TulipVariety record to which this bulb batch belongs. Must resolve to an existing TulipVariety record.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "https://fake-acme.org/fhir/TulipCare/models/StructureDefinition/TulipVariety"
          }
        ]
      },
      {
        "id": "TulipBulb.quantity",
        "path": "TulipBulb.quantity",
        "short": "Number of bulbs in this batch",
        "definition": "Number of bulbs in this batch. Minimum value is 1; a value of 1 represents an individual bulb.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "integer"
          }
        ]
      },
      {
        "id": "TulipBulb.supplier",
        "path": "TulipBulb.supplier",
        "short": "Name or identifier of the bulb supplier",
        "definition": "Free-text name or identifier of the bulb supplier or vendor for v1.",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "TulipBulb.acquisitionDate",
        "path": "TulipBulb.acquisitionDate",
        "short": "Date the bulbs were received or acquired",
        "definition": "Date on which the bulbs were received or acquired from the supplier.",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "date"
          }
        ]
      },
      {
        "id": "TulipBulb.plantingLocation",
        "path": "TulipBulb.plantingLocation",
        "short": "Field or bed identifier where bulbs are/will be planted",
        "definition": "Simple string identifier for the field or bed location (e.g., Field A – Bed 3). Structured location model is out of scope for v1.",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "TulipBulb.plantingDate",
        "path": "TulipBulb.plantingDate",
        "short": "Date the bulbs were planted in the ground",
        "definition": "Date on which the bulbs were planted. Must not precede acquisitionDate.",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "date"
          }
        ]
      },
      {
        "id": "TulipBulb.status",
        "path": "TulipBulb.status",
        "short": "Current lifecycle status of the bulb batch",
        "definition": "Current lifecycle status of the bulb batch. Allowed transitions: In Storage → Planted → Bloomed → Harvested or Discarded.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "code"
          }
        ],
        "binding": {
          "strength": "required",
          "valueSet": "https://fake-acme.org/fhir/TulipCare/models/ValueSet/BulbStatus-lm"
        }
      },
      {
        "id": "TulipBulb.notes",
        "path": "TulipBulb.notes",
        "short": "Free-text remarks about this bulb batch",
        "definition": "Optional free-text remarks or observations about this bulb batch.",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "TulipBulb.recordedDate",
        "path": "TulipBulb.recordedDate",
        "short": "Date this bulb record was created in the system",
        "definition": "Server-populated date on which this bulb record was first created in the system.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "date"
          }
        ]
      },
      {
        "id": "TulipBulb.lastUpdated",
        "path": "TulipBulb.lastUpdated",
        "short": "Date/time the record was last modified",
        "definition": "Server-maintained date and time at which this bulb record was last modified.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "dateTime"
          }
        ]
      }
    ]
  }
}