Hi, I am reading a XML-Schema which itselfs imports other schemas.
The schema looks like: <?xml version="1.0" encoding="ISO-8859-1"?> <xs:schema targetNamespace="http://www.cdisc.org/ns/odm/v1.2" xmlns="http://www.cdisc.org/ns/odm/v1.2" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:sas="http://www.sas.com/xml/schemas" elementFormDefault="qualified" attributeFormDefault="unqualified"> <!-- import ODM foundation schemas --> <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/> <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/> <!-- include here any vendor extensions --> <xs:include schemaLocation="sas-extension.xsd"/> </xs:schema> Now, for a reason nothing to do with XMLBeans, I need the prefixes that were used in the schema for each of the namespaces. I realize the prefixes are nothing fixed, one could use others, but I would like to know them anyway. >From the mailing list, I found some information that getting the prefixes was >not possible in XMLBeans 1.X, and I wander whether it is possible to retrieve >them in 2.0. With my current code, I do not see them when e.g. using SchemaProperty[] attributes = sge[i].getType().getAttributeProperties(); So my question is: is it possible to retrieve the used prefixes with XMLBeans 2.0 ? Part of my current code is below. With best regards Jozef ============= List sdocs = new ArrayList(); XmlOptions xmloptions = new XmlOptions(); xmloptions.setLoadLineNumbers().setLoadMessageDigest(); xmloptions.setCompileDownloadUrls(); // allow compilation of schemas that are imported/included using a URL // xmloptions.setSaveNamespacesFirst(); // just trying, 30.8.2005 try { sdocs.add(XmlObject.Factory.parse(schemaFile, xmloptions)); } catch (Exception e) { System.err.println( schemaFile + " not loadable: " + e ); String errormessage = "Could not read the Schema File:\n" + schemaFile.getAbsolutePath(); JOptionPane.showMessageDialog(new MyJFrame(),errormessage); OK = false; } if(OK == true) { XmlObject[] schemas = (XmlObject[])sdocs.toArray(new XmlObject[0]); XmlObject mySchema = schemas[0]; System.out.println("Schema validation gives : " + mySchema.validate()); // compile the schemas SchemaTypeLoader sLoader = null; Collection compErrors = new ArrayList(); XmlOptions schemaOptions = new XmlOptions(); schemaOptions.setCompileDownloadUrls(); // allow import of other schemas using URLs schemaOptions.setErrorListener(compErrors); try { if (schemas != null && schemas.length > 0) sts = XmlBeans.compileXsd(schemas, sLoader, schemaOptions); } catch (Exception e) { if (compErrors.isEmpty() || !(e instanceof XmlException)) { e.printStackTrace(System.err); } System.out.println("Schema invalid:" + (partial ? " couldn't recover from errors" : "")); for (Iterator i = compErrors.iterator(); i.hasNext(); ) System.out.println(i.next()); String errormessage = "Invalid ODM Schema \n" + "could not convert Schema to ODM elements"; JOptionPane.showMessageDialog(new MyJFrame(), errormessage); OK = false; } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

