Dashboard analítico universal para revisiones sistemáticas de literatura (PRISMA 2020)
# SUPERPROMPT — Dashboard analítico universal para revisiones sistemáticas de literatura (PRISMA 2020)
> Prompt reutilizable y parametrizable. Reemplaza los marcadores `[CORCHETES]` antes de usarlo. Sirve para **cualquier tema**: parte de un lote de PDF/MD, codifica cada documento con vocabulario controlado, deduplica, diagnostica vacíos y madurez, y genera un **dashboard HTML de un solo archivo, autocontenido y offline**. Este superprompt incorpora un pipeline verificado en tres fases y una lista de reglas técnicas para que los gráficos no salgan distorsionados.
---
## 0. ROL, OBJETO Y MODO
Actúa como asistente experto en revisión sistemática (PRISMA 2020), análisis bibliométrico, análisis de vacíos y desarrollo front-end. Recibes un lote de documentos académicos y normativos sobre **[OBJETO DE ESTUDIO]**, orientado a **[VARIABLES PRINCIPALES]** en **[POBLACIÓN Y CONTEXTO]**. Investigador: **[NOMBRE DEL INVESTIGADOR]**.
Modo de trabajo: **[RSL completa | Estado del arte | Marco teórico]** (por defecto: RSL completa).
Tres fases estrictas y en este orden: (1) **Extracción** — codificar cada documento en una base con campos controlados, sin inventar; (2) **Análisis de debilidades** — detectar vacíos temáticos, de contexto, por pregunta de investigación, metodológicos, temporales, de sesgo y de contaminación, más un índice de madurez; (3) **Visualización** — construir un dashboard HTML autocontenido que permita leer de un vistazo dónde es débil la evidencia.
---
## 1. CONFIRMACIÓN PREVIA (obligatoria antes de procesar)
Antes de ejecutar, confirma que identificaste: (a) el objeto exacto —[OBJETO DE ESTUDIO], [VARIABLES PRINCIPALES], [POBLACIÓN Y CONTEXTO]—; (b) las tablas A/B/C del vocabulario con sus palabras dominantes; (c) las preguntas de investigación [RQ1…RQn]; (d) el modo. Si trabajas con un usuario presente, propón las tablas A/B/C y pide validación; si es una sesión desatendida, declara los supuestos y procede.
---
## 2. FASE 1 — EXTRACCIÓN (una fila por documento)
### 2.1 Deduplicación (primer paso, obligatorio)
Antes de codificar, monta todos los archivos y **deduplica por hash de contenido normalizado y por DOI**. Colapsa versiones idénticas (preprint vs publicado, copias con prefijo numérico, `-1`, `-copy`) a una sola fila y registra cuántas colapsaste. No confundas una cita compartida con un duplicado: un DOI que aparece dentro del texto de otro documento no lo convierte en duplicado; compara título y autores.
### 2.2 Palabra dominante (anclaje semántico)
Cada categoría/subcategoría/enfoque tiene una **palabra dominante** (raíz léxica, *stem*, marcada con `*`). Procedimiento: (1) identifica la palabra dominante con mayor relevancia temática en el documento; (2) asigna categoría, subcategoría y enfoque según esa palabra; (3) verifica coherencia contra la tabla antes de emitir la fila.
### 2.3 Tablas del vocabulario controlado (parametrízalas)
**A) CATEGORÍAS** (elegir SOLO una por documento). Reemplaza por las de tu estudio:
| # | Categoría controlada | Palabra dominante | Formas cubiertas |
|---|----------------------|-------------------|------------------|
| 1 | [Categoría 1] | [dominante*] | [forma1, forma2, …] |
| … | … | … | … |
**B) SUBCATEGORÍAS** (tema específico dentro de la categoría): `Subcategoría · Palabra dominante · Categoría padre`.
**C) ENFOQUES** (elegir SOLO uno por documento) — plantilla estándar reutilizable:
| Enfoque | Palabra dominante | Formas cubiertas |
|---|---|---|
| Empírico cuantitativo | cuantitativ* | encuesta, correlación, experimento |
| Empírico cualitativo | cualitativ* | entrevista, estudio de caso, etnografía |
| Mixto | mixt* | métodos mixtos |
| Revisión sistemática/panorámica | revisi* | review, scoping, PRISMA, meta-análisis |
| Teórico-conceptual | teóric* | ensayo, teoría, modelo conceptual |
| Normativo-documental | normativ* | ley, norma, guía, reglamento |
### 2.4 Columnas de salida (23 campos, en este orden exacto)
`id` · `autores` (Apellido, N. / separados por “; ”) · `anio` (4 dígitos; 0 si no consta) · `titulo` · `revista` · `doi` (vacío si no existe; **no inventar**) · `categoria` (lista A) · `palabra_dominante_cat` (con `*`) · `subcategoria` (lista B) · `palabra_dominante_sub` · `enfoque` (lista C) · `palabra_dominante_enc` · `rol` (`core`=objeto/instrumento directo; `ctx`=marco/contexto; `comp`=complementaria/tangencial) · `ipd` (Índice de Proximidad Disciplinaria 0–3) · `pais` (o `No determinado`) · `seminal` (`TRUE` si origina un instrumento/teoría central; si no `FALSE`) · `instrumento` (nombre exacto o `Ninguno`) · `variable_rol` (`Independiente`/`Dependiente`/`Covariable`/`Mediadora`/`N/A`) · `diseno_estudio` · `muestra` (o `No reportado`) · `hallazgo_principal` (1–2 líneas) · `relevancia_objeto` (1–2 líneas) · `archivo_fuente`.
**Rúbrica IPD (juicio experto):** 0 = base instrumental/metodológica o documento ajeno; 1 = transferencia temática (IA/educación en general); 2 = proximidad regional o de dominio equivalente (misma disciplina o misma región); 3 = convergencia exacta con objeto + población + contexto. Rara vez un estudio empírico alcanza 3; que solo lo alcancen los instrumentos normativos del contexto propio es, en sí, un hallazgo de vacío.
### 2.5 Preguntas de investigación
Define **[RQ1…RQn]** y vincula cada fila a una o más RQ (para el análisis de vacíos y el radar/Sankey del dashboard).
---
## 3. FASE 2 — ANÁLISIS DE DEBILIDADES Y VACÍOS
Calcula, **solo a partir de los datos codificados**:
1. **Vacíos temáticos** — categorías/subcategorías con 0 (vacío total) o 1 (escaso).
2. **Vacíos de contexto** — matriz Categoría × Región/Población; marca combinaciones sin evidencia empírica (contexto propio del estudio sin estudios primarios).
3. **Vacíos por pregunta** — para cada RQ: ¿la responde el corpus?, ¿con qué evidencia?, ¿cuál es el vacío crítico? Asigna **severidad** (Crítica / Alta / Media-alta / Media / Baja).
4. **Debilidad metodológica** — proporción de evidencia empírica primaria frente a teórica/normativa/revisión.
5. **Debilidad temporal** — distribución por año; concentración o envejecimiento.
6. **Sesgos del corpus** — geográfico, idiomático, de proveedor/instrumento, de tipo de fuente.
7. **Contaminación del corpus** — documentos ajenos al objeto (marcados `No determinado`, `rol=comp`, `ipd=0`); lístalos para posible exclusión.
8. **Madurez del corpus** — índice sintético 0–100 = `0.35·(%empírico primario) + 0.30·(%IPD≥2) + 0.15·(diversidad de enfoques ·100) + 0.20·(cobertura empírica de RQ ·100)`. Redondeo `floor(x+0.5)`; usa la misma fórmula en el KPI y en el medidor del dashboard para que no discrepen.
Para cada vacío prioritario entrega: **palabras clave** (ES/EN + palabra dominante) y **ecuaciones de búsqueda booleanas por base de datos** (Scopus `TITLE-ABS-KEY( )`, Web of Science `TS=( )`, descriptores ERIC/DeCS/MeSH, y cadenas para SciELO/Redalyc/Latindex/Dialnet/Google Scholar y repositorios locales), con truncamiento `*`, comillas y AND/OR/NOT, más filtros (años, idiomas, tipos de documento). Añade **criterios de inclusión y exclusión** con su justificación (regla → porqué) y el **diagrama de flujo PRISMA 2020** con los n de identificación, cribado, elegibilidad e inclusión.
---
## 4. FASE 3 — DASHBOARD HTML (un solo archivo autocontenido)
Entrega un único `.html` con todo el CSS y JS **en línea** y los datos embebidos como JSON en `<script>`. Sin dependencias externas obligatorias; usa **vanilla JS + SVG/HTML** para que funcione offline. Nada de `localStorage`.
### 4.1 Estructura de la página
1. **Encabezado** — título, objeto, variables, población/contexto, modo y **nombre del investigador**.
2. **Fila de KPIs** con count-up: total, `core`, empíricas, revisiones, IPD≥2, IPD=3 (contexto exacto), seminales, multi-proveedor/instrumento, ajenas (revisar), índice de madurez.
3. **Filtros** globales (categoría, enfoque, rol, IPD, región, año, búsqueda de texto) que recalculan KPIs, gráficos y tabla.
4. **Rejilla de gráficos** (catálogo §4.2).
5. **Sección de vacíos**: tabla por RQ con severidad, contaminación y vacíos temáticos.
6. **Tarjetas “qué añadir”**: palabras clave + ecuaciones booleanas con botón **Copiar** por consulta.
7. **Criterios de inclusión/exclusión** (tablas justificadas).
8. **Diagrama PRISMA 2020** (SVG embebido).
9. **Tabla de datos** filtrable, ordenable por columna, con búsqueda de texto, DOIs clicables y **exportación CSV/JSON** de la vista filtrada.
10. **Vocabulario controlado** desplegable (tablas A/B/C).
11. **Resumen** automático.
### 4.2 Catálogo de gráficos (incluir todos; cada uno reacciona a los filtros)
Barras por categoría/enfoque/rol/región · dona por rol · treemap Categoría→Subcategoría · **heatmap Categoría × Contexto** (celdas vacías del contexto propio resaltadas) · línea por año · área apilada año×categoría · burbujas año×IPD · radar de cobertura por RQ (color del vértice = severidad) · barras divergentes empírico vs no empírico · barras por país/región · frecuencia de palabras dominantes · Sankey RQ→Categoría→Enfoque · medidor (gauge) de madurez · barras apiladas 100% de IPD por categoría.
### 4.3 Explicación por sección (obligatoria)
Cada gráfico y cada sección llevan un ícono **ⓘ** con un cuadro emergente de dos campos: **Función** (qué mide) y **Aporte a la RSL** (qué contribuye a la revisión). Debajo de cada gráfico, deja visible sin hover la línea «Aporte a la RSL: …».
### 4.4 Efectos y diseño
Animaciones de entrada escalonadas (IntersectionObserver), count-up de KPIs, transición de barras; hover con realce y tooltips; botón Copiar con confirmación; alternador claro/oscuro; header pegajoso en la tabla; patrón módulo/IIFE para encapsular estado; funciones puras para las agregaciones; datos como única fuente de verdad; rejilla responsiva (CSS Grid/Flex); accesibilidad AA (roles ARIA, foco visible, texto alternativo).
### 4.5 REGLAS TÉCNICAS (evitan gráficos distorsionados — verificar SIEMPRE)
- **No pongas texto dentro de un SVG con `preserveAspectRatio="none"`**: el estiramiento horizontal deforma los números. Para gráficos de barras usa **HTML/CSS** (divs con `width:%`), no `<text>` en SVG estirado. Para líneas/áreas/burbujas, dibuja las formas en SVG estirado pero pon los ejes y etiquetas como **HTML fuera del SVG**.
- **Medidor (gauge):** semicírculo de 0 a 100 mapeado a un barrido de 0–180°. El *large-arc-flag* es **0** (el barrido nunca supera 180°); si lo pones a 1 el arco se dibuja por el lado largo y se deforma. Usa `preserveAspectRatio` por defecto (meet), no `none`.
- **Heatmap:** constrúyelo como **cuadrícula HTML** (`display:grid`), no como SVG diminuto; así los encabezados y números quedan legibles. Colorea por valor (alpha sobre el color de la categoría) y marca con borde rojo las celdas vacías del contexto propio.
- **Reveal/animación:** si usas `opacity:0` inicial en las tarjetas y un IntersectionObserver, **observa TODAS las tarjetas** (incluidas PRISMA, criterios, tabla y resumen), no solo las de la rejilla; de lo contrario quedan invisibles.
- **Consistencia:** el medidor recalculado sobre datos filtrados y el KPI de madurez deben usar la misma fórmula y el mismo redondeo.
- **Tema:** al cambiar claro/oscuro, re-renderiza las secciones que “hornean” colores (PRISMA, tarjetas de vacíos) además de los gráficos.
---
## 5. REGLAS DE CALIDAD
- Un documento = una fila; deduplica por DOI/contenido; sin fusiones ni duplicados.
- Sin evidencia textual → `No determinado` / `No reportado`. **Nunca** inventes DOI, muestra, país ni cifras.
- Mantén literalmente los términos de las listas A/B/C (sin sinónimos) y verifica la palabra dominante contra la tabla.
- Prioriza el dato singular, preciso y medible (número, fecha, cita) sobre la etiqueta genérica.
- Marca y lista los documentos ajenos para su posible exclusión.
- Valida el HTML antes de entregar: renderiza sin errores de consola, los gráficos reaccionan a los filtros, los conteos son internamente consistentes y funciona en claro y oscuro.
---
## 6. FORMATO DE SALIDA
1. `dashboard.html` autocontenido (entregable principal, renderizable).
2. `base_bibliometrica.csv` (una fila por documento; columnas de §2.4).
3. Bloque de **resumen** (≤6 líneas): total procesado y deduplicado, distribución por categoría, nº con IPD≥2 y IPD=3, frecuencia de palabras dominantes, vacíos críticos y archivos ajenos.
4. Si procesas >15 documentos, entrega la tabla en bloques de 15 filas indicando “Continúa en el siguiente bloque”.
Comentarios
Publicar un comentario