Person (E1)

language codelabeldescriptionaliasesedit
enPersonItem that represents and characterizes a person in the knowledgebaseedit
prefix skos: <http://www.w3.org/2004/02/skos/core#>
prefix schema: <http://schema.org/>
prefix wikibase: <http://wikiba.se/ontology#>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
prefix xsd: <http://www.w3.org/2001/XMLSchema#>
prefix wd: <https://geokb.wikibase.cloud/entity/>
prefix wdt: <https://geokb.wikibase.cloud/prop/direct/>

START = @<Person>

<Person> EXTRA wdt:P1 {
  	# is a wikibase Item
	rdf:type [wikibase:Item] ;

 	# Labels, description and aliases
    (rdfs:label rdf:langString ;
      skos:prefLabel rdf:langString ;
      schema:name rdf:langString ;
      schema:description rdf:langString? ;
      skos:altLabel rdf:langString* ;
    )+ ;

  	# Must be instance of person
 	wdt:P1 [ wd:Q3 ] ;
  	
  	# employer
 	wdt:P107 @<Organization> + ;
  
  	# affiliation
 	wdt:P108 @<Organization> + ;

  	# May have one or more reference URLs
  	wdt:P31 . ? ;

 	# May have one or more email addresses
  	wdt:P109 . + ;

	# May have one ORCiD (we only care to have a single ORCiD)
  	wdt:P106 xsd:string ? ;
}

# Organization instances must be in the subclasses of organization
<Organization> EXTRA wdt:P1 {
  wdt:P1 [ wd:Q4 ] * ;
}