# Instrucciones del lector · A1 «precio frente a comparables» · v1 Vas a leer fragmentos de pliegos (prescripciones técnicas, PPT, y cláusulas administrativas, PCAP) de licitaciones públicas españolas de **suministro de carburantes** (gasóleo, gasolina) o de **energía eléctrica**. Cada fichero es UNA licitación: una cabecera con un identificador opaco (`caso`), el objeto del anuncio y la lista de sus lotes con su clave, y después el recorte del texto (ventanas del documento separadas por «[…]», marcas «[pág. n]» y «=== PPT ===» / «=== PCAP ===»). Tu trabajo es **extraer datos literales**, no opinar. No sabes ni debes adivinar el importe adjudicado ni ningún precio de referencia: no aparecen y no importan para esta tarea. ## Qué extraer, por cada lote de la cabecera (o un único elemento con `lote: null` si la licitación no tiene lotes) | Campo | Valores | |---|---| | `lote` | la clave del lote tal como sale en la cabecera (p. ej. `"2"`), o `null` | | `producto` | `gasoleo_a` (automoción), `gasoleo_b` (agrícola, bonificado), `gasoleo_c` (calefacción), `gasolina95`, `gasolina98`, `mixto` (varios carburantes sumados en una sola cantidad), `electricidad`, `otro`, `no_consta` | | `cantidad` | número (punto decimal, sin separador de millares) de la cantidad **que se va a suministrar** en ese lote; `null` si el texto no la da | | `unidad` | `litros`, `kWh`, `MWh`, `GWh`, `m3`, `otra`, `null` | | `periodo_cantidad` | a qué periodo se refiere la cantidad: `total_contrato`, `anual`, `mensual`, `otro`, `no_consta` | | `duracion_meses` | duración del contrato en meses si el texto la da (sin prórrogas), si no `null` | | `importe_tipo` | cómo se fija el precio: `total_por_cantidad` (precio unitario ofertado × cantidad fija), `presupuesto_maximo` (tope de gasto; se paga el consumo real a los precios unitarios ofertados), `descuento_surtidor` (precio de surtidor o PVP menos un descuento o bonificación por litro), `precio_unitario_fijo`, `no_consta` | | `cita_cantidad` | copia **exacta y literal** (5 a 40 palabras) del texto donde aparece la cantidad; `null` si no hay cantidad | | `cita_producto` | copia exacta y literal (≤ 25 palabras) que identifica el producto; `null` si `no_consta` | | `cita_importe_tipo` | copia exacta y literal (≤ 40 palabras) que justifica `importe_tipo`; `null` si `no_consta` | | `duda` | `true` si dudas de algo (varias cantidades posibles, capacidad de depósito en vez de consumo, suma de varios productos, cantidad de otro lote, texto cortado); si no `false` | | `motivo_duda` | una frase corta o `null` | ## Reglas 1. **Solo lo que está escrito.** Si el texto no da la cantidad, `cantidad: null`. Nunca calcules una cantidad dividiendo un importe por un precio, ni la deduzcas de otra cosa. Sí puedes **sumar** cantidades del MISMO producto y lote si el texto las desglosa (p. ej. por centros o por años) y dice o deja claro que es el total; en ese caso cita el total o el desglose y marca `duda: true` explicando la suma. 2. Las citas se copian **carácter a carácter** del recorte (pueden empezar y acabar a mitad de frase). No corrijas erratas, no cambies mayúsculas ni números. Una cita que no esté en el texto anula el dato. 3. Una **capacidad** (de un depósito, un tanque, un camión cisterna, un pedido mínimo o máximo por entrega) **no es** la cantidad del contrato. Un consumo «del año anterior» o «histórico» sí vale como cantidad estimada si el pliego lo usa para estimar el contrato (`periodo_cantidad` el que diga). 4. Si un lote tiene varios productos con cantidades distintas, devuelve el producto con más cantidad y marca `duda: true` con el resto en `motivo_duda`. Si solo hay una cantidad conjunta de varios carburantes, `producto: "mixto"`. 5. Electricidad: la cantidad es la energía anual o total estimada (kWh/MWh/GWh), no la potencia (kW) ni el número de suministros (CUPS). 6. Gasóleo sin letra para calefacción de edificios = `gasoleo_c`; para vehículos o maquinaria de obra = `gasoleo_a`; si el texto no permite decidir, `no_consta` y `duda: true`. ## Salida Escribe **un único fichero JSON** (la ruta te la da el encargo) con esta forma, una entrada por caso del lote, en el mismo orden en que los leíste: ```json {"lector": "", "lote_lectura": , "casos": [ {"caso": "T1a2b3c4d", "lotes": [ {"lote": "1", "producto": "gasoleo_c", "cantidad": 40000, "unidad": "litros", "periodo_cantidad": "anual", "duracion_meses": 24, "importe_tipo": "presupuesto_maximo", "cita_cantidad": "un consumo estimado anual de 40.000 litros de gasóleo C", "cita_producto": "gasóleo C para calefacción", "cita_importe_tipo": "se abonará el suministro efectivamente realizado a los precios unitarios ofertados", "duda": false, "motivo_duda": null}]} ]} ``` JSON válido (comillas dobles, sin comentarios, sin comas finales). No escribas nombres de personas en ningún campo (si una cita contiene el nombre de una persona, recórtala para que no lo incluya). No escribas ningún otro fichero.