> ## Documentation Index
> Fetch the complete documentation index at: https://docs.azalt.co/llms.txt
> Use this file to discover all available pages before exploring further.

# DatasetItem

> Bir Dataset içindeki katsayıları ve metaveriyi tutan satırlar

DatasetItem’lar bir Dataset içindeki tekil satırlardır. Her item; bir anahtar (`name`), yıl (`year`) ve katsayıları içeren bir JSON (`data`) ile opsiyonel açıklama, bağlantı ve etiketler içerir.

## Veri Modeli (Gerçek)

Zorunlu alanlar:

* `datasetId`: ait olduğu Dataset
* `name`: item anahtarı (öneri: küçük harf, kebab/underscore)
* `year`: sayı
* `data`: katsayı/özellikleri içeren JSON nesnesi

Opsiyonel alanlar:

* `description`: metin
* `link`: kaynak URL
* `tags`: string\[] (arama/kategori)

Tekillik ve davranış:

* `(datasetId, name, year)` tekrarı aynı item kabul edilir
* İçe aktarma bu durumu kontrol eder ve satırları atlayabilir/raporlar

Örnek:

```json theme={null}
{
  "name": "natural-gas-commercial",
  "year": 2024,
  "data": { "kgCO2e": 53.02, "kgCO2": 52.91, "label": "Commercial NG" },
  "description": "Ticari doğal gaz faktörleri",
  "link": "https://example.com/source",
  "tags": ["natural-gas", "scope-1"]
}
```

## Hesaplamalarda Kullanım

Aktivite Tanımlarında `$datasets` yardımcısını kullanın:

```javascript theme={null}
// Belirli bir item’ın tüm verisi (yıl verilmezse en güncel yıl)
const item = await $datasets.getItem("epa-factors", "natural-gas-commercial", $year);

// Tek bir katsayı çekme
const ef = await $datasets.getCoefficient("epa-factors", "natural-gas-commercial", "kgCO2e", $year);

// Bir dataset’ten birden fazla item (isteğe bağlı yıl filtresiyle)
const items = await $datasets.getDataset("epa-factors", $year);

// Item adlarına göre sözlük
const all = await $datasets.getCoefficients("epa-factors", $year);
```

Notlar:

* `getItem/getCoefficient` eşleşme yoksa `null` döner
* `getDataset/getCoefficients` eşleşme yoksa boş koleksiyon döner

## CSV İçe/Dışa Aktarma

İçe aktarma `Özelleştirme → Dataset’ler` ve dataset detay sayfasından yapılabilir. Her satırda mevcut bir `datasetId` verebilir ya da `datasetName` ile (yoksa) kurum altında yeni dataset oluşturulmasını sağlayabilirsiniz.

Her satır için gerekli sütunlar:

* `name` (item anahtarı)
* `year` (sayı)
* `datasetId` veya `datasetName`

Opsiyonel sütunlar:

* `description`, `link`, `tags`
* `data_*` ile başlayan tüm sütunlar `data` altına yazılır (örn. `data_kgCO2e` → `{ kgCO2e: <değer> }`).

Minimal CSV örneği:

```csv theme={null}
name,year,datasetName,data_kgCO2e,data_kgCO2,tags,description
natural-gas-commercial,2024,epa-factors,53.02,52.91,"natural-gas,scope-1",Ticari NG
```

Dışa aktarma `data_*` sütunları içeren benzer yapıyı üretir. Genel dataset dışa aktarma yalnızca ADMIN tarafından yapılabilir.

## Arama ve Büyük Dataset’ler

* Dataset detay sayfası `name`, `description`, `tags` ve `data` metni üzerinde arama yapar
* Büyük dataset’lerde sayfalama + sunucu tarafı arama ile performans korunur

## Pano Eşlemeleri

Bir gösterge dataset değerlerini kullanıyorsa, widget’lar eşlemeleri `datasetId::itemName::field` şeklinde saklar. Sistem, yıl/alan eksikleri gibi durumları tespit edip raporlar.

## En İyi Uygulamalar

* Kavramsal olarak tek bir item için kararlı bir `name` seçin (örn. `us_grid_avg`, `natural-gas-commercial`)
* Sayısal değerleri sayı olarak tutun (CSV düz sayıları dönüştürür)
* Selektörlerde daha güzel görünen metin için `data` içine kısa bir `label` ekleyin
* Aramayı kolaylaştırmak için anlamlı `tags` ekleyin
* Aynı dataset içinde `(name, year)` tekrarından kaçının

```
```
