forked from edward/owl-map
		
	New method to get IsA details for item
This commit is contained in:
		
							parent
							
								
									f291ce993e
								
							
						
					
					
						commit
						38e23ec8cc
					
				| 
						 | 
				
			
			@ -146,6 +146,18 @@ class Item(Base):
 | 
			
		|||
 | 
			
		||||
        return dict(d) or None
 | 
			
		||||
 | 
			
		||||
    def get_isa(self):
 | 
			
		||||
        isa_list = []
 | 
			
		||||
        of_property = "P642"
 | 
			
		||||
        for claim in self.claims.get("P31", []):
 | 
			
		||||
            qualifiers = claim.get("qualifiers", {})
 | 
			
		||||
            if "datavalue" in claim["mainsnak"]:
 | 
			
		||||
                isa_list.append(claim["mainsnak"]["datavalue"]["value"])
 | 
			
		||||
            for of_qualifier in qualifiers.get(of_property, []):
 | 
			
		||||
                if "datavalue" in of_qualifier:
 | 
			
		||||
                    isa_list.append(of_qualifier["datavalue"]["value"])
 | 
			
		||||
        return isa_list
 | 
			
		||||
 | 
			
		||||
    def get_isa_qids(self):
 | 
			
		||||
        return [v["id"] for v in self.get_claim("P31") if v]
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue