[XSD] hoe verwijzen naar LOCAL! xsd

Pagina: 1
Acties:

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
ik wil verwijzen naar een locale XSD bestand zonder dat ik hem op een webserver moet neerzetten. Hoe krijg ik dit voor elkaar?? Of is dit niet mogelijk?

ps: is geirriteerde XML noob..

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Alarmnummer: ps: is geirriteerde XML noob..
* mbravenboer gaat je verplichten om de slides op http://www.xfront.com te bekijken :P .

Slides 21, 22, 133

Overigens kan het eigenlijk alleen echt fraai met Catalog files, maar dat is nogal wat uitgezoek. Als je het wilt gebruiken kan ik je wel een goede link geven....

Alle URI's worden trouwens opgezocht via een URIResolver. Als het niet blijft werken kan je even snel implementeren voor jouw situatie :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
ik ben eerlijk gezegd al behoorlijk zat van XML. Het is waardeloos gedocumenteerd. Overal liggen tutorials verspreid die maar kleine stukjes duidelijk maken. Om met XML te beginnen is een nachtmerrie voor een programmeur.

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Kijk ook even hier:
http://www.xml.com/pub/a/2000/11/29/schemas/part1.html?page=9

Kijk ook eens in je oude topic:
[topic=348193/1/25]

http://www.sun.com/software/xml/developers/resolver/article/

Volgens mij is alles gewoon een URI, dus het hangt van je resolver af wat hij wel en niet weet op te pikken.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Alarmnummer: ik ben eerlijk gezegd al behoorlijk zat van XML. Het is waardeloos gedocumenteerd.
* mbravenboer is kritiek van je gewend, dus trekt zich er niet zoveel van aan ;) .
Overal liggen tutorials verspreid die maar kleine stukjes duidelijk maken.
Tja, met alles uitleggen maak je ook geen vrienden ;) .
Om met XML te beginnen is een nachtmerrie voor een programmeur.
Het is inderdaad wel een complexe wereld met veel termen en exacte specificaties. Die exactheid maakt het echter ook aantrekkelijk.

Ik zal nog even kijken of ik echt iets goed kan vinden.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Zie overigens ook dit stuk:

http://lists.oasis-open.org/archives/entity-resolution/200101/msg00046.html
In Structures, 6.3.2 How schema definitions are located on the Web [6], it says: [xsi:schemaLocation] records the author's warrant with pairs of URI references (one for the namespace URI, and one for a hint as to the location of a schema document defining names for that namespace URI). [xsi:noNamespaceSchemaLocation] similarly provides a URI reference as a hint as to the location of a schema document with no targetNamespace.

The problem is that each member of schemaLocation and the value of noNamespaceSchemaLocation is required to be a URI. Furthermore, the members are undelimited and separated by spaces, and public identifiers can contain spaces.
Dat is een serieus probleem waaraan ik ook zat te denken bij jouw vraag. Je kunt dus simpelweg geen XML Catalog gebruiken om public ids te resolven.

Merk op hoe ontzettend veel verband dit heeft met mijn topic:

[topic=357923/1/25]

Alle problemen worden veroorzaakt door constructies in attributen waar ik altijd al tegen ben geweest.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
deze ben ik nu aan het doorploegen en ik zie dat andere mensen dit probleem ook al zijn tegengekomen.

http://www.sun.com/software/xml/developers/resolver/article/

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024
Aha.. ik zie dus dat die catalogs mijn probleem oplossen. Maar zit standaard al in JDom? (Deze gebruikt geloof ik weer Sax.. en Sax heeft weer Xalan toch? *kijkt nu beetje verdwaasd uit zijn ogen* )

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Alarmnummer: Aha.. ik zie dus dat die catalogs mijn probleem oplossen.
In principe wel, maar helaas in dit geval ook niet (zie de quote hier boven). Catalogs combineren public identifiers met verwijzingen naar lokale bestanden in de Catalog file. Dat werkt allemaal uitstekend en is de oplossing voor het 'waar vind ik m'n PUBLIC id probleem'.

Helaas gaat dat in dit geval niet. Public identifiers bevatten namelijk spaties. Helaas hebben ze er voor XML Schema instanties voor gekozen om een soort structuur in attributen op te nemen (ja, was XML niet juist voor structuur?) waarbij er in 'tokens' om en om een namespace en een schema locatie worden gebruikt.

Als je dus namespaces gebruikt gaat dit niet werken. Wellicht werkt het echter wel als je de noNamespace variant gebruikt.

Je kunt misschien beter eventjes de file: oplossing gebruiken en dit eventueel combineren met een eigen URI Resolver (das gewoon een interface die je kunt implementeren).
Maar zit standaard al in JDom?
Het staat los van JDOM: die Catalog files kan je gebruiken via een implementatie van de URI Resolver. Deze resolved dat je public id's door ze op te zoeken in de catalog. Vrij eenvoudig, maar effectief systeem dus :) .
Deze gebruikt geloof ik weer Sax..
JDOM staat los van een specifieke parser. Je kunt op heel veel manier een JDOM opbouwen. JDOM staat zelfs los van validatie en URI-resolving: dit gebeurt allemaal op een ander niveau. Hierdoor kan je dus mooi alles gebruiken in combinatie met JDOM.
en Sax heeft weer Xalan toch? *kijkt nu beetje verdwaasd uit zijn ogen* )
hehe ;) . Xalan is een XSLT engine, dus dat heeft er helemaal niets mee te maken eigenlijk.... Je kunt gewoon gebruik maken van de default SAXBuilder denk ik. Deze gebruikt dan indirect Xerces (die heb je hopelijk geinstalleerd, want Crimson ondersteunt geen XML Schema's :P ).

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment

Pagina: 1