*  @return the list of links used in the page
     *  @throws IOException if a network error occurs
     *  @since 0.24
     */
    public String[] getLinksOnPage(String title) throws IOException
    {
    	StringBuilder url = new StringBuilder(query);
        url.append("prop=links&pllimit=max&titles=");
        url.append(URLEncoder.encode(normalize(title), "UTF-8"));
        String plcontinue = "";
        ArrayList<String> links = new ArrayList<String>(750);
        do
        {
            if (!plcontinue.isEmpty())
            {
                url.append("&plcontinue=");
                url.append(plcontinue);
            }

            String line = fetch(url.toString(), "getLinksOnPage");

            // strip continuation
            if (line.contains("plcontinue"))
                plcontinue = URLEncoder.encode(parseAttribute(line, "plcontinue", 0), "UTF-8");
            else
                plcontinue = null;

            // xml form: <pl ns="6" title="page name" />
            for (int a = line.indexOf("<pl "); a > 0; a = line.indexOf("<pl ", ++a))
                links.add(decode(parseAttribute(line, "title", a)));
        }
        while (plcontinue != null);
        
        int size = links.size();
    	log(Level.INFO, "Successfully retrieved links used on " + title + " (" + size + " links)", "getLinksOnPage");
    	return links.toArray(new String[size]);
    }