Ir al contenido
nectar Documentación

Documentación / Referencia del archivo de pergamino

Referencia del archivo de pergamino

Un archivo de pergamino es un objeto JSON: los detalles del pergamino, sus capítulos con ideas y traducciones opcionales. Esta página describe cada objeto y cada campo que lee el importador.

Descargas

  • Archivo de ejemplo: un pergamino inventado que usa todos los campos habituales, con versiones completas en los 15 idiomas de la interfaz.
  • Esquema JSON: las mismas reglas en formato legible por máquinas (JSON Schema 2020-12), para editores, scripts y agentes de IA. Sus límites salen del mismo código que ejecuta el importador.

Estructura

Scroll
├── language, title, authors, description, tags,
│   sourceUrl, originalYear, originalPeriod
├── summaries: Chapter[]
│   └── ideas: Idea[]
│       └── examples: string[]
└── translations: { language: Translation }
    └── summaries: TranslatedChapter[]
        └── ideas: TranslatedIdea[]

Pergamino (Scroll)

El objeto raíz. En el esquema, los demás objetos se llaman Chapter (capítulo), Idea (idea), Translation (traducción), TranslatedChapter y TranslatedIdea.

CampoTipoObligatorioReglasDescripción
languagestringsíUn código de idioma como es o pt-BREl idioma de la versión original. Sirve cualquier idioma. No cambia cuando se sustituye el pergamino.
titlestringnoHasta 255 caracteresEl título del pergamino. Sin él, se llama "Untitled".
authorsstring[]noTodos los nombres juntos, hasta 255 caracteresLos creadores de la fuente, en orden: autores, presentadores o ponentes. También se acepta un solo string. Sin nombres aparece "Unknown".
descriptionstringnoHasta 600 caracteresDos o tres frases sobre lo que se aprende.
tagsstring[]noHasta 5, cada una de 1 a 30 caracteres, sin # ni comasTemas breves en este idioma. Las etiquetas que solo difieren en mayúsculas, tildes o ancho cuentan como una. Si falta el campo, se conservan las etiquetas guardadas; una lista vacía las borra.
sourceUrlstringnoUna URL http o https, hasta 2000 caracteresUn enlace al original.
originalYearintegernoDe -3000 al año actual, distinto de 0El año en que apareció el original. Los años negativos son a. C.
originalPeriodstringnoHasta 80 caracteresCuándo apareció el original, para obras sin año exacto, como "siglo V a. C.".
summariesChapter[]síAl menos una idea; hasta 500 ideas en totalLos capítulos, en orden de lectura.
translationsobjectnoLas claves son códigos de idioma distintos de languageVersiones completas en otros idiomas. Cada valor es una Translation.

Capítulo (Chapter)

CampoTipoObligatorioReglasDescripción
titlestringnoHasta 200 bytesEl título del capítulo. Sin él pasa a ser "Chapter N". El límite cuenta bytes, así que en alfabetos no latinos caben menos caracteres.
ideasIdea[]noLas ideas del capítulo, en orden de lectura.

Idea (Idea)

CampoTipoObligatorioReglasDescripción
textstringsíHasta 400 caracteresLa idea: un pensamiento completo que se entiende en su propia tarjeta. Una idea con texto vacío se omite.
tierstringnoimportant, good o commonLo central que es la idea. Las ideas importantes tienen su propio aspecto en la tarjeta. Si falta o tiene otro valor, cuenta como common.
examplesstring[]noHasta 20, cada uno de hasta 400 caracteresAparecen al deslizar hacia un lado. Las entradas vacías o que no son texto se descartan.

Traducción (Translation)

Cada entrada de translations es una versión completa del pergamino en ese idioma. Debe tener los mismos capítulos, ideas y ejemplos que el original, en el mismo orden y número.

CampoTipoObligatorioReglasDescripción
titlestringsíNo vacío, hasta 255 caracteresEl título en este idioma.
authorsstring[]síNo vacíoLos nombres de los creadores tal como se escriben en este idioma.
descriptionstringnoComo en el originalLa descripción en este idioma.
tagsstring[]noComo en el originalEtiquetas para quienes leen en este idioma. No tienen por qué copiar las del original.
originalPeriodstringnoComo en el originalEl período en este idioma; si falta, se muestra el del original.
summariesTranslatedChapter[]síEl mismo número que el originalLos capítulos en este idioma.

Un TranslatedChapter tiene un title no vacío e ideas con tantas ideas como el capítulo original. Una TranslatedIdea tiene un text no vacío y examples con tantas entradas como la idea original, ninguna vacía. Las ideas traducidas omiten tier: viene del original, y un valor distinto se rechaza.

Cómo lee los valores el importador

  • El texto se recorta por ambos extremos, y las longitudes cuentan los caracteres tal como se ven.
  • Un campo opcional vacío se trata como si no estuviera.
  • Los campos que no se describen aquí se ignoran.
  • Cada lector ve la versión de su idioma y, si no existe, el original.

Ejemplo

{
  "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": []
            }
          ]
        }
      ]
    }
  }
}

Límites

QuéLímite
Idea o ejemplo400 caracteres
Ideas por pergamino500
Ejemplos por idea20
Título, autores255 caracteres
Título de capítulo200 bytes
Descripción600 caracteres
Etiquetas5 por idioma, 30 caracteres cada una
Contenido de un idioma1 MB
Archivo que subes8 MB
Pergaminos propios200

Errores de importación frecuentes

  • El archivo no es JSON válido. Pide al asistente "solo JSON válido" o busca una coma o unas comillas que falten. Quita cualquier texto antes o después del objeto JSON.
  • Falta el idioma. Añade "language" con un código como es.
  • Una idea o un ejemplo es demasiado largo. El mensaje indica el idioma, el capítulo, la idea y el ejemplo; acorta ese texto.
  • Una traducción no coincide. Cada versión necesita el mismo número de capítulos, ideas y ejemplos, en el mismo orden.
  • Demasiadas ideas o un archivo demasiado grande. Divide la fuente en dos pergaminos.
  • Ya tienes el máximo de pergaminos. Sustituye uno que ya no necesites; consulta Editar, sustituir y compartir.