
Hi Mark,
The receiver of my .xml-files wants the schemaLocation in the form
xsi:schemaLocation="http://www.xmlData.ch/xmlInvoice/XSD schemafile.xsd"
If I associate the .xsd-file without the filepath, I cannot validate it.
If you specify the schema this way then the parser will look for the schema file in the same directory as the XML file. The best way to work is to have the schema in some location like http://www.xmlData.ch/xmlInvoice/XSD/schemafile.xsd and use that in your documents. Then set up an XML Catalog to resolve the http://www.xmlData.ch/xmlInvoice/XSD/schemafile.xsd location to a local copy of that schema. The batch validation sets the schema externally, that is why it is not needed to have the schema in the file. There is no batch schema association action. You can use a stylesheet to append the xsi:schemaLocation attribute to the root element of any document, something like below: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <xsl:template match="node() | @*"> <xsl:copy> <xsl:apply-templates select="node() | @*"/> </xsl:copy> </xsl:template> <xsl:template match="/*"> <xsl:copy> <xsl:attribute name="xsi:schemaLocation">http://www.xmlData.ch/xmlInvoice/XSD http://www.xmlData.ch/xmlInvoice/XSD/schemafile.xsd</xsl:attribute> <xsl:apply-templates select="node() | @*"/> </xsl:copy> </xsl:template> </xsl:stylesheet> Best Regards, George --------------------------------------------------------------------- George Cristian Bina <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger http://www.oxygenxml.com Mark Peyer wrote:
Hi,
I am exporting data out of FileMaker Pro's XML function, converting them with XSL to comply with an .xsd-file. I can associate the .xsd, and Oxygen 5 will insert xsi:schemaLocation="http://www.xmlData.ch/xmlInvoice/XSD filepath/schemafile.xsd" Then I can validate the .xml-file.
The receiver of my .xml-files wants the schemaLocation in the form
xsi:schemaLocation="http://www.xmlData.ch/xmlInvoice/XSD schemafile.xsd"
If I associate the .xsd-file without the filepath, I cannot validate it.
In Project mode, I can validate one or all .xml-files using "Validate selection with...". Here validation functions with or without filepath, but the line
xsi:schemaLocation="http://www.xmlData.ch/xmlInvoice/XSD schemafile.xsd"
Is not inserted.
As far as I can see, there is no possibility to batch associate a schema file.
Are there any workarounds? Am I missing something?
Thanks for your help.