2010-05-02 5 views
2

Si je regarde la page Freebase pour le groupe '311', je vois Chad Sexton listé.Get Members of Band

http://www.freebase.com/view/en/311

Je suis en train d'interroger les membres d'un groupe:

{ 
      "name" : "311", 
      "/music/artist/album" : [{"name":null, "id":null, "optional": true}], 
      "type|=" : ["/music/artist","/music/musical_group"], 
      "/award/award_winner/awards_won" : ["award":null, "optional" => true], 
      "/award/award_nominated_work/award_nominations" : ["award":null, "optional" => true], 
      "/music/artist/supporting_artists":[{}] 
} 

Je pensais que supporting_artists retourneraient les noms des membres de la bande, mais le tableau est toujours vide.

Mais si je demande pour toutes les propriétés liées à Chad Sexton, je ne vois pas 311 mentionné. Mais il est répertorié en tant que membre sur la page d'informations Web Freebase (ce qui est correct).

{ 
    "*": null, 
    "name": "Chad Sexton", 
    "type": "/music/artist" 
} 

Comment puis-je récupérer les noms des membres du groupe avec les informations de groupe?

+1

Avez-vous essayé de poser cette question sur le site Web de Freebase? Cela semble être une question plutôt spécifique ... –

Répondre

3

Si vous allez au edit page for 311, vous verrez que la propriété des artistes de support est vide. Les membres du groupe sont listés plus bas sur la page sous le Musical Group type.

Vous pouvez voir les membres de la bande dans votre requête en changeant pour ressembler à ceci:

{ 
    "name":   "311", 
    "/music/artist/album": [{ 
    "name":  null, 
    "id":  null, 
    "optional": true 
    }], 
    "type|=": [ 
    "/music/artist", 
    "/music/musical_group" 
    ], 
    "/award/award_winner/awards_won": [{ 
    "award": null, 
    "optional": true 
    }], 
    "/award/award_nominated_work/award_nominations": [{ 
    "award": null, 
    "optional": true 
    }], 
    "/music/musical_group/member": [{ 
    "member" : {} 
    }] 
}​ 

La raison pour laquelle vous devez interroger pour membre intérieur/musique/musical_group/membre est parce que Musical Group Membership est un Compound Value Type. Cela rend la requête un peu plus compliquée mais nécessaire pour modéliser correctement les relations complexes d'un groupe qui peut avoir de nombreux membres différents qui se joignent, quittent et changent de rôles tout au long de la vie du groupe.