I have this response_schema definition inside generationConfig:
{
"generationConfig": {
"temperature": 1,
"response_mime_type": "application/json",
"response_schema": {
"type": "object",
"required": [
"questions"
],
"properties": {
"questions": {
"type": "array",
"minItems": 12,
"maxItems": 12,
"items": {
"oneOf": [
{
"type": "object",
"required": [
"format",
"subject",
"question",
"correct_answer",
"explanation"
],
"properties": {
"format": {
"type": "string",
"enum": [
"true_false"
]
},
"subject": {
"type": "string"
},
"question": {
"type": "string"
},
"correct_answer": {
"type": "boolean"
},
"explanation": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"format",
"subject",
"pairs"
],
"properties": {
"format": {
"type": "string",
"enum": [
"matching"
]
},
"subject": {
"type": "string"
},
"pairs": {
"type": "array",
"minItems": 4,
"maxItems": 4,
"items": {
"type": "object",
"required": [
"item",
"match"
],
"properties": {
"item": {
"type": "string"
},
"match": {
"type": "string"
}
}
}
}
}
},
{
"type": "object",
"required": [
"format",
"subject",
"question",
"options",
"correct_answer",
"explanation"
],
"properties": {
"format": {
"type": "string",
"enum": [
"options"
]
},
"subject": {
"type": "string"
},
"question": {
"type": "string"
},
"options": {
"type": "array",
"minItems": 4,
"maxItems": 4,
"items": {
"type": "string"
}
},
"correct_answer": {
"type": "integer",
"minimum": 0,
"maximum": 3
},
"explanation": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"format",
"subject",
"elements",
"correct_order",
"explanation"
],
"properties": {
"format": {
"type": "string",
"enum": [
"element_order"
]
},
"subject": {
"type": "string"
},
"elements": {
"type": "array",
"minItems": 2,
"items": {
"type": "string"
}
},
"correct_order": {
"type": "array",
"minItems": 2,
"items": {
"type": "integer",
"minimum": 0
}
},
"explanation": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"format",
"subject",
"groups"
],
"properties": {
"format": {
"type": "string",
"enum": [
"grouping"
]
},
"subject": {
"type": "string"
},
"groups": {
"type": "array",
"minItems": 2,
"items": {
"type": "object",
"required": [
"category",
"items"
],
"properties": {
"category": {
"type": "string"
},
"items": {
"type": "array",
"minItems": 1,
"items": {
"type": "string"
}
}
}
}
}
}
},
{
"type": "object",
"required": [
"format",
"subject",
"question",
"answer",
"explanation"
],
"properties": {
"format": {
"type": "string",
"enum": [
"open_ended"
]
},
"subject": {
"type": "string"
},
"question": {
"type": "string"
},
"answer": {
"type": "string"
},
"explanation": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"format",
"subject",
"sentence",
"options"
],
"properties": {
"format": {
"type": "string",
"enum": [
"fill_blank"
]
},
"subject": {
"type": "string"
},
"sentence": {
"type": "string"
},
"options": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": [
"available",
"correct"
],
"properties": {
"available": {
"type": "array",
"minItems": 3,
"items": {
"type": "string"
}
},
"correct": {
"type": "string"
}
}
}
}
}
}
]
}
}
}
}
}
}
The problem is that the output does not respect the definition, e.g., a couple of example answers from gemini-2.5-pro-preview-06-05:
{
"questions": [
{
"format": "matching",
"subject": "Principios rectores de la Educación Especial",
"pairs": [
"item-match",
"item-match",
"item-match",
"item-match"
]
},
{
"format": "options",
"subject": "Marco legal de la Educación Especial",
"question": "Según el texto, ¿qué artículo de la Convención de la ONU sobre los Derechos de las Personas con Discapacidad (2006) reconoce explícitamente el derecho a la educación inclusiva?",
"options": [
"Artículo 24",
"Artículo 7",
"ODS 4",
"Artículo 19"
],
"correct_answer": 0,
"explanation": "La sección 'Marco legal y políticas públicas' del texto indica que el artículo 24 de la Convención de la ONU de 2006 reconoce el derecho a una educación inclusiva."
},
{
"format": "element_order",
"subject": "Proceso de identificación y evaluación educativa",
"elements": [
"Elaboración del Dictamen de Escolarización",
"Detección temprana mediante observación sistemática en Educación Infantil",
"Evaluación psicopedagógica con enfoque multidisciplinar",
"Revisión anual del dictamen y de los programas individualizados"
],
"correct_order": [
1,
2,
0,
3
],
"explanation": "El proceso comienza con la detección temprana, seguida de una evaluación psicopedagógica formal. Con base en esta evaluación se elabora el dictamen de escolarización, el cual debe ser revisado anualmente para ajustar los apoyos."
},
{
"format": "matching",
"subject": "Modelos de colaboración docente (co-teaching)",
"pairs": [
"item-match",
"item-match",
"item-match",
"item-match"
]
},
{
"format": "options",
"subject": "Diseño Universal para el Aprendizaje (UDL)",
"question": "¿Cuál de los siguientes NO es uno de los tres principios del Diseño Universal para el Aprendizaje (UDL) mencionados en el texto?",
"options": [
"Múltiples formas de representación",
"Múltiples formas de evaluación estandarizada",
"Múltiples formas de implicación",
"Múltiples formas de expresión"
],
"correct_answer": 1,
"explanation": "El texto, en la sección 'Programación didáctica inclusiva', especifica que el UDL se basa en proporcionar múltiples formas de representación, de expresión y de implicación. La evaluación estandarizada va en contra del principio de flexibilidad del UDL."
},
{
"format": "matching",
"subject": "Competencias profesionales del maestro/a de Educación Especial",
"pairs": [
"item-match",
"item-match",
"item-match",
"item-match"
]
},
{
"format": "grouping",
"subject": "Agentes implicados en la respuesta educativa inclusiva",
"groups": [
"category-items",
"category-items"
]
},
{
"format": "open_ended",
"subject": "Transición del modelo integrador al inclusivo",
"question": "El texto afirma que el éxito de la inclusión no se mide solo por la presencia física del alumnado con NEAE, sino por su 'auténtica participación, progreso académico y bienestar emocional'. Explica la diferencia fundamental entre el enfoque de 'integración' y el de 'inclusión' según se desprende del texto.",
"answer": "La diferencia fundamental reside en el foco del cambio. La 'integración' busca que el alumno con NEAE se adapte a un sistema educativo que permanece mayormente inalterado, proporcionándole apoyos individuales para que 'encaje'. En cambio, la 'inclusión' implica transformar el propio sistema educativo (metodologías, currículo, organización, cultura) para que sea capaz de acoger, valorar y educar a toda la diversidad del alumnado desde el principio, eliminando las barreras para el aprendizaje y la participación de todos.",
"explanation": "La respuesta debe centrarse en la distinción clave: la integración adapta al individuo para que encaje en el sistema, mientras que la inclusión transforma el sistema para que acoja a todos los individuos, tal y como se refleja en la conclusión del texto."
},
{
"format": "matching",
"subject": "Terminología clave en Educación Especial",
"pairs": [
"item-match",
"item-match",
"item-match",
"item-match"
]
},
{
"format": "element_order",
"subject": "Evolución histórica de la Educación Especial",
"elements": [
"Enfoque de educación integradora",
"Modelo social de la discapacidad y educación inclusiva",
"Modelos asistencialistas y caritativos",
"Perspectiva de la 'educación diferencial' o segregadora"
],
"correct_order": [
2,
3,
0,
1
],
"explanation": "El texto describe una progresión histórica que comienza con los modelos asistencialistas, evoluciona hacia una 'educación diferencial', luego a un modelo de 'integración' y finalmente llega al paradigma actual de 'educación inclusiva' basado en el modelo social."
},
{
"format": "open_ended",
"subject": "Aplicación práctica del Diseño Universal para el Aprendizaje (UDL)",
"question": "Imagina que eres un docente que debe diseñar una actividad sobre el ciclo del agua para un grupo diverso. Describe cómo aplicarías los tres principios del UDL (múltiples formas de representación, expresión e implicación) para hacerla accesible y motivadora para todos.",
"answer": "1) Representación: Presentaría la información mediante un vídeo con subtítulos, un texto adaptado con pictogramas, un experimento práctico en clase y un mapa conceptual interactivo. 2) Expresión: Los alumnos podrían demostrar lo aprendido creando un mural, grabando un vídeo explicativo, escribiendo un breve informe, haciendo una presentación oral o construyendo una maqueta. 3) Implicación: Conectaría el tema con sus intereses (ej. la importancia del agua para los cultivos en un videojuego popular), fomentaría el trabajo cooperativo con roles definidos y permitiría elegir entre diferentes niveles de profundización en la tarea.",
"explanation": "Una respuesta correcta debe ofrecer ejemplos concretos para cada uno de los tres principios del UDL, demostrando flexibilidad en los materiales (representación), en las formas de evaluar (expresión) y en las estrategias para motivar (implicación)."
},
{
"format": "open_ended",
"subject": "Colaboración con familias",
"question": "El texto subraya la importancia de la 'corresponsabilidad educativa' con las familias. ¿Por qué es crucial esta alianza y qué acciones concretas, mencionadas o no en el texto, puede llevar a cabo un centro educativo para fomentarla eficazmente?",
"answer": "Es crucial porque las familias son quienes mejor conocen a sus hijos y la colaboración permite alinear estrategias entre escuela y hogar, tomar decisiones consensuadas y potenciar el desarrollo integral del alumno. Algunas acciones para fomentarla son: 1) Mantener una comunicación fluida, proactiva y bidireccional, no solo para informar de problemas. 2) Diseñar conjuntamente los planes de apoyo personalizados. 3) Organizar 'escuelas de padres' con talleres prácticos y formativos. 4) Crear canales de participación real de las familias en la vida del centro. 5) Utilizar un lenguaje claro y accesible, evitando la jerga técnica.",
"explanation": "La respuesta debe justificar la importancia de la alianza familia-escuela (conocimiento del alumno, coherencia, decisiones compartidas) y proponer acciones prácticas que promuevan una participación activa y corresponsable."
}
]
}
And another:
{
"questions": [
{
"format": "element_order",
"subject": "Formación Práctica en Educación Especial",
"elements": [
"Observación sistemática en Educación Infantil",
"Protocolos de cribado (checklists de desarrollo, escalas de madurez escolar)",
"Evaluación psicopedagógica",
"Elaboración del Dictamen de Escolarización"
],
"correct_order": [
0,
1,
2,
3
],
"explanation": "El proceso de identificación y evaluación comienza con la detección temprana a través de la observación y cribado, seguido de una evaluación psicopedagógica y culmina con la elaboración del Dictamen de Escolarización."
},
{
"format": "true_false",
"subject": "Formación Práctica en Educación Especial",
"question": "El modelo social de la discapacidad sugiere que las limitaciones de las personas se deben principalmente a las barreras impuestas por la sociedad.",
"correct_answer": true,
"explanation": "El modelo social de la discapacidad, en contraste con modelos anteriores, enfatiza que las dificultades experimentadas por las personas con discapacidad son resultado de barreras físicas, sociales y de actitud, en lugar de ser una deficiencia inherente al individuo."
},
{
"format": "fill_blank",
"subject": "Formación Práctica en Educación Especial",
"sentence": "La Convención de la ONU sobre los Derechos de las Personas con Discapacidad (2006) reconoce el derecho a una educación {0} en su artículo 24.",
"options": [
"|inclusiva|equitativa|especial|",
"|20|24|26|28|"
]
},
{
"format": "true_false",
"subject": "Formación Práctica en Educación Especial",
"question": "El Diseño Universal para el Aprendizaje (UDL) promueve una única forma de representación, expresión e implicación para todos los estudiantes.",
"correct_answer": false,
"explanation": "El UDL se basa en ofrecer múltiples formas de representación, de expresión y de implicación para atender a la diversidad del alumnado y eliminar barreras."
},
{
"format": "grouping",
"subject": "Formación Práctica en Educación Especial",
"groups": [
"Modelos de colaboración docente",
"Metodologías activas"
],
"items": [
"One teach, one drift",
"Aprendizaje Basado en Proyectos (ABP)",
"Station teaching",
"Gamificación",
"Team teaching",
"Aprendizaje Cooperativo"
]
},
{
"format": "matching",
"subject": "Formación Práctica en Educación Especial",
"pairs": [
"Ley Orgánica 3/2020",
"LOMLOE",
"ODS 4",
"Educación de calidad",
"Diseño para todas las personas",
"Accesibilidad universal",
"Cooperación con familias",
"Corresponsabilidad educativa"
]
},
{
"format": "true_false",
"subject": "Formación Práctica en Educación Especial",
"question": "Las Barreras para el Aprendizaje y la Participación (BAP) se refieren exclusivamente a las dificultades físicas del entorno escolar.",
"correct_answer": false,
"explanation": "Las BAP abarcan barreras de tipo físico, curricular, actitudinal y organizacional que dificultan el acceso, la participación y el aprendizaje del alumnado."
},
{
"format": "fill_blank",
"subject": "Formación Práctica en Educación Especial",
"sentence": "La competencia {0} del maestro de educación especial implica el uso de herramientas tecnológicas como comunicadores aumentativos y lectores digitales con síntesis de voz.",
"options": [
"|didáctica|colaborativa|ética|",
"|tecnológica|apoyo|personal|",
"|didáctica|investigación-acción|socioemocional|"
]
},
{
"format": "fill_blank",
"subject": "Formación Práctica en Educación Especial",
"sentence": "El {0} del alumno es una herramienta que recopila evidencia de aprendizaje y autoevaluación.",
"options": [
"|portafolio|dictamen|plan|",
"|alumno|docente|padre|",
"|portafolio|informe|cuaderno|"
]
},
{
"format": "grouping",
"subject": "Formación Práctica en Educación Especial",
"groups": [
"Principios de la Educación Especial",
"Modelos de la discapacidad"
],
"items": [
"Normalización",
"Modelo social",
"Vida independiente",
"Modelo médico",
"Accesibilidad universal",
"Modelo asistencialista"
]
},
{
"format": "options",
"subject": "Formación Práctica en Educación Especial",
"question": "¿Cuál de los siguientes principios orienta la acción docente y la organización escolar en la educación especial actual?",
"options": [
"Exclusión selectiva",
"Inclusión, equidad y accesibilidad universal",
"Asistencia especializada externa",
"Segregación por niveles"
],
"correct_answer": 1,
"explanation": "Los principios de inclusión, equidad y accesibilidad universal son los pilares fundamentales de la educación especial contemporánea, buscando garantizar la participación y el aprendizaje de todo el alumnado."
},
{
"format": "fill_blank",
"subject": "Formación Práctica en Educación Especial",
"sentence": "La Agenda 2030 y el ODS {0} buscan garantizar una educación inclusiva, equitativa y de calidad.",
"options": [
"|4|2|5|10|",
"|4|5|3|6|"
]
}
]
}
He does not seem to like nesting properties. The problem is that the request doesn’t fail; it simply reinterprets the parts of the schema it doesn’t like. That generates a lot of problems.
Any solution?
Thanks!