Hallo zusammen,
bei der Entwicklung des Editors stehe ich grade vor der Entscheidung, wie ich Textknoten im XML speichere. Ich habe die Wahl zwischen CDATA und escapedText.
Aus Gründen der Performance möchte ich nicht erst jeden Knoten daraufhin untersuchen, ob er Tags (bspw. HTML) enthält, um dann CDATA und sonst escaped text zu verweden. Deshalb ist jetzt die Entscheidung, welche der beiden folgenden Configs der Editor sinnvollerweise ablegen soll:
Variante 1 - CDATA
Variante 2 - escaped Text:
Aufwand für die Editor-Entwicklung ist identisch 0 (muss zwischen einer von zwei PHP-Methoden wählen) - die Frage ist, was für den "hackwilligen User mit dem Texteditor" sinnvoller erscheint.
Grüße,
Julian
bei der Entwicklung des Editors stehe ich grade vor der Entscheidung, wie ich Textknoten im XML speichere. Ich habe die Wahl zwischen CDATA und escapedText.
Aus Gründen der Performance möchte ich nicht erst jeden Knoten daraufhin untersuchen, ob er Tags (bspw. HTML) enthält, um dann CDATA und sonst escaped text zu verweden. Deshalb ist jetzt die Entscheidung, welche der beiden folgenden Configs der Editor sinnvollerweise ablegen soll:
Variante 1 - CDATA
Code:
<?xml version="1.0" encoding="UTF-8"?> <pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="pure" xsi:noNamespaceSchemaLocation="./visu_config.xsd"> <meta> <plugins> <plugin name="colorchooser"/> <plugin name="diagram"/> <plugin name="upnpcontroller"/> </plugins> <mappings> <mapping name="Close_Open"> <entry value="0"><![CDATA[zu]]></entry> <entry value="1"><![CDATA[offen]]></entry> </mapping> <mapping name="Open_Close"> <entry value="0"><![CDATA[offen]]></entry> <entry value="1"><![CDATA[zu]]></entry> </mapping> <mapping name="Off_On"> <entry value="0"><![CDATA[Aus]]></entry> <entry value="1"><![CDATA[An]]></entry> </mapping> <mapping name="On_Off"> <entry value="0"><![CDATA[An]]></entry> <entry value="1"><![CDATA[Aus]]></entry> </mapping> <mapping name="KonnexHVAC"> <entry value="auto"><![CDATA[Auto]]></entry> <entry value="comfort"><![CDATA[Komfort]]></entry> <entry value="standby"><![CDATA[Stand By]]></entry> <entry value="economy"><![CDATA[Economy]]></entry> <entry value="building_protection"><![CDATA[Haus-Schutz]]></entry> </mapping> </mappings> <stylings> <styling name="Red_Green"> <entry value="0"><![CDATA[red]]></entry> <entry value="1"><![CDATA[green]]></entry> </styling> <styling name="Green_Red"> <entry value="0"><![CDATA[green]]></entry> <entry value="1"><![CDATA[red]]></entry> </styling> <styling name="Blue_Green_Red"> <entry range_min="-100" range_max="20"><![CDATA[blue]]></entry> <entry range_min="20" range_max="22"><![CDATA[green]]></entry> <entry range_min="22" range_max="100"><![CDATA[red]]></entry> </styling> </stylings> <statusbar> <status type="html"><![CDATA[<img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a> - <a href=".?forceReload=true">Reload</a> - <a href="?config=demo">Widget Demo</a>]]></status> <status type="html" hrefextend="config"><![CDATA[- <a href="check_config.php">Check Config</a>]]></status> </statusbar> </meta> <page name="Start"> <line/> <text align="center"><![CDATA[Welcome to the CometVisu!]]></text> <line/> </page> </pages>
Code:
<?xml version="1.0" encoding="UTF-8"?> <pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="pure" xsi:noNamespaceSchemaLocation="./visu_config.xsd"> <meta> <plugins> <plugin name="colorchooser"/> <plugin name="diagram"/> <plugin name="upnpcontroller"/> </plugins> <mappings> <mapping name="Close_Open"> <entry value="0">zu</entry> <entry value="1">offen</entry> </mapping> <mapping name="Open_Close"> <entry value="0">offen</entry> <entry value="1">zu</entry> </mapping> <mapping name="Off_On"> <entry value="0">Aus</entry> <entry value="1">An</entry> </mapping> <mapping name="On_Off"> <entry value="0">An</entry> <entry value="1">Aus</entry> </mapping> <mapping name="KonnexHVAC"> <entry value="auto">Auto</entry> <entry value="comfort">Komfort</entry> <entry value="standby">Stand By</entry> <entry value="economy">Economy</entry> <entry value="building_protection">Haus-Schutz</entry> </mapping> </mappings> <stylings> <styling name="Red_Green"> <entry value="0">red</entry> <entry value="1">green</entry> </styling> <styling name="Green_Red"> <entry value="0">green</entry> <entry value="1">red</entry> </styling> <styling name="Blue_Green_Red"> <entry range_min="-100" range_max="20">blue</entry> <entry range_min="20" range_max="22">green</entry> <entry range_min="22" range_max="100">red</entry> </styling> </stylings> <statusbar> <status type="html"><img src="icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a> - <a href=".?forceReload=true">Reload</a> - <a href="?config=demo">Widget Demo</a></status> <status type="html" hrefextend="config">- <a href="check_config.php">Check Config</a></status> </statusbar> </meta> <page name="Start"> <line/> <text align="center">Welcome to the CometVisu!</text> <line/> </page> </pages>
Grüße,
Julian
Kommentar