Outdated
This material pertains to outdated versions of VIVO. Rather than archiving the material, it should be updated to reflect current versions of VIVO.
Publications
SELECT ?doi ?infoResource_label ?pmid $type ?journal ?issn ?pubVenue ?issue ?startPage ?endPage ?volume ?dateTime WHERE{ ?infoResource vivo:hasPublicationVenue ?pubVenue . ?pubVenue rdf:type bibo:Journal . ?infoResource rdf:type $anyType . ?infoResource bibo:doi ?doi . ?infoResource bibo:pmid ?pmid . ?infoResource bibo:pageStart ?startPage . ?infoResource bibo:pageEnd ?endPage . ?pubVenue bibo:issn ?issn . OPTIONAL { ?pubVenue bibo:volume ?volume } . OPTIONAL { ?pubVenue vivo:DateTimeValue ?dateTime } . OPTIONAL { ?pubVenue bibo:issue ?issue } . ?pubVenue rdfs:label ?journal . ?anyType rdfs:label ?type . ?infoResource rdfs:label $infoResource_label . }
Authors
SELECT ?infoResource_label ?type ?author ?firstName ?lastName ?position_label ?department ?pemail WHERE { ?infoResource vivo:hasPublicationVenue ?pubVenue . ?pubVenue rdf:type bibo:Journal . ?infoResource rdf:type ?anyType . ?anyType rdfs:label ?type . ?infoResource vivo:informationResourceInAuthorship ?authorship . ?authorship rdf:type vivo:Authorship . ?authorship vivo:linkedAuthor ?authorURI . ?authorURI rdfs:label ?author . ?infoResource rdfs:label ?infoResource_label . OPTIONAL { $authorURI foaf:firstName ?firstName } . OPTIONAL { $authorURI foaf:lastName ?lastName } . OPTIONAL { $authorURI vivo:primaryEmail ?pemail } . ?authorURI vivo:personInPosition ?position . ?position vivo:positionInOrganization $organization . ?organization rdfs:label ?department . ?position rdfs:label ?position_label .
People with less than five publications
In the query below we select people that have at least one publication, but less than five. VIVO uses "relatedBy" to associate people with authorships that indicate that the person is an author of the paper. Note that the query insures that ?person is a foaf:Person and ?a is a vivo:Authorship. relatedBy is used in other contexts so it is very important that we clarify which relatedBy assertions we are interested in.
SELECT ?person WHERE { ?person vivo:relatedBy ?a . ?person a foaf:Person . ?a a vivo:Authorship . } GROUP BY ?person HAVING (COUNT(?a) < 5)