[linux-l] Re: Wiki-Grundsatz-Diskusion

Rocco Rutte pdmef at cs.tu-berlin.de
Mi Mai 10 17:12:44 CEST 2006


Hi,

* Peter Ross [06-05-10 23:03:39 +1000] wrote:
>On Thu, 4 May 2006, Volker Grabsch wrote:

>>Aber auch hier das Problem, dass Wiki-Besonderheiten nicht eingepflegt
>>werden können. Seien es Bedingungen an das Format der Seiten, seien
>>es Echtzeit-Benachrichtigungen, oder sonst irgendwas.

>Versionskontrollen haben Triggerscripte. Hier koennen Plausibilitaetspruefungen, Lockingprobleme und Benachrichtigungen 
>stattfinden.

>Das waere auch ein Ort fuer die "XML-Normalisierung", um festzustellen, was denn wirklich geaendert wurde oder wo jemand nur die 
>Tags eingerueckt hat.

>Das sind Dinge, die Du beim Einpflegen brauchst, aber nicht beim Dump.

ACK.

>>Nun bleibt also die Frage, was am Wiki-Protokoll so speziell ist.

>>Man könnte Teilaufgaben an NNTP und ein einheitliches SCM-Protokoll
>>delegieren,

>Wenn, wie oben als Beispiel mit den Triggerskripten genannt, die gesamte Logik in das SCM verlagert werden kann, kann man mit 
>einem SCM-Client drauf zugreifen (z.B. mit Eclipse).

>Wenn das nicht klappt, und man etwas "drueberlegen" muss, darf man die untere Schnittstelle nicht nach aussen anbieten - ansonsten 
>umgeht man Kontrollmechanismen und alles wird inkonsistent.

ACK.

>Die Triggerskripte gehoeren zur Spezifikation des Wikis dazu, da sie Funktionalitaet des Wikis beschreiben.

>Tja, eine einheitliche SCM-Schnittstelle waere wirklich fein.

Da würde ich intern einfach vom SCM abstrahieren und eine interne 
Schnittstelle bauen, ala 'scm add', 'scm rename' etc. und das dann 
auslagern in Backendmodule, die dann die eigentliche Arbeit machen. 
Diese Module können dann wiederum interne APIs nehmen, um das XML zu 
normalisieren, etc. In den meisten Fällen sollten die Trigger nur 
Shellscripte sein, die sich dann im Inhalt unterscheiden, weil alle eben 
andere Argument kriegen.

Zum Beispiel: in git_check_xml_norm.sh kann man schreiben:

   write_new_file_to_tempfile
   write_current_file_to_tempfile
   call internal scm_check_xml_normalize script

und das Normalisierungsscript guckt dann eben nur auf 2 Dateien. Je nach 
SCM unterscheiden sich da nur die ersten beiden Aufrufe.

Man kann ja mit einem anfangen und relativ früh ein zweites nehmen, um 
zu sehen, ob die API Sinn macht.

>Ich wuerde mich hier erst einmal versuchen, bevor ich mich auf ein den Monolithen Wiki abdeckendes vollstaendiges Neudesign einer 
>Wiki-Sprache werfe.

ACK.

   bye, Rocco
-- 
:wq!



Mehr Informationen über die Mailingliste linux-l