...
- Obtención de los autores de un artículo en orden por posición del investigador :
Bloque de código |
---|
|
select ?posicion ?autor ?nombreAutor ?emailAutor ?orcidAutor from <http://gnoss.com/b836078b-78a0-4939-b809-3f2ccf4e5c01>
where
{
?doc a 'document'.
?doc <http://purl.org/ontology/bibo/authorList> ?listAuthor.
?listAuthor <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?autor.
?listAuthor <http://www.w3.org/1999/02/22-rdf-syntax-ns#comment> ?posicion.
?autor <http://xmlns.com/foaf/0.1/name> ?nombreAutor.
OPTIONAL{?autor <http://w3id.org/roh/ORCID> ?orcidAutor .}
OPTIONAL{?autor <https://www.w3.org/2006/vcard/ns#email> ?emailAutor .}
FILTER(?doc =<"""+id_articulo+""">)
}order by asc(?posicion) |
...
Bloque de código |
---|
|
select ?doc from <http://gnoss.com/b836078b-78a0-4939-b809-3f2ccf4e5c01>
where
{
?doc a 'document'.
?doc <http://w3id.org/roh/scientificActivityDocument> <http://gnoss.com/items/scientificactivitydocument_SAD2>.
?doc <http://w3id.org/roh/isValidated> 'true'.
?doc <http://purl.org/ontology/bibo/authorList> ?listAuthor.
?doc <http://purl.org/dc/terms/issued> ?fecha.
BIND(?fecha/10000000000 as ?anioFecha).
?listAuthor <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?person.
"""+filtro_investigador+"""
FILTER(?anioFecha in ("""+periodo+"""))
} |
donde, filtro_investigador es el filtro que indica el identificador del investigador, puede ser personaRef, email u ORCID, como se puede ver en las queries anteriores.
Proceso 3 : Automatización de procesos de gestiones documentales parametrizables
...
- Obtener patentes de un investigador:
Bloque de código |
---|
|
select ?doc from <http://gnoss.com/b836078b-78a0-4939-b809-3f2ccf4e5c01>
where
{
?doc a 'patent'.
?doc <http://w3id.org/roh/isValidated> 'true'.
?doc <http://purl.org/ontology/bibo/authorList> ?listAuthor.
?doc <http://purl.org/dc/terms/issued> ?fecha.
BIND(?fecha/10000000000 as ?anioFecha).
?listAuthor <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?person.
"""+filtro_investigador+"""
FILTER(?anioFecha in (2010,2011,2013,2015,2018,2020))
} |
- Obtener título y fecha de una patente utilizando su identificador:
Bloque de código |
---|
|
select ?titulo ?fechaPublicacion from <http://gnoss.com/b836078b-78a0-4939-b809-3f2ccf4e5c01>
where
{
?doc a 'patent'.
?doc <http://w3id.org/roh/title> ?titulo .
OPTIONAL{?doc <http://purl.org/dc/terms/issued> ?fecha. }
FILTER(?doc =<"""+id+""">)
} |
- Obtener lista de autores de una patente utilizando su identificador:
Bloque de código |
---|
|
select ?posicion ?autor ?nombreAutor ?emailAutor ?orcidAutor from <http://gnoss.com/b836078b-78a0-4939-b809-3f2ccf4e5c01>
where
{
?doc a 'document'.
?doc <http://purl.org/ontology/bibo/authorList> ?listAuthor.
?listAuthor <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?autor.
?listAuthor <http://www.w3.org/1999/02/22-rdf-syntax-ns#comment> ?posicion.
?autor <http://xmlns.com/foaf/0.1/name> ?nombreAutor.
OPTIONAL{?autor <http://w3id.org/roh/ORCID> ?orcidAutor .}
OPTIONAL{?autor <https://www.w3.org/2006/vcard/ns#email> ?emailAutor .}
FILTER(?doc =<"""+id+""">)
}order by asc(?posicion) |
donde, filtro_investigador es el filtro que indica el identificador del investigador, puede ser personaRef, email u ORCID, como se puede ver en las queries anteriores.
Proceso 4 : Sistemas Inteligentes de encaje entre convocatorias e investigadores
- Obtención de grafo de colaboración:
Bloque de código |
---|
|
SELECT ?person ?nombre ?email count(distinct ?documento) as ?colaboracionesDocumentos count(distinct ?proy) as ?colaboracionesProyectos
count(distinct ?documento) + count(distinct ?proy) as ?totalColaboraciones
from <http://gnoss.com/b836078b-78a0-4939-b809-3f2ccf4e5c01>
WHERE
{
?person a 'person'.
?person foaf:name ?nombre.
?person <https://www.w3.org/2006/vcard/ns#email> ?email
{
?documento <http://purl.org/ontology/bibo/authorList> ?listaAutoresA.
?listaAutoresA <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?personaBuscar.
?documento a 'document'.
?documento <http://purl.org/ontology/bibo/authorList> ?listaAutores.
?listaAutores <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?person.
}
UNION
{
?proy <http://w3id.org/roh/membersProject> ?personaBuscar.
?proy a 'project'.
?proy <http://w3id.org/roh/membersProject> ?person.
}
FILTER(?person != ?personaBuscar)
?personaBuscar a 'person'.
?personaBuscar <https://www.w3.org/2006/vcard/ns#email> ?emailPersonaBuscar.
FILTER( ?emailPersonaBuscar="""+"'"+investigador_email+"'"+""")
}order by desc(?totalColaboraciones) |
- Obtención de la lista de investigadores:
Bloque de código |
---|
|
select ?person ?nombrePersona ?email from <http://gnoss.com/document.owl> from <http://gnoss.com/person.owl> from <http://gnoss.com/taxonomy.owl>
where {
?doc a <http://purl.org/ontology/bibo/Document>.
?doc <http://purl.org/ontology/bibo/authorList> ?autor.
?autor <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?person.
?person <http://xmlns.com/foaf/0.1/name> ?nombrePersona.
?person <https://www.w3.org/2006/vcard/ns#email> ?email.
}GROUP BY ?email
|
- Obtención de los datos de una persona dado su identificador "personaRef":
Bloque de código |
---|
|
select ?person ?identifier ?nombrePersona ?email from <http://gnoss.com/document.owl> from <http://gnoss.com/person.owl> from <http://gnoss.com/taxonomy.owl>
where {
?doc a <http://purl.org/ontology/bibo/Document>.
?doc <http://purl.org/ontology/bibo/authorList> ?autor.
?autor <http://www.w3.org/1999/02/22-rdf-syntax-ns#member> ?person.
?person <http://w3id.org/roh/crisIdentifier> ?identifier.
?person <http://xmlns.com/foaf/0.1/name> ?nombrePersona.
?person <https://www.w3.org/2006/vcard/ns#email> ?email.
FILTER(?email='"""+email+"""')
}GROUP BY ?email
|