Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Añadidos cambios de los compañeros a mi rama #75

Merged
merged 15 commits into from
Mar 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3,793 changes: 3,792 additions & 1 deletion package-lock.json

Large diffs are not rendered by default.

39 changes: 36 additions & 3 deletions questionsService/esqueletoPreguntas.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,43 @@
<textoPreguntas>

<pregunta question="pais" type="capital">
¿Cuál es la capital de {RELLENAR}?
¿Cuál es la capital del pais {RELLENAR}?
</pregunta>

<pregunta question="estado" type="capital">
¿Cuál es la capital del estado de {RELLENAR}?
</pregunta>


<pregunta question="libro" type="autor">
¿Cuál es el autor/es del libro llamado {RELLENAR}?
</pregunta>

<pregunta question="libro" type="genero">
¿Cuál es el genero/s del libro llamado {RELLENAR}?
</pregunta>

<pregunta question="videojuego" type="plataforma">
¿Cuál es la plataforma/s que desarrollo el videojuego llamado {RELLENAR}?
</pregunta>

<pregunta question="videojuego" type="genero">
¿Cuál es el genero/s del videojuego llamado {RELLENAR}?
</pregunta>

<pregunta question="clubFutbol" type="estadio">
¿Cuál es el estadio del club de futbol llamado {RELLENAR}?
</pregunta>

<pregunta question="tenista" type="paisNacimiento">
¿Cuál es el pais de nacimiento del tenista llamado {RELLENAR}?
</pregunta>

<pregunta question="presidenteEspaña" type="fechaNacimiento">
¿Cuál es la fecha de nacimiento del presidente de España llamado {RELLENAR}?
</pregunta>

<pregunta question="personasOviedo" type="fechaNacimiento">
¿Cuál es la fecha de nacimiento de la personalidad de Oviedo llamado/a {RELLENAR}?
</pregunta>

</textoPreguntas>
140 changes: 127 additions & 13 deletions questionsService/preguntas.xml
Original file line number Diff line number Diff line change
@@ -1,28 +1,142 @@
<preguntas>

<pregunta question="pais" type="capital" category="geografia">
<query >
SELECT ?country ?countryLabel ?capitalLabel
WHERE
{
?country wdt:P31 wd:Q3624078. # Instance of country
?country wdt:P36 ?capital. # Has capital
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],es". }
<pregunta question="pais" type="capital" category="geografia">
<query>
SELECT DISTINCT ?countryLabel (SAMPLE(?nombreCapital) AS ?capitales)
WHERE {
?country wdt:P31 wd:Q3624078. # Instancia de país
?country wdt:P36 ?capital. # Tiene capital
?country rdfs:label ?countryLabel filter (lang(?countryLabel) = "es").
?capital rdfs:label ?nombreCapital filter (lang(?nombreCapital) = "es").
}

GROUP BY ?countryLabel
</query>
</pregunta>


<pregunta question="estado" type="capital" category="geografia">
<query >
SELECT ?state ?stateLabel ?capitalLabel
WHERE {
?state wdt:P31 wd:Q35657 .
?state p:P36 ?statement .
?statement ps:P36 ?capital .
?state wdt:P31 wd:Q35657 .
?state p:P36 ?statement .
?statement ps:P36 ?capital .
# Fetching the rank of the property
?statement wikibase:rank ?rank .
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],es". }
# Subquery to get the highest ranked capital for each state
{
SELECT ?state (MAX(?rank) AS ?maxRank)
WHERE {
?state wdt:P31 wd:Q35657 .
?state p:P36 ?statement .
?statement wikibase:rank ?rank .
}
GROUP BY ?state
}

FILTER (?rank = ?maxRank)
}
</query>
</pregunta>

<pregunta question="libro" type="autor" category="arte">
<query>
SELECT DISTINCT ?nombreLibro (GROUP_CONCAT(DISTINCT ?nombreAuthor; SEPARATOR=", ") AS ?authors)
WHERE {
?book wdt:P31 wd:Q571. # libro (clase)
?book wdt:P50 ?author. # Relación "autor"
?book rdfs:label ?nombreLibro filter (lang(?nombreLibro) = "es").
?author rdfs:label ?nombreAuthor filter (lang(?nombreAuthor) = "es").
}
GROUP BY ?nombreLibro
</query>
</pregunta>

