XML to XML Konverter

Status
Nicht offen für weitere Antworten.

PollerJava

Top Contributor
Hallo nochmal,

ich möchte mir einen XML to XML Konverter programmieren,
Meine beiden Frage wären jetzt folgende:

1. soll ich mir die ganze XML- Datei einlesen oder ist es besser, Zeile für Zeile zu lesen (geht ja glaub ich mit XPath oder so)

2. Da ich mich konzeptionell noch verbessern will, möchte ich fragen, welches Design Pattern man da verwenden kann/soll

Danke für die Antworten,

lg







Code:
Quell- XML:

<ALARM_GROUPS>
	<ALARM_GROUP NAME="Group 1" ID="1">		
		<TEXT_ITEM>
			<LANG_VALUE LANG="Default" TEXT="Alarm 1"/>
			<PROPERTIES>
				<PROPERTY P_NAME="AI_ACKN_POSSIBLE" VALUE="1"/>
				<PROPERTY P_NAME="AI_ACKN_NECESSARY" VALUE="1"/>
				<PROPERTY P_NAME="AI_ALLOW_ACK_WHILE_ACT" VALUE="1"/>
				<PROPERTY P_NAME="AI_BYPASS_ALL" VALUE="1"/>
				<PROPERTY P_NAME="AI_TRIGGERED_GR_A" VALUE="0"/>
				<PROPERTY P_NAME="AI_LATCHED_A" VALUE="0"/>
				<PROPERTY P_NAME="AI_DIS_PR_TRIGGERED" VALUE="0"/>
				<PROPERTY P_NAME="AI_DIS_PR_RESET" VALUE="0"/>
				<PROPERTY P_NAME="AI_DIS_PR_ACKN_RESET" VALUE="0"/>
				<PROPERTY P_NAME="AI_DIS_PR_ACKN" VALUE="0"/>
				<PROPERTY P_NAME="AI_DIS_PR_BYPASSED" VALUE="0"/>
				<PROPERTY P_NAME="AI_DIS_PR_NOT_BYPASSED" VALUE="0"/>
			</PROPERTIES>
		</TEXT_ITEM>

Ziel- XML:

<Element type="Alarme" 							id="0"				name="Alarme"> 
		<varID type="iArr" id="31"> 
			<State id="0">
				<bit>	  		    TEXT von oben           </bit>	 		
				<bit_group>         Group 1 von oben				</bit_group>
			</State>
			<State id="1">
				<bit>				Text	</bit>	
				<bit_group>         6								</bit_group>
			</State>
 

PollerJava

Top Contributor
Hallo nochmal zu diesem Thema,

ich frage mich gerade, wie ich das Programm am Besten aufbauen kann damit ich es sehr leicht erweitern kann aber nichts umprogrammieren muss,


ich dachte mir

1. das Einlesen der QuellenXML macht die Klasse1
2. das Zusammenstellen der jeweiligen Zeile macht die Klasse2
3. das hinausschreiben auf die ZielXML macht die Klasse3


ist das ok oder ist das Realisieren mit dem "STATE- Muster" (einlesen, zusammensetzen, auslesen) vielleicht besser der vielleicht das "Template- Muster" (abstrakte Methoden in der Template- Klasse für einlesen, zusammensetzen, auslesen),

bin da stark am grübeln und wäre sehr dankbar für Hilfe,

lg
 

tfa

Top Contributor
Hast Du Dir XSLT angesehen?
Du machst Dir ein XSLT-Template und lässt einen Transformator über die XML-Datei laufen.
Klassen werden da nicht implementiert.

tfa
 

thomator

Bekanntes Mitglied
Verstehe ich jetzt nicht. Wie Wildcard schon geschrieben hat sind doch dafür mächtige APIs vorhanden. JDom, XSLT und co. Warum willst Du das Rad neu erfinden? XSLT-Scripte kann man auch 'dynamisieren', also aus verschidenen Dateien zusammensetzen. Ist ja auch XML.
Und ich wage zu behaupten, das Apache und all die anderen, die sich damit seit Jahren beschäftigen, das performanter und zuverlässiger implementiert haben, als Du es in kurzer Zeit hinbekommen wirst.

EDIT: ui, war schon wieder jemand schneller :bae:
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben