[WLANnews] Neue API Version! Updated eure Dateien

Frank Rühlemann ruehlema at informatik.uni-luebeck.de
Di Jul 8 20:30:06 CEST 2014


Die bereitgestellte JSON-Datei muss dem Schema entsprechen, sonst ist
sie ziemlich nutzlos, denn sie kann von anderen nicht weiterverarbeitet
werden.

Ich glaube, du weißt nicht genau, wie JSON funktioniert. Schau dir das
mal bitte näher an, denn vorher macht eine Diskussion ohne Grundlage
keinen Sinn.

Der Typ ist enorm wichtig, damit die Daten weiterverarbeitet werden
können. Und ja, '2,3' ist möglich, aber dann ein String und keine Zahl.
Daher würden dann Skripte, die diese einlesen und verarbeiten wollen
daran scheitern.

Am 08.07.2014 19:48, schrieb Stephan Enderlein:
> Hi, 
> ich habe schon eine Idee, was man verändern kann.  Aber da das File von anderen gefüllt und bereit gestellt wird, muss klar sein, welche Werte verändert werden dürfen. 
> Bisher sind es nur Vermutungen und es steht eben zum Beispiel nirgends, daß ich den Typ nicht ändern darf, weil ich GPS als string in gradangaben verfügbar habe statt als Zahl. 
> da ich das File bereitstelle, kann ich auch zum Beispiel den Datentyp anpassen.  Wenn  es  read only ist, warum muss ich diesen Wert dann angeben? 
> Ebenso ist das nicht klar ob eine Zahl mit Punkt oder komma geschrieben werden kann /muss.  denn Daten können in hochkommas gesetzt werden (sollten es auch), damit es nicht zu Konflikten mit der json Struktur kommt. 
> Es gibt als Elemente, die als Hinweis oder zur Dokumentation dienen und es gibt Elemente, die die Werte aufnehmen. 
> Es ist nicht klar, welches wie verwendet werden soll. 
> Eine Möglichkeit wäre einen Präfix für die Elemente mit hinweisen zu verwenden. 
> Dann kann man leicht auch zum Beispiel unter api das enum mit einer Erklärung versehen.  denn hier könnte man auch vermuten, daß das File so wenige Daten enthält, daß es kompatibel zu den hier im Array angegeben Versionen ist. 
> und man weiß auch, welche Elemente man weglassen kann, da sie nur Hinweise sind und sich nicht ändern und ausgewertet werden. 
>
> Viele grüße 
> Stephan 
>
>
> On 8. Juli 2014 19:15:35 MESZ, "Frank Rühlemann" <ruehlema at informatik.uni-luebeck.de> wrote:
>> Das ist doch erkennbar gebaut, wenn man JSON einigermaßen verstanden
>> hat.
>>
>> Z.B sagt das hier klar, dass dieses Element "api" vom Typ String sein
>> muss und ausschließlich die Werte "0.1", "0.2.0", "0.2.1", "0.3.0",
>> "0.3.1", "0.3.2," oder "0.4.0" enthalten darf, ohne Wert wird "0.4.0"
>> angenommen und es ist zwingend anzugeben:
>>> "api": {
>>> "title": "API",
>>> "type": "string",
>>> "description": "The Freifunk Community API version you use",
>>> "enum": ["0.1", "0.2.0", "0.2.1", "0.3.0", "0.3.1", "0.3.2,",
>> "0.4.0"],
>>> "default": "0.4.0",
>>> "required": true
>>> },
>> Die Angaben sind als Meta-Informationen zu verstehen, die beschreiben,
>> was genau dort stehen darf und muss. Was du da hinschreibst, muss den
>> Anforderungen entsprechen. Und Nein, den Typ darfst du nicht einfach
>> ändern, denn sonst entspricht das nicht mehr der Vorgabe.
>>
>> Ja, "number" darf auch eine Fließkommazahl sein und da in JSON ein
>> Komma
>> Elemente trennt, ist es -- wie in 99% der Fälle der Informatik -- ein
>> Punkt, der die Trennung vornimmt. Was am Ende raus kommt, muss gültiges
>> JSON sein, welches die Vorgaben einhält.
>>
>> Schlüsselwörter darfst du gar nicht ändern, sondern die Stellen nach
>> gegebenen Kriterien ausfüllen.
>>
>> Am 08.07.2014 14:48, schrieb Stephan (Freifunk Dresden):
>>> Hi,
>>>
>>> das habe ich auch schon gesehen, aber leider beschreibt es nicht,
>> welche
>>> Felder welche werte annehmen können/dürfen/müssen, oder welche
>>> optional sind.
>>> Zum Beispiel weiss ich nicht ob ich die "Title" der einzelnen Objekte
>>> verändern darf oder
>>> muss. Oder ob "type" immer string sein muss oder es auch andere Werte
>>> gibt.
>>>
>>> Auch bei dem api-object ist nicht klar ob ich in dem enum alle
>>> versionen aufgeführt lassen muss, oder
>>> meine unterstützen versionen aufzählen soll (falls das überhaupt der
>>> sinn ist).
>>> Wozu gibt es dort den default Wert, wenn ein json nur eine bestimmte
>>> Version darstellen kann?
>>>
>>> Bei location wird als type "number" angegeben. Ich kann nur aus dem
>>> Beispiel vermuten, dass auch
>>> floating-point unterstützt ist und der Punkt als Komma verwendet
>> wird.
>>> zum Beispiel wird in nodeMaps der type als Array angegeben. aber es
>>> ist dort kein array definiert mit "[ ]".
>>> Bei "state" wird type als Object definiert, was aber einen ähnlichen
>>> Aufbau hat, nur dass dort nicht "Items" sondern
>>> "properties" verwendet wird.
>>>
>>> Nachwelchem Schema sind zum Beispiel "pattern" aufgebaut und welchen
>>> zweck erfüllen diese pattern?
>>> Muss ich diese definieren? oder soll ich da eine URL selber
>> einpflegen.
>>> Ich kann mir schon die Arbeit machen und den generator nutzen um dann
>>> herauszubekommen, was dieser dort generiert.
>>> Also welche felder er anders kodiert oder nicht verändert. Aber das
>>> ist leider nur eine Vermutung und keine
>>> spezifikation.
>>>
>>> Es ist für mich jedenfalls Unklar, welches Schlüsselwörter sind und
>>> nicht verändert werden darf oder wie die Wertebereiche
>>> und format der Daten definiert ist.
>>>
>>> Viele Grüße
>>> Stephan
>>>
>>> Am 08.07.2014 12:46, schrieb Frank Rühlemann:
>>>> Was du scheinbar suchst, befindet sich hier:
>>>> https://github.com/freifunk/api.freifunk.net/tree/master/specs
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> WLANnews mailing list
>> WLANnews at freifunk.net
>> Abonnement abbestellen? ->
>> http://lists.freifunk.net/mailman/listinfo/wlannews-freifunk.net
>>
>> Weitere Infos zu den freifunk.net Mailinglisten und zur An- und
>> Abmeldung unter http://freifunk.net/mailinglisten
> (Freifunk Dresden) 
>
>
> _______________________________________________
> WLANnews mailing list
> WLANnews at freifunk.net
> Abonnement abbestellen? -> http://lists.freifunk.net/mailman/listinfo/wlannews-freifunk.net
>
> Weitere Infos zu den freifunk.net Mailinglisten und zur An- und Abmeldung unter http://freifunk.net/mailinglisten

-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://lists.freifunk.net/pipermail/wlannews-freifunk.net/attachments/20140708/0f37d0f2/attachment-0001.html>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : 0x4682474F.asc
Dateityp    : application/pgp-keys
Dateigröße  : 3912 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.freifunk.net/pipermail/wlannews-freifunk.net/attachments/20140708/0f37d0f2/attachment-0001.key>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : smime.p7s
Dateityp    : application/pkcs7-signature
Dateigröße  : 4909 bytes
Beschreibung: S/MIME Cryptographic Signature
URL         : <http://lists.freifunk.net/pipermail/wlannews-freifunk.net/attachments/20140708/0f37d0f2/attachment-0001.bin>


Mehr Informationen über die Mailingliste WLANnews