<pregunta question="libro" type="genero" category="arte">
<query>
SELECT DISTINCT ?nombreLibro (GROUP_CONCAT(DISTINCT ?nombregenero; SEPARATOR=", ") AS ?generos)
WHERE {
?book wdt:P31 wd:Q571.
?book wdt:P136 ?genero. # Relación "género"
?book rdfs:label ?nombreLibro filter (lang(?nombreLibro) = "es").
?genero rdfs:label ?nombregenero filter (lang(?nombregenero) = "es").
}
GROUP BY ?nombreLibro
</query>
</pregunta>

<pregunta question="videojuego" type="plataforma" category="entretenimiento">
<query>
SELECT DISTINCT ?nombreVideojuego (GROUP_CONCAT(DISTINCT ?nombrePlataforma; SEPARATOR=", ") AS ?plataformas)
WHERE {
?videojuego wdt:P31 wd:Q7889. # Videojuegos (clase)
?videojuego wdt:P123 ?plataforma. # Relación "plataforma"
?videojuego rdfs:label ?nombreVideojuego filter (lang(?nombreVideojuego) = "es").
?plataforma rdfs:label ?nombrePlataforma filter (lang(?nombrePlataforma) = "es").
}
GROUP BY ?nombreVideojuego
</query>
</pregunta>

<pregunta question="videojuego" type="genero" category="entretenimiento">
<query>
# Consulta para obtener los nombres únicos de los videojuegos y sus géneros
SELECT DISTINCT ?nombreVideojuego (GROUP_CONCAT(DISTINCT ?nombreGenero; SEPARATOR=", ") AS ?generos)
WHERE {
?videojuego wdt:P31 wd:Q7889. # Videojuegos (clase)
?videojuego wdt:P136 ?genero. # Relación "género"
?videojuego rdfs:label ?nombreVideojuego filter (lang(?nombreVideojuego) = "es").
?genero rdfs:label ?nombreGenero filter (lang(?nombreGenero) = "es").
}
GROUP BY ?nombreVideojuego
</query>
</pregunta>

<pregunta question="clubFutbol" type="estadio" category="deportes">
<query>
SELECT DISTINCT ?clubLabel (GROUP_CONCAT(DISTINCT ?estadioName; SEPARATOR=", ") AS ?estadios)
WHERE {
?club wdt:P31 wd:Q476028. # club (clase)
?club wdt:P115 ?estadio. # Relación "estadio"
?club rdfs:label ?clubLabel filter (lang(?clubLabel) = "es").
?estadio rdfs:label ?estadioName filter (lang(?estadioName) = "es").
}
GROUP BY ?clubLabel
</query>
</pregunta>
<pregunta question="tenista" type="paisNacimiento" category="deportes">
<query>
SELECT ?tenistaLabel ?paisNacimientoLabel
WHERE {
?tenista wdt:P106 wd:Q10833314. # Instancia de tenista
?tenista wdt:P19 ?paisNacimiento. # País de nacimiento
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],es". }
}
</query>
</pregunta>

<pregunta question="presidenteEspaña" type="fechaNacimiento" category="historia">
<query>
SELECT DISTINCT ?presidente ?nombreCompleto ?fechaNacimiento
WHERE {
?presidente wdt:P31 wd:Q5; # Filtrar por personas
wdt:P39 wd:Q844587; # Filtrar por posición: presidente del Gobierno de España
wdt:P569 ?fechaNacimiento; # Obtener fecha de nacimiento (opcional)
wdt:P1559 ?nombreCompleto.
SERVICE wikibase:label { bd:serviceParam wikibase:language "es". }
}
ORDER BY ?nombreCompleto
</query>
</pregunta>
<pregunta question="personasOviedo" type="fechaNacimiento" category="historia">
<query>
# Personalidades Nacidas en oviedo y su fecha de nacimiento
SELECT ?personLabel ?fNacimiento
WHERE {
?person wdt:P19 wd:Q14317.
?person wdt:P569 ?fNacimiento .
SERVICE wikibase:label { bd:serviceParam wikibase:language "es". }
}
</query>
</pregunta>
</preguntas>
Loading
Loading