# CONTEXT.md — Ontología del dominio Ornitonautas ## Visión general Ornitonautas es una plataforma educativa de Formación Profesional en informática. Su objetivo es maximizar la autoridad y posicionamiento SEO/GEO en el nicho de FP informática en España. ## Entidades del dominio ### Ciclos Formativos | Entity | Título | Tipo | Descripción | |---|---|---|---| | `dam` | Desarrollo de Aplicaciones Multiplataforma | cycle | Grado Superior - 2000h | | `daw` | Desarrollo de Aplicaciones Web | cycle | Grado Superior - 2000h | | `smr` | Sistemas Microinformáticos y Redes | cycle | Grado Medio - 1400h | | `asir` | Administración de Sistemas Informáticos en Red | cycle | Grado Superior - 2000h | ### Módulos (ejemplo para DAM) | Entity | Ciclo | Descripción | |---|---|---| | `prog-bases-datos` | DAM | Bases de datos | | `prog-implementacion` | DAM | Programación | | `prog-multimedia` | DAM | Desarrollo de interfaces | | `prog-movil` | DAM | Desarrollo de aplicaciones multiplataforma | | `prog-sistemas` | DAM | Sistemas informáticos | | `prog-redes` | DAM | Redes | ### Competencias Profesionales | Entity | Descripción | |---|---| | `prog-web` | Programación web (HTML, CSS, JS, frameworks) | | `prog-backend` | Programación de servidor (Node, Python, Java) | | `prog-movil-dev` | Desarrollo móvil (React Native, Flutter) | | `gestion-bd` | Gestión de bases de datos | | `seguridad-it` | Seguridad informática | | `devops` | DevOps y despliegue | ### Tecnologías | Entity | Categoría | |---|---| | `javascript` | Lenguaje de programación | | `python` | Lenguaje de programación | | `java` | Lenguaje de programación | | `html-css` | Tecnologías web | | `react` | Framework JavaScript | | `angular` | Framework JavaScript | | `nodejs` | Runtime JavaScript | | `sql` | Lenguaje de consultas | | `git` | Control de versiones | | `docker` | Contenedores | ### Tipos de Contenido | Entity Type | Descripción | Ejemplo | |---|---|---| | `cycle` | Ciclo formativo completo | DAM, DAW | | `module` | Módulo dentro de un ciclo | Programación | | `project` | Proyecto real del alumnado | App de gestión | | `competence` | Competencia profesional | Programación web | | `resource` | Recurso educativo | Ejercicio SQL | | `article` | Contenido editorial/SEO | Qué es DAM | | `glossary` | Término del vocabulario FP | API REST | | `faq` | Pregunta frecuente | Cuánto dura DAM | | `company` | Empresa colaboradora | Tech Solutions | | `event` | Evento formativo | Hackathon FP | ### Tipos de Relación | Relation Type | Descripción | |---|---| | `belongs_to_cycle` | Módulo pertenece a ciclo | | `teaches_competence` | Módulo enseña competencia | | `uses_technology` | Proyecto usa tecnología | | `prerequisite` | Prerequisito | | `related_to` | Relación temática | | `is_a` | Relación jerárquica | | `alternative_to` | Alternativa | | `derived_from` | Contenido derivado | | `recommended_for` | Recomendado para perfil | | `collaborates_with` | Empresa colabora con FP | ## Vocabulario controlado ### Entity Types válidos ``` cycle, module, project, competence, company, resource, article, glossary, event, testimony, tutor, faq ``` ### Relation Types válidos ``` belongs_to_cycle, teaches_competence, uses_technology, related_to, is_a, prerequisite, alternative_to, derived_from, recommended_for, collaborates_with ``` ## Naming conventions - Slugs: lowercase, sin espacios, con guiones (`que-es-dam`) - Entidades: singular, sin ambigüedad (`module`, no `modules`) - Sinónimos: en `synonyms[]`, no como entidades nuevas ## Multilingüe - ES es el canon ontológico - EN mapea a la misma `entity` ID - Nunca se duplica la ontología por idioma