Belgeler
/ Parşömen dosyası başvurusu
Parşömen dosyası başvurusu
Bir parşömen dosyası tek bir JSON nesnesidir: parşömenin ayrıntıları, fikirleriyle bölümleri ve isteğe bağlı çeviriler. Bu sayfa, içe aktarmanın okuduğu her nesneyi ve alanı açıklar.
İndirmeler
- Örnek dosya: yaygın alanların tümünü kullanan, arayüzün 15 dilinin hepsinde tam sürümleri olan uydurma bir parşömen.
- JSON şeması: aynı kurallar makinenin okuyabileceği biçimde (JSON Schema 2020-12); editörler, betikler ve yapay zekâ ajanları için. Sınırları, içe aktarmanın çalıştırdığı kodun kendisinden gelir.
Yapı
Scroll
├── language, title, authors, description, tags,
│ sourceUrl, originalYear, originalPeriod
├── summaries: Chapter[]
│ └── ideas: Idea[]
│ └── examples: string[]
└── translations: { language: Translation }
└── summaries: TranslatedChapter[]
└── ideas: TranslatedIdea[]
Parşömen (Scroll)
Kök nesne. Şemada diğer nesnelerin adı Chapter (bölüm), Idea (fikir), Translation (çeviri), TranslatedChapter ve TranslatedIdea'dır.
| Alan | Tür | Zorunlu | Kurallar | Açıklama |
|---|
language | string | evet | tr veya pt-BR gibi bir dil kodu | Özgün sürümün dili. Her dil olur. Parşömen değiştirildiğinde değişmez. |
title | string | hayır | En fazla 255 karakter | Parşömenin başlığı. Yoksa "Untitled" olur. |
authors | string[] | hayır | Tüm adlar birlikte en fazla 255 karakter | Kaynağı yapanlar, sırayla: yazarlar, sunucular veya konuşmacılar. Tek bir metin de kabul edilir. Ad yoksa "Unknown" gösterilir. |
description | string | hayır | En fazla 600 karakter | Okuyucunun ne öğreneceğini anlatan iki üç cümle. |
tags | string[] | hayır | En fazla 5, her biri 1 ile 30 karakter arası, # ve virgül olmadan | Bu dilde kısa konular. Yalnızca büyük-küçük harf, aksan veya genişlikle ayrılan etiketler tek sayılır. Alan yoksa kayıtlı etiketler korunur; boş liste onları siler. |
sourceUrl | string | hayır | http veya https adresi, en fazla 2000 karakter | Özgün esere bağlantı. |
originalYear | integer | hayır | -3000 ile bu yıl arası, 0 değil | Özgün eserin çıktığı yıl. Negatif yıllar MÖ'dür. |
originalPeriod | string | hayır | En fazla 80 karakter | Kesin yılı olmayan eserler için ne zaman çıktığı, örneğin "MÖ 5. yüzyıl". |
summaries | Chapter[] | evet | En az bir fikir; toplam en fazla 500 fikir | Okuma sırasına göre bölümler. |
translations | object | hayır | Anahtarlar language dışındaki dil kodlarıdır | Başka dillerdeki tam sürümler. Her değer bir Translation'dır. |
Bölüm (Chapter)
| Alan | Tür | Zorunlu | Kurallar | Açıklama |
|---|
title | string | hayır | En fazla 200 bayt | Bölümün başlığı. Yoksa "Chapter N" olur. Sınır baytları sayar; bu yüzden Latin olmayan alfabelerde daha az karakter sığar. |
ideas | Idea[] | hayır | | Bölümün fikirleri, okuma sırasıyla. |
Fikir (Idea)
| Alan | Tür | Zorunlu | Kurallar | Açıklama |
|---|
text | string | evet | En fazla 400 karakter | Fikrin kendisi: kendi kartında anlaşılan tam bir düşünce. Metni boş fikir atlanır. |
tier | string | hayır | important, good veya common | Fikrin ne kadar merkezi olduğu. Önemli fikirlerin kartta kendine özgü bir görünümü vardır. Değer yoksa veya başka bir değerse common sayılır. |
examples | string[] | hayır | En fazla 20, her biri en fazla 400 karakter | Yana kaydırınca görünür. Boş ve metin olmayan girdiler atılır. |
Çeviri (Translation)
translations içindeki her girdi, parşömenin o dildeki tam sürümüdür. Özgün sürümle aynı bölümleri, fikirleri ve örnekleri aynı sırada ve sayıda içermelidir.
| Alan | Tür | Zorunlu | Kurallar | Açıklama |
|---|
title | string | evet | Boş değil, en fazla 255 karakter | Bu dildeki başlık. |
authors | string[] | evet | Boş değil | Yapanların adları, bu dilde yazıldığı biçimiyle. |
description | string | hayır | Özgündeki gibi | Bu dildeki açıklama. |
tags | string[] | hayır | Özgündeki gibi | Bu dilin okuyucuları için etiketler. Özgündekileri tekrarlamaları gerekmez. |
originalPeriod | string | hayır | Özgündeki gibi | Bu dildeki dönem; yoksa özgündeki gösterilir. |
summaries | TranslatedChapter[] | evet | Özgündekiyle aynı sayıda | Bu dildeki bölümler. |
Bir TranslatedChapter, boş olmayan bir title ve özgün bölümdeki kadar fikir içeren ideas taşır. Bir TranslatedIdea, boş olmayan bir text ve özgün fikirdeki kadar girdisi olan, hiçbiri boş olmayan examples taşır. Çevrilmiş fikirlerde tier yazılmaz: özgünden gelir ve farklı bir değer reddedilir.
İçe aktarma değerleri nasıl okur
- Metnin iki ucundaki boşluklar kırpılır ve uzunluklar karakterleri göründükleri gibi sayar.
- Boş bir isteğe bağlı alan yokmuş gibi sayılır.
- Burada açıklanmayan alanlar yok sayılır.
- Okuyucular kendi dillerindeki sürümü, o yoksa özgün sürümü görür.
Örnek
{
"language": "en",
"title": "Small steps",
"authors": ["Ada Example"],
"description": "How small, repeated actions shape what you notice and do.",
"tags": ["habits", "attention"],
"sourceUrl": "https://example.org/small-steps",
"originalYear": 1841,
"summaries": [
{
"title": "Starting small",
"ideas": [
{
"text": "Make the first step so small that you can take it on a bad day.",
"tier": "important",
"examples": ["Read one page every evening."]
},
{
"text": "You notice more of what you have decided to look for.",
"tier": "common",
"examples": []
}
]
}
],
"translations": {
"de": {
"title": "Kleine Schritte",
"authors": ["Ada Beispiel"],
"description": "Wie kleine, wiederholte Handlungen prägen, was wir bemerken und tun.",
"tags": ["gewohnheiten", "aufmerksamkeit"],
"summaries": [
{
"title": "Klein anfangen",
"ideas": [
{
"text": "Mach den ersten Schritt so klein, dass er dir auch an einem schlechten Tag gelingt.",
"examples": ["Lies jeden Abend eine Seite."]
},
{
"text": "Du bemerkst mehr von dem, wonach du zu suchen beschlossen hast.",
"examples": []
}
]
}
]
}
}
}
Sınırlar
| Ne | Sınır |
|---|
| Fikir veya örnek | 400 karakter |
| Parşömen başına fikir | 500 |
| Fikir başına örnek | 20 |
| Başlık, yazarlar | 255 karakter |
| Bölüm başlığı | 200 bayt |
| Açıklama | 600 karakter |
| Etiketler | Dil başına 5, her biri 30 karakter |
| Bir dilin içeriği | 1 MB |
| Yüklenen dosya | 8 MB |
| Sahip olunan parşömen | 200 |
Sık görülen içe aktarma hataları
- Dosya geçerli JSON değil. Asistandan "yalnızca geçerli JSON" isteyin ya da eksik bir virgül veya tırnak arayın. JSON nesnesinden önceki veya sonraki her metni silin.
- Dil eksik.
tr gibi bir kodla "language" ekleyin. - Bir fikir veya örnek çok uzun. Mesaj dili, bölümü, fikri ve örneği belirtir; o metni kısaltın.
- Bir çeviri uyuşmuyor. Her sürümde aynı sayıda bölüm, fikir ve örnek aynı sırada olmalıdır.
- Çok fazla fikir ya da çok büyük dosya. Kaynağı iki parşömene bölün.
- Zaten en fazla parşömene sahipsiniz. Artık gerekmeyen birini değiştirin; bkz. Düzenle, değiştir ve paylaş.