Snap ik nu iets simpels niet?

Status
Niet open voor verdere reacties.

mirageel

Gebruiker
Lid geworden
10 mei 2010
Berichten
6
Ik heb het idee dat ik iets simpels overzie maar ik kom er niet uit.

Ik kom voor het eerst met XML in aanraking. Ik ben aan het leren met het boek XML de bassis, praktijkgebrichte training van Michiel van Otegem.
Ik ben op hoofdstuk 3, waarin start wordt gemaakt met uitleg van xsd schema en complex types.
daar staan oefeningen bij. Oefening waar ik mee bezig ben :
Een simpel documentje :

Code:
Oef3.xml :
<?xml version="1.0"?>
<auto>
	<model>Golf</model>
	<merk>Volkswagen</merk>
	<bouwjaar>2006</bouwjaar>
</auto>


en de opdracht is een xsd document wat je er bij moet maken. Die van mij ziet er zo uit :
oef3.xsd :
Code:
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<xsd:element name="auto" type="autoType" />
	
	<xsd:complexType name="autoType">
		<xsd:sequence>
			<xsd:element name="model" type="xsd:string" />
			<xsd:element name="merk" type="xsd:string" />
			<xsd:element name="bouwjaar" type="xsd:string" />
		</xsd:sequence>		
	</xsd:complexType>
</xsd:schema>

Daarna staat in het boek : valideer oef3.xml met het schema in oef3.xsd. Als alles goed is, zou het document geldig moeten zijn.

NU MIJN PROBLEEM
Er wordt in het boek wel gezegd dat je met het xsd bestand kunt valideren. Maar nergens vertelt de schrijver HOE je moet valideren.
Heb je er een programma voor nodig? Hoe kom ik dan aan dat programma?
Bij het boek zat geen CD-rom, en allleen een link waar je de listings en oefeningen uitgewerkt kunt downloaden. Dat zijn dus gewoon de codebestanden.

Ik moet dus blijbaar een valideer actie uitvoeren maar ik heb geen idee hoe ik dat moet uitvoeren. En dat staat dus niet uitgelegd.
 
@3747 dat valideert alleen je XML. Niet je XML gekoppeld aan het XSD-schema.

Voor het valideren van een XSD-schema moet je volgens mij een programma gebruiken. Ik gebruikte hiervoor Stylus Studio, hier is een demo van te downloaden en na even zoeken kun je natuurlijk ook cracks vinden. :P
 
@3747
zit er anders in het programma dat je gebruikt geen validate functie (file -> validate ofzo?)

Er stond dat ik gewoon Windows kladblok kon gebruiken om XML te schrijven. En dat doe ik dan ook.

Bij http://www.w3schools.com/dom/dom_validate.asp
kan ik die xsd niet invoeren zo te zien.

--------------
@5i5

Ik denk niet dat ik cracks ga zoeken. Heb ik ooit wel eens gedaan, maar geeft alleen een hoop troep.

In ieder geval bedankt voor de moeite.
 
Laatst bewerkt:
Hallo

ook ik ben onlangs begonnen in hetzelfde boek.
Op bladzijde 63 staat uitleg over validatie programma, maar vreemd genoeg wordt naar een site verwezen waar dat bewuste validatie programma niet tevinden is.

Ikzelf gebruik het gratis programma Notepad ++ (gelukkig in het Nederlands!) maar daarmee kun je niet valideren.
Dat schijnt alleen te kunnen met XMLspy, maar dat programma kost te veel in verhouding tot mijn gebruik en daarbij is het ook nog eens in het Engels. (ik heb een demo evaluatie van 30 dagen gedownload, maar ik kom er totaal niet uit)

Ik zoek dus net als u een simpel validatie programma, evenals een goede uitleg hoe je moet valideren.

Misschien kunnen we van elkaar leren.

met vr. groet

fwt.
 
Ik heb even snel een filmpje gemaakt met Stylus Studio om te laten zien hoe je je .xml document valideert met een .xsd schema. Ik hoop dat dat de boel opheldert.

http://ddaan.webuda.com/helpmij/mirageel/StylusStudio.swf
Wat in Notepad++ gebeurt is niet echt van belang, het was alleen om de regel te kopiëeren aangezien ik te lui ben om te typen. ;)

Ik heb ook even snel dit filmpje in XMLSpy gemaakt http://ddaan.webuda.com/helpmij/mirageel/XMLSpy.swf het programma verschilt weinig van Stylus Studio dus is het maar een kort filmpje.
 
Laatst bewerkt:
dank je wel voor je moeite,
maar beide bovenstaande links werken niet, ook niet het kopieren in mijn browser.
Doe ik iets verkeerd?

fwt
 
Je moet wel Flash geïnstalleerd hebben. Als je naar deze pagina gaat zou dit moeten zeggen welke versie je geïnstalleerd hebt.
 
Via mail heeft ook iemand op mijn vraag gereageerd. Dit was de reactie :

De beste tool die ik tot nu toe heb gebruikt is hier te vinden : http://architag.com/xray/

Verder is de Internet Explorer ontzettend goed in validatie en xml-verwerking. In de xml een verwijzing naar de xsd opnemen en dan openen met IE

==> wat ik me dus hierbij nog afvraag is hoe een verwijzing naar die xsd er uit moet zien in het xml bestand. Maar misschien wordt dat duidelijk in het vervolg van mijn boek.
 
Laatst bewerkt:
Internet Explorer (en andere internet browsers) valideren alleen je XML en niet je XSD. Ze kijken dus alleen of jij niet bent vergeten een tag af te sluiten of ergens een < bent vergeten. Om je XML bestand te laten controleren op je eigen restricties (die in je .xsd staan) moet je een programma gebruiken.

Ik ken het programma Architag niet, je kunt het proberen.

Een site waar ik zelf van aan heb qua uitleg is: http://w3schools.com/schema/schema_howto.asp

Een code om naar jouw .XSD-schema te verwijzen zou zijn (mits het .xsd-bestand in dezelfde map als het .XML-bestand staat):
Oef3.xml
Code:
<?xml version="1.0"?>
<auto xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="oef3.xsd">
	<model>Golf</model>
	<merk>Volkswagen</merk>
	<bouwjaar>2006</bouwjaar>
</auto>

oef3.xsd
Code:
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
	<xsd:element name="auto" type="autoType" />
	
	<xsd:complexType name="autoType">
		<xsd:sequence>
			<xsd:element name="model" type="xsd:string" />
			<xsd:element name="merk" type="xsd:string" />
			<xsd:element name="bouwjaar" type="xsd:string" />
		</xsd:sequence>		
	</xsd:complexType>
</xsd:schema>
 
Heel erg bedankt 5i5,

Het begint wat te worden geloof ik. Ik heb xray geïnstalleerd. Bij juiste syntax geeft ie een groene balk met opmerking well-formed

Bij wijziging van de auto-regel in :
<auto xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="oef3.xsd">

Geeft het programma groene balk met opmerking valid to XSD

En bij een met opzet een fout ingebracht (een fout dus op de regels van de xsd en geen syntax fout) geef ie een rode balk onderin met opmerking Error, een regelnummer met inhoud van de regel die fout veroorzaakt weergegeven.

Lijkt dus dat je wel wat kunt met dit programma.

Het is blijkbaar wel heel erg moeilijk voor schrijvers om helder uit te leggen wat XML behelst in zo´n boek wat hiervoor bedoeld is. Het blijft echt een gevecht om achter dit soort zaken te komen (en andere), en waar het nu eigenlijk om draait bij dat XML. Maar ik ga gewoon verder. Heb ook al op diverse sites die uitleg geven rondgekeken. Maar het blijft snel nog erg abstract. Zal eens kijken bij die w3schools.com die je aanraadt.
Want misschien lukt het dan toch om die baan te krijgen waar ze willen dat ik kennis van XML heb.
 
Laatst bewerkt:
Voor mij is het nog onduidelijk of het wat geworden is met Xray.
Vraag mij of of het programma niet goed werkt, of dat ik te veel fouten maak in mijn XSD, dan wel xml document.
Volg mijn boekje op, en kan echt fouten niet vinden.
Ik weet nu niet meer of ik aan mijn eigen kennis moet twijfelen of dat ik aan Xray moet twijfelen.

Heeft iemand ervaring met het programma?
 
Ik heb even snel XRay geïnstalleerd en bekeken. Ik was er niet echt kapot van, op zich gebeurt het valideren van het XML-bestand met het XSD-schema wel, maar fouten in het XSD-schema worden niet opgemerkt.
 
Ik heb even snel XRay geïnstalleerd en bekeken. Ik was er niet echt kapot van, op zich gebeurt het valideren van het XML-bestand met het XSD-schema wel, maar fouten in het XSD-schema worden niet opgemerkt.

Dat is dan weer apart. Om te testen had ik bij eerste bestand bewust fouten gemaakt, en die werden wel gezien.
Haalde ik mijn fouten er uit dan was bestand wel gevalideerd.
Maar ik krijg dus het probleem, dat ik opdrachten en listings uit mijn boek namaak, en juist niet gevalideerd krijg.

Ik heb het vooralsnog opgegeven, en ga gewoon door met leren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan