Mit Sax-Parser validieren

Status
Nicht offen für weitere Antworten.

BRT006

Aktives Mitglied
Hallo!

Auf welche Art kann ich dem SAX-Parser verklickern, gegen welches Schema bzw. DTD er validieren soll? Das dürfte wohl über die Properties gehen, welches wäre das denn?

THX,
Karsten
 

KSG9|sebastian

Top Contributor
f o r e n s u c h e


Code:
SAXBuilder builder = new SAXBuilder(
	"org.apache.xerces.parsers.SAXParser", true); // Überprüft die Wohlgeformtheit
builder.setFeature("http://apache.org/xml/features/validation/schema", true ); //Aktiviere Schema-Validation
builder.setProperty("http://apache.org/xml/properties/schema/external-noNamespaceSchemaLocation",
		 new File("XSD-Datei").getAbsolutePath()); 
try {
    InputStream in = this.getClass().getResourceAsStream("Umfrage.xml");
    InputSource src = new InputSource(in);
    Document doc = builder.build(src);
} catch (JDOMException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}
 

BRT006

Aktives Mitglied
Bedauerlicherweise kann ich Xerces nicht in das Projekt importieren, muss das also irgendwie anders realisieren, den von dir geposteten Ausschnitt hab ich schon gesehen. Außerdem wäre dann noch die Frage offen nach dem DTD.
 

Bleiglanz

Gesperrter Benutzer
BRT006 hat gesagt.:
Bedauerlicherweise kann ich Xerces nicht in das Projekt importieren, muss das also irgendwie anders realisieren, den von dir geposteten Ausschnitt hab ich schon gesehen. Außerdem wäre dann noch die Frage offen nach dem DTD.
JA UND?

Welchen SAX-Parser setzt du ein?
=> Homepage suchen
=> Features durchsehen

Welche JAVA Version?
=> in Java5 SAXParserFactory#setSchema
 

BRT006

Aktives Mitglied
Zugegeben, die Informationen waren recht spärlich. Sorry dafür. Eingesetzt wird Java 1.4 und nach Möglichkeit nichts zusätzliches. Mit Xerces hab ich eine Lösung gefunden, jedoch nicht mit 1.4-Bordmitteln. Und selbst beim Xerces hab ich keine Möglichkeit gefunden, ein DTD anzugeben anhand dessen validiert werden kann.

Ich nehme an dass es da irgendwelche Properties gibt, die ich setzen muss. Jedoch habe ich weder in der API noch bei google gefunden wie die heißen. Die alleine zu kennen würde mir wahrscheinlich schon weiterhelfen.

Wenn ich mit 1.4 einen Parser erzeuge

Code:
SAXParserFactory.newInstance().newSAXParser()

erhalte ich ein Objekt von org.apache.crimson.jaxp.SAXParserImpl

Wie sind hier die Properties für die Location eines DTD und eines Schemas?





So, ich hoffe ich habe das nun etwas treffender beschrieben. Danke schon mal...
 

Bleiglanz

Gesperrter Benutzer
vermute mal, dass der gute alte Crimson, der in der 1.4er dabei war überhaupt noch nicht in der Lage ist, gegen ein Schema zu validieren...

DTDs geht natürlich, aber dazu sollte dein Dokument eine DOCTYPE haben, geht alles automatisch, da brauchts keine Location
 

BRT006

Aktives Mitglied
Irgendwie hatte ich das befürchtet. Kennst du bei Xerces die Property für eine DTD-Location? Ich bekomme XML-Dokument und DTD aus unterschiedlichen Quellen und würde gern auf ein Manipulieren des XML-Dokuments vor dem Parsen verzichten. Der Doctype-Eintrag existiert darin nämlich nicht.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
pkm Gibt es XML-Parser-Bibliotheken XML & JSON 3
B XML-Daten mit SAX Parser verarbeiten in Java XML & JSON 4
MiMa SAX-Parser beenden? XML & JSON 5
K GSON-Parser XML & JSON 6
K XML-Parser vs. XLST XML & JSON 4
L DOM Parser Implementieren XML & JSON 9
M SAX Parser implementieren XML & JSON 2
E Gibt es denn einen XML-Parser für JUnit-Tests? XML & JSON 6
D XSD Parser XML & JSON 1
T Neuer XML Parser!!! XML & JSON 33
J XML Parser anhand xsd erzeugen XML & JSON 2
H SAX Parser optimieren XML & JSON 5
H Sax Parser verschluckt teile XML & JSON 11
C XML SAX Parser XML & JSON 10
R Handler-Wechsel, SAX Parser bricht nach 8192 Byte ab XML & JSON 5
B SAX-Parser - Dokumente einlesen und in einer Map ablegen XML & JSON 2
S Sax Parser Performance XML & JSON 2
M Eigener XML-Parser XML & JSON 1
S Typsicherer HTML-Parser XML & JSON 5
S HTML Parser XML & JSON 2
B Parser und Fabrik XML & JSON 6
F SAX Parser siehe nichts auf dem Konsole weder eine Fehlermeldung noch eine Ergebnis XML & JSON 6
enne87 SAX-Parser XML & JSON 5
C Mit SAX Parser XML Attribute auswerten XML & JSON 3
H XML-Parser: geparste Strings in Konstruktor? XML & JSON 9
S DOM Parser XML & JSON 12
S Sax Parser XML & JSON 3
D Speicherüberlauf bei character-Methode mit SAX-Parser XML & JSON 3
Y Welchen XML Parser / Klassen aus XSD generieren lassen XML & JSON 4
H Brauche ich einen speziellen XML-Parser? XML & JSON 2
M Unhierarchisches XML-File mit DOM-Parser auswerten XML & JSON 5
G XML Parser Fehler, zwei gleiche kind-Elemente XML & JSON 7
S Welcher XML-Parser am besten? XML & JSON 4
S Parser XML & JSON 2
S JAVA XML Parser der einen String parst XML & JSON 3
Noar XML-Parser mit GUI? XML & JSON 2
R Problem mit SAX-Parser characters() XML & JSON 7
K SAX Parser Character Puffer zu klein XML & JSON 2
Wildcard xpath Parser XML & JSON 8
X XML Schema Beziehungen validieren XML & JSON 1
M XML gegen XSD validieren (XMLReader) XML & JSON 4
G Mit Jaxb2Marshaller XML validieren XML & JSON 14
C Xml file gegen eine DTD validieren XML & JSON 3
G mit EMF gegen XML-Schema validieren XML & JSON 7
M XPath Ausdruck validieren XML & JSON 2
R 1.6 und validieren XML & JSON 2
L XML Datei validieren XML & JSON 6
D XML mit externem XSD validieren XML & JSON 8
T XML gegen DTD validieren XML & JSON 2
B Validieren meines XMLs mit meiner DTD funktioniert nicht XML & JSON 9
H XML mit externer DTD validieren XML & JSON 8
N XML Dokument mit DTD validieren XML & JSON 9
T XML mit Java gegen Schema validieren XML & JSON 6

Ähnliche Java Themen

Neue Themen


Oben