Ich habe die Verbesserungen, wie im ersten Posting (testweise) eingecheckt.
Die neue Version ist voll rückwärtskompatibel mit dem Alten, nur dass der Zähler von Anzahl "Nukes" verlorengegangen ist, und dass der Benutzer der antiservices.xml benutzt eine "depreciated"-Warnung bekommt.
Einige Bemerkungen:
Kann man nicht die Funktionen in Breiche fassen, damit man nicht in
jeder Zeile die Action eintragen muss.
Default ist (falls kein action-Attribut vorhanden) "add" für services und myservices, "remove" in antiservices.xml. Habe ich "in Breiche fassen" richtig verstanden?
Kann man ich die Replace-Funktion auch zwei Namen einbauen, weil
man ja den Namen ersetzen möchte.
Es ist etwas anderes als bisher diskutiert. Es bedeutet, dass add/replace/remove auf basis ein Match (mann kann wahrscheinlich sogar reguläre Ausdrucke zulassen, ohne programmiermehraufwand) gemacht wird. Macht mann dies in zapit muss mann die ganze Tabelle durchsuchen. Ich möchte es nicht a priori ausschliesen, habe aber keine unmittelbare pläne es zu implementieren. Eine andere Möglichkeit wäre ein Präprozessor, siehe unten.
Siehe auch
diesen Beitrag für eine andere Möglichkeit Kanäle unzubenennen.
Code: Alles auswählen
<remove>
<channel name>
<PayTV>
<PayTV1>
<PayTV2>
<PayTV3>
</channel name>
<bouquet name>
<PayTV-HoppelsFinest>
</bouquet name>
</remove>
<replace>
<channel name>
<"ARD"="Das Erste">
</channel name>
</replace>
<add>
<transponder id="0437" onid="0001" frequency="394000000" inversion="2" symbol_rate="6900000" fec_inner="0" modulation="3">
<channel service_id="6d66" name="SubCH1" service_type="01"/>
<channel service_id="6d67" name="SubCH2" service_type="01"/>
<channel service_id="6d68" name="SubCH3" service_type="01"/>
</transponder>
</add>
Nein, ist nicht drin. Ein Vorteil mit dem jetztigen Schema ist dass es nur eine Struktur gibt. Werkzeuge um solche Files zu editieren gibt es. Des weiteres wäre es möglich, z.B. ein XML-DTD, sagen wir zapit-customitation, zu entwerfen, so dass ein Präprozessor myservices.xml aus, sagen wir, my-customization.xml und services.xml. So kann mann relativ einfach ein pattern-matcher machen, um z.B. "Das Erste" in "ARD" umzubenennen.