<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Ottima iniziativa!<br>
<br>
Putroppo non al posso vedere live perchè sono fuori da ninux al
momento.<br>
<br>
Sono contento che stai scrivendo la documentazione spero che cominci
ad andare di moda, mi ha permesso di vedere al volo come funziona e
di formulare alcuni consigli.<br>
<br>
Eccone alcuni che spero possano essere utili:<br>
<br>
* prefissi tipo "/api/v1" o "/api/v2" sono frequenti e molto utili
perchè permettono di mantenere API legacy che continuano a
funzionare in caso viene rilasciata una nuova versione dell'API che
non è backward compatibile<br>
* è più frequente incontrare API che restituiscono JSON di default
piuttosto che JSONP<br>
* una cosa utile è controllare il formato anche attraverso il
content-type header in modo che se apri l'API con il browser ti
mostra di default la versione HTML (che è un ottimo miglioramento di
usabilità per lo sviluppatore)<br>
* personalmente solo a livello di naming preferirei quindi
"/api/v1/semantic-data"<br>
* domanda: ma album, book, film, person si possono combinare o si
possono essere chiamati solo uno alla volta?<br>
<br>
Bella!<br>
<br>
PS: ho messo il router edge a casa, nei prossimi due mesi mi prendo
un NAS QNap<br>
<br>
<br>
On 03/05/2014 05:46 AM, Alessandro Gubitosi wrote:<br>
<span style="white-space: pre;">> Ciao a tutti,<br>
> mi serviva di fare questa classe per Ninuxoo così l'ho
aggiunta alle API<br>
> per condividerla con tutti.<br>
><br>
> Vi capita mai di fare un'applicazione e aver bisogno di
qualche dato da<br>
> Wikipedia pulito e filtrato? Magari giusto per non dover
passare qualche<br>
> settimana in meno sui codici a fare parser delle sue API o
peggio di<br>
> pagine html?<br>
> Beh, tana libera tutti, almeno per gli scopi in comune.<br>
> Grazie a questa "sciocchezzuola" ogni NAS avrà la stessa API<br>
> interrogabile liberamente per fare ricerche su Wikipedia e
ottenere in<br>
> cambio un bel po' di dati semantici (non ricorsivi) relativi
a quello<br>
> che si cerca.<br>
> Troppo complicato?<br>
> Ecco qualche esempio:<br>
> *
<a class="moz-txt-link-freetext" href="http://192.168.36.210/API/Semantic_data/?film=marchese%20del%20grillo">http://192.168.36.210/API/Semantic_data/?film=marchese%20del%20grillo</a><br>
> * <a class="moz-txt-link-freetext" href="http://192.168.36.210/API/Semantic_data/?album=the%20wall">http://192.168.36.210/API/Semantic_data/?album=the%20wall</a><br>
> *
<a class="moz-txt-link-freetext" href="http://192.168.36.210/API/Semantic_data/?format=array&person=Obama">http://192.168.36.210/API/Semantic_data/?format=array&person=Obama</a><br>
> * 192.168.36.210/API/Semantic_data/?person=Bo%20marley<br>
> *<br>
>
<a class="moz-txt-link-freetext" href="http://192.168.36.210/API/Semantic_data/?format=array&book=Commedia%20divina">http://192.168.36.210/API/Semantic_data/?format=array&book=Commedia%20divina</a><br>
><br>
> Il sorgente della classe è disponibile qui:<br>
>
<a class="moz-txt-link-freetext" href="https://github.com/gubi/Ninuxoo-2.0/blob/master/common/include/classes/get_semantic_data.class.php">https://github.com/gubi/Ninuxoo-2.0/blob/master/common/include/classes/get_semantic_data.class.php</a><br>
><br>
> La documentazione "dev" generata dai commenti nel codice sta
qui:<br>
> <a class="moz-txt-link-freetext" href="http://192.168.36.210/doc/classes/semantic_data.html">http://192.168.36.210/doc/classes/semantic_data.html</a><br>
><br>
> Qui un esempio di utilizzo del codice:<br>
>
<a class="moz-txt-link-freetext" href="https://github.com/gubi/Ninuxoo-2.0/blob/master/API/semantic_data.php">https://github.com/gubi/Ninuxoo-2.0/blob/master/API/semantic_data.php</a><br>
><br>
> E qui la documentazione sulle API:<br>
>
<a class="moz-txt-link-freetext" href="https://github.com/gubi/Ninuxoo-2.0/wiki/Ricerche-semantiche-su-Wikipedia">https://github.com/gubi/Ninuxoo-2.0/wiki/Ricerche-semantiche-su-Wikipedia</a><br>
><br>
><br>
> Naturalmente il tutto è già parte di Ninuxoo e sarà nativo in
ogni NAS,<br>
> ciò significa che se attiviamo i DNS Anycast le API saranno
pure quelle<br>
> anycast :D<br>
><br>
> L'unica pecca è il tempo necessario per caricare i risultati:
questo è<br>
> dato perché il parser "parsa molto" e poi anche perché
dbpedia è lenta<br>
> di suo.<br>
> Comunque un consiglio è quello di ricorrere al caching, che
non fa mai<br>
> troppo male ;)<br>
><br>
><br>
> Me la sono guadagnata questa prima assegnazione dell'IP
10.10.10.10 per<br>
> il mio proxy anycast? :D<br>
><br>
> Gubi<br>
><br>
><br>
><br>
> _______________________________________________<br>
> ninux-dev mailing list<br>
> <a class="moz-txt-link-abbreviated" href="mailto:ninux-dev@ml.ninux.org">ninux-dev@ml.ninux.org</a><br>
> <a class="moz-txt-link-freetext" href="http://ml.ninux.org/mailman/listinfo/ninux-dev">http://ml.ninux.org/mailman/listinfo/ninux-dev</a></span><br>
<br>
<br>
</body>
</html>