XSD Datei erstellen

davidh38

Bekanntes Mitglied
public static void main (String [] adil){

Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("xsd", new XSDResourceFactoryImpl());

XSDPrototypicalSchema schema = new XSDPrototypicalSchema();
schema.initializePrototypeSchema();
schema.saveSchema("C:\b.xsd");




}
unknown protocol: c

Hallo Leute, mein Code ist der Obige. Ich habe vor eine XSD-Datei zu erstellen, also erstmal einen prototypen und dann auszudrucken. Wo ist mein Fehler? Ich finde leider auch kein Tutorial, wie ich solche Klassen benutzen kann. Weiß jemand von euch Rat?
 
Zuletzt bearbeitet:

tagedieb

Top Contributor
Ich glaube du musst die File location im URI format uebergeben. scheme://filelocation.
Da du kein scheme(protocol) angegeben hast glaubt er 'C' waere das Protocol, dass er natuerlich nicht kennt.

Entweder du definierst die URI korrekt:
Java:
schema.saveSchema("file:/C:/b.xsd");

oder du laest dir laesst dir von File die richtige URI erzeugen:
Java:
schema.saveSchema(new File("C:\\b.xsd").toURI())
 

Wildcard

Top Contributor
[c]Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put(...)[/c]

Ich hoffe der Code ist ein Spaß?!?

Das ist Standalone EMF, wenn auch etwas umständlich geschrieben.

Mach mal so:

Java:
public class Snippet {

	public static void main(String[] args) {
		createXSDSchema();
	}
	
	public static XSDSchema createXSDSchema() {
		try {
			// Create a resource set to manage the different resources
			ResourceSet set = new ResourceSetImpl();
			set.getResourceFactoryRegistry().getExtensionToFactoryMap()
					.put("xsd", new XSDResourceFactoryImpl());

			// Create a resource for this file.
			Resource resource = set.createResource(URI
					.createFileURI("foobar.xsd"));
			// Create the root XSDSchema object
			XSDSchema xsdSchema = XSDFactory.eINSTANCE.createXSDSchema();
			// set the schema for schema QName prefix to "xsd"
			xsdSchema.setSchemaForSchemaQNamePrefix("xsd");
			// put the following namespace in the root schema namespace map
			// xsd:[url=http://www.w3.org/2001/XMLSchema]XML Schema[/url]
			xsdSchema.getQNamePrefixToNamespaceMap().put(
					xsdSchema.getSchemaForSchemaQNamePrefix(),
					XSDConstants.SCHEMA_FOR_SCHEMA_URI_2001);
			// We call updateElement to synchronize the MOF model with the
			// underlying DOM model
			// This should only have to be done after creating a new model

			// Add the root schema to the resource that was created above
			resource.getContents().add(xsdSchema);
			
			
			//now add some content
			XSDFactory factory = XSDFactory.eINSTANCE;
			XSDElementDeclaration elementDeclaration = factory.createXSDElementDeclaration();
			elementDeclaration.setName("Foobar");
			elementDeclaration.setTypeDefinition(xsdSchema.getSchemaForSchema().getSimpleTypeIdMap().get("string"));
			
			xsdSchema.getContents().add(elementDeclaration);
			
			// Save the contents of the resource to the file system.
			resource.save(Collections.EMPTY_MAP);
			return xsdSchema;
		} catch (Exception exception) {
			exception.printStackTrace();
		}
		return null;
	}
}


Das gibt dann

[XML]<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="Foobar" type="xsd:string"/>
</xsd:schema>
[/XML]

Du brauchst am Anfang etwas Boilerplate Code um das Schema und das ResourceSet zu initialisieren, danach ist es dann recht einfach mit XML Schema Infoset zu arbeiten.
 

grindelaner

Bekanntes Mitglied
Tutorial über erstellen eines XSD kannst du hier lesen:
JAXB zur XML-Verarbeitung

Was ich auch ganz interessant finde ist, wenn du maven verwendest ist das Plugin schemagen:

[XML]
<groupId>com.sun.tools.jxc.maven2</groupId>
<artifactId>maven-jaxb-schemagen-plugin</artifactId>
<version>1.2</version>
[/XML]
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Tags in XML Datei mit Java erstellen XML & JSON 3
U jar Datei mit ant erstellen XML & JSON 1
K XML Datei erstellen und Daten daraus in Java auslesen XML & JSON 6
D XML-Datei per Button erstellen XML & JSON 3
P (Eclipse)Ant Script, .jar Datei erstellen mit MANIFEST.MF XML & JSON 12
S Konforme XML Datei über XSD erstellen XML & JSON 2
ARadauer Aus XML Datei Objekte erstellen... XML & JSON 3
R JAXB: Aus einem Vector oder List XML Datei erstellen XML & JSON 1
M xml - datei erstellen XML & JSON 2
N neue XML-Datei erstellen mit vorhandener Struktur XML & JSON 18
L mit Java eine HTML-Datei erstellen XML & JSON 3
D JTree aus XML Datei erstellen & JTree wieder in XML spei XML & JSON 4
H XML-Datei mit SQL-Syntax erstellen und verwalten XML & JSON 4
T Newbie Frage.aus Java eine XML Datei erstellen? XML & JSON 7
J DTD aus xml Datei erstellen XML & JSON 4
S XML Datei speichern nicht möglich XML & JSON 13
M Objekt zu jsonArray in .json datei hinzufügen ? XML & JSON 3
J Object in JSON Datei einlesen und als neues Object erzeugen (in ein Object Array) XML & JSON 29
I Mit Hibernate eine XML-Datei in eine Tabellenspalte einlesen. XML & JSON 1
MiMa Buch Metadaten aus XML Datei parsen XML & JSON 48
J Auslesen der Länge einer XML-Datei in Android Studio XML & JSON 8
R xlsx-Datei mit Apache POI einlesen XML & JSON 18
S Validierung einer XML-Datei - Führende Leerzeichen und Tabs XML & JSON 10
S CSV Datei einlesen und XML Ausgeben XML & JSON 2
P wie kriege ich eine *.dtd Datei mit in die ausführbare *.jar? XML & JSON 2
K JAR-File mit XML-Datei XML & JSON 1
M Text eines Elements in XML Datei mit JAVA bearbeiten und kompletten Element-Zweig hinzufügen XML & JSON 16
I Liste in YAML Datei speichern und wieder auslesen XML & JSON 1
A Leeres Array beim Auslesen von XML-Datei XML & JSON 4
E JTreedaten in eine XML Datei speichern XML & JSON 3
D Int-Werte in XML-Datei schreiben (DOM) XML & JSON 2
B xsd-Datei ins jar file XML & JSON 5
T Formulardaten in XML Datei speichern XML & JSON 5
H Wsdl datei XML & JSON 2
D Große XML-Datei in einzel Dateien splitten XML & JSON 3
S Neue Inhalte in XML-Datei einfügen XML & JSON 0
S JDOM XML Datei darstellen Fehler! XML & JSON 2
S Xml File für den Aufbau einer anderen Xml Datei XML & JSON 6
M XML-Datei mit JAXB und 2 Namespaces XML & JSON 0
J XML - Datei wird nicht ganz angezeigt XML & JSON 2
Z XML Datei mit JDOM einlesen und verarbeiten XML & JSON 6
K Beim Parsen einer XML-Datei Connection timed out XML & JSON 4
E ResultSet als XML Datei speichern XML & JSON 7
M XStream, CSV Datei XML & JSON 9
A Frage zu bestehender XML Datei XML & JSON 6
A Simple Constructor Injection Datei-Pfad XML & JSON 6
K Einlesen eines Parameters aus HTML-Datei XML & JSON 4
Maxim6394 Lesen/Schreiben von XML Datei XML & JSON 9
A XML datei lesbar speichern (eingerückt) XML & JSON 7
M XML Datei Parsen XML & JSON 4
Airwolf89 HTML Datei mit SAXBuilder laden hängt sich auf XML & JSON 4
N Java Code aus XML Datei generieren XML & JSON 8
D Aus lesen einer XML-Datei ( 1 root, 3 childs) XML & JSON 7
D Wie XML Datei einlesen und HTML entities übernehmen? XML & JSON 3
R XLM Datei lesen Ändern (kompliziertes Search and Replace) und Speichern XML & JSON 12
K Kurze XML Datei Parsen XML & JSON 5
S XSD-Datei zulässige Werte auslesen XML & JSON 3
M XML Datei heapspace erreicht XML & JSON 3
M Große Datei auslesen/in dieser suchen XML & JSON 2
M RSS-Datei auslesen von Yahoo Webservice XML & JSON 4
T Inhalt einer .xml Datei auf Javaoberfläche wiedergeben XML & JSON 4
M XML Datei drucken XML & JSON 8
T Daten aus Programm in XML Datei speichern XML & JSON 2
L [SAX] Geschachtelte XML Datei parsen XML & JSON 3
E XML Datei mit DOM auslesen (Text mit Attributen) XML & JSON 2
G txt. Datei in xml datei konvertieren XML & JSON 21
K XML Datei in ein Java package „einbinden" XML & JSON 3
L Reihenfolge beim xml Datei parsen einhalten? XML & JSON 8
L xml Datei parsen ohne End-Tag XML & JSON 6
C if-Abfrage mit Datei Variable aus XML-Datei XML & JSON 2
sylo Beim Erzeugen einer XML Datei auch die XML Struktur erzeugen? XML & JSON 11
sylo DOM Document in XML Datei schreiben XML & JSON 5
F XML Datei in Java einlesen XML & JSON 4
J Objektstruktur aus XML-Datei erzeugen XML & JSON 21
D ID's aus XML Datei rauslesen und in Java ausgeben XML & JSON 7
E XML Datei einlesen und Elemente in der Console ausgeben XML & JSON 6
N value Wert einer XML Datei mit JAVA bearbeiten XML & JSON 21
N MalformedByteSequenceException bei Lesen aus XML Datei XML & JSON 2
H xml-Datei mit Attributen einlesen XML & JSON 3
A XML-Datei: Ab wann kritische Größe erreicht? XML & JSON 4
multiholle XML Datei elegant verarbeiten XML & JSON 14
M XMI-Datei auslesen XML & JSON 4
T Ließt keine XML Datei XML & JSON 2
J XML-Datei ein Array einlesen XML & JSON 10
T Wie einen String(XML Inhalt) in eine XML Datei speichern? XML & JSON 8
P Große XML Datei mittels JDOM bearbeiten / einlesen XML & JSON 6
H XML-Datei in einzelne XML-Dateien zerlegen XML & JSON 2
G Tags oder Zeilen der Not-Validen XML-Datei XML & JSON 7
C Suche in XML-Datei XML & JSON 6
D Zeilennummer in der XML - Datei XML & JSON 5
S Einlesen einer xml Datei XML & JSON 4
M Datei parsen XML & JSON 5
S PDF Erzeugung - Probleme mit der XML Datei bei Schema-Infos XML & JSON 2
S XML Datei einlesen, aber root überspringen XML & JSON 2
T Werte in XML Datei an entsprechender Stelle einfügen XML & JSON 3
Saxony unbekannte XML Datei parsen und ausgeben XML & JSON 10
L XML Datei in Java angeben Pfad? XML & JSON 3
A Mehrere Anwender sollen auf eine XML-Datei zugreifen XML & JSON 4
A SVG Datei auslesen und Batik XML & JSON 1
D XML Datei innerhalb einer JAR Datei parsen XML & JSON 2

Ähnliche Java Themen

Neue Themen


Oben