+ Antworten
Ergebnis 1 bis 4 von 4

Thema: Mehrere Namespace Ids für selben Namespace erlaubt?

  1. #1
    Frequent User Halbes Megabyte Themenstarter

    Registriert seit
    31.07.2013
    Ort
    Hamburg
    Fachbeiträge
    550
    Genannt
    56 Post(s)
    Blog-Einträge
    2
    Hallo Forum,

    ich muss gerade ein XML parsen und habe damit Schwierigkeiten wegen folgenden Phänomens:
    XML Code:
    1. <Element1 xmlns="http://eineUri" />
    2. <Element2 xmlns="http://eineAndereUri" />
    Es wird innerhalb des Dokuments also die Id für den Default-Namespace GEWECHSELT! Damit kommt mein Parsingprogramm (nicht selbst entwickelt, sondern Fremdsoftware) nicht zurecht. Ich finde es auch sehr merkwürdig, die Id zu wechseln. Am liebsten würde ich dem Lieferanten des XML das um die Ohren hauen. Ich weiß nur nicht, ob es evtl. sogar erlaubt ist? Der XML-Editor in Eclipse spuckt da jedenfalls keine Warnungen aus...

  2. #2
    Projekt-Moderator - Simple Reader Halbes Megabyte Avatar von schlingel
    Registriert seit
    31.07.2013
    Fachbeiträge
    603
    Genannt
    59 Post(s)
    Kannte ich auch nicht ist aber völlig valides XML: XML Name Defaulting

    Im schlimmsten Fall - falls Entwickler der Fremdsoftware das nicht als Bug akzeptieren - musst du dir einen preprocessor bauen der im Root-Element anstatt der jeweiligen Default-NS normale namespaces definiert und dann alle Elemente prefixed...
    Es gibt nichts Gutes, außer man tut es!

  3. Es bedanken sich:
    nillehammer (28.07.2015)
  4. #3
    Unregistered
    Gast/Guest
    Weit aus dem Fenster gelehnt, aber das scheint in Ordnung zu sein.

    Um welche XML Version geht es denn (1.0 oder 1.1) ?

    Element1 gehört zu eineUri
    Element2 gehört zu eineAndereUri

    sogar

    XML Code:
    1. <Element1 xmlns="http://eineUri">
    2.   <Element2 xmlns="http://eineAndereUri">
    3.     <Element3 />
    4.   </Element2>
    5. </Element1>

    Element1 gehört zu eineUri
    Element2 + 3 gehören zu eineAndereUri

    Default Namespace wirkt sich auf die Kinder aus, daher Element1 und Element2 sibblings sind, spielt das mehr oder weniger keine Rolle.

  5. Es bedanken sich:
    nillehammer (28.07.2015)
  6. #4
    Frequent User Halbes Megabyte Themenstarter

    Registriert seit
    31.07.2013
    Ort
    Hamburg
    Fachbeiträge
    550
    Genannt
    56 Post(s)
    Blog-Einträge
    2
    Danke für die Bestätigung. Ich habe daraufhin nach Möglichkeiten gesucht, den Namespace zu ignorieren. In XPath/XQuery geht das mit dem Suchpräfix "*:". Weil der Namespace sich auf die Kinder vererbt (wie schon geschrieben), muss der Präfix vor JEDEN Node-Namen im Pfad. Nicht schön, aber geht...

+ Antworten Thema als "offen" markieren

Direkt antworten Direkt antworten

Welche Farbe hat im Allgemeinen das Blut von Säugetieren?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. subtraktion aus funktion eliminieren erlaubt?
    Von mymaksimus im Forum Theoretisches
    Antworten: 7
    Letzter Beitrag: 17.01.2015, 10:05
  2. (JavaFX) Mehrere Actions
    Von groggy im Forum AWT, Swing, JavaFX & SWT
    Antworten: 10
    Letzter Beitrag: 07.01.2014, 22:34
  3. Flight Simulator FLP Auslesen erlaubt
    Von Andy16823 im Forum Dotnet-Forum
    Antworten: 4
    Letzter Beitrag: 01.01.2014, 21:41
  4. JDK 6 und JDK 7 am selben PC zum Laufen bringen
    Von Bevau im Forum Java-Grundlagen
    Antworten: 5
    Letzter Beitrag: 06.04.2012, 18:12
  5. "Lücke im Linux-Kernel erlaubt Root-Zugriff"
    Von L-ectron-X im Forum Sicherheit
    Antworten: 0
    Letzter Beitrag: 05.11.2009, 09:32

Stichworte

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •