When performing a search, the search score is incorrect. The first entry has a search score of null, and the remaining search results have the score of the result previous.
I was playing around with JavaFX (LocalSearch example), and this code always has the search score of the previous person in the list:
var proxy : FSAPIClient = new FamilySearchProxy("http://www.dev.usys.org",
"api-user-1009", "f8cc", "<devkey>");
try {
var xml = proxy.authenticate(true);
var myquery = URLEncoder.encode(name);
xml = proxy.searchByQuery("/familytree/v1/search?name={myquery}", false);
var parser:XmlGedcom = new XmlGedcom();
parser.setProxy(proxy);
println(xml.replaceAll("><", ">\n<"));
var l:DefaultXmlListener = new DefaultXmlListener();
var el:ErrorListener = new ErrorListener();
l.setTag("PERSON");
parser.clearListeners();
parser.addListener(l);
parser.addListener(el);
parser.parseXml(xml);
var people : List = l.getResults();
for ( entry in people) {
var pEntry:XG_Person = entry as XG_Person;
var person = Restaurant {
title:pEntry.getPrimaryName().getFullText();
address:pEntry.getBirthAssertion().getDate().getOriginal();
city:pEntry.getBirthAssertion().getPlace().getOriginal();
phone:pEntry.getId();
}
println(pEntry);
person.rating = Rating{averageRating:pEntry.getSearchScore()}
println(person.rating);