Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: WolfgangR Newsgroups: de.comp.lang.java Subject: Re: Validierung GPX-Datei mit Xerces/SAX Date: Mon, 22 Apr 2019 12:17:52 +0200 Lines: 70 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Trace: individual.net TYt+hLJGhi9Z2/ed1WMVRAf93EnopMoMRxaPucds6PmVmvKmtv Cancel-Lock: sha1:3Rx69nSozvqJvVsXXCbMWvDL6mY= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 In-Reply-To: Content-Language: de-DE Xref: csiph.com de.comp.lang.java:13241 Hi Alle, Beim Parsen (mit Validierung) einer gpx-Datei bekomme ich folgende=20 Fehlermeldung: [Error] Current_2019.03.30.gpx:2:5: Document is invalid: no grammar found= =2E [Error] Current_2019.03.30.gpx:2:5: Document root element "gpx", must=20 match DOCTYPE root "null". Der Anfang der gpx-Datei sieht so aus: Garmin International =2E.. Umgebung: Debian Testing Openjdk 11 Der entsprechende Code lautet: try { Writer out =3D new OutputStreamWriter( System.out ); SAXParserFactory factory =3D SAXParserFactory.newInstance(); factory.setNamespaceAware( true ); SAXParser saxparser =3D factory.newSAXParser(); ContentHandler handler =3D new GarminGpxHandler( out ); =09 XMLReader reader =3D saxparser.getXMLReader(); reader.setContentHandler( handler ); reader.setFeature("http://xml.org/sax/features/validation", true); // Parse InputSource inputSource =3D new InputSource( inputfile ); reader.parse(inputSource); out.flush(); } catch( IOException ioe ) {...} catch( ParserConfigurationException e ) {...} catch( SAXException e ) {...} Meine Probleme / Fragen: (1) Da der Garmin etrex30 einige unbenutzte und unbenutzbare=20 xmlns-Angaben in die Datei einf=C3=BCgt, musste ich sie manuell bearbeite= n. Vorher verweigerte Xerces die Arbeit. Habe ich dabei etwas falsch gemacht? (2) Um das Root-Element richtig zu verdauen, muss ich wohl noch eine=20 =C3=84nderung im Java-Code vornehmen. Ich wei=C3=9F aber nicht, wo ich eine Anleitung oder Dokumentation zur=20 Verarbeitung von Dokumenten finde, deren Root-Element nicht "