Validating a xml schema (xsd file)
Hi,
I was wondering - my program should accept schema files and before doing whatever it does with them I want to put them through a validation and present errors if any.
I wasn't sure what is the right way to go about this - I know how to set up a validating parser with my own ErrorHandler and retrieve error info for simple xml files and xml schema instances, but how do I set up the parser to validate a schema definition?
My first idea was to validate it like I would validate any schema instance, since xsd files also have their own schema definition, but that seems kind of funny, since obviously the parser already knows what a schema definition should look like.
Has anyone done this?
Thanks,
Uri.
Try something like this??
DocumentBuilderFactory DBF = null;
try
DBF = DocumentBuilderFactory.newInstance();
catch (Exception fce)
// Set various configuration options
DBF.setValidating(true);
DBF.setNamespaceAware(true);
DBF.setIgnoringComments(true);
DBF.setIgnoringElementContentWhitespace(true);
DBF.setCoalescing(true);
DBF.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaSource", new File(Filename));
DBF = DBF.newDocumentBuilder();
DBF.setErrorHandler(this);
DBF.setEntityResolver(this);
catch (Exception pce)
blah blah blah blah....
I hope this is what you were looking/asking for... I could be way off base here 8-))
Similar Messages
-
Facing problem in xml schema xsd file registration
Hi,
i am facing problem in xml schema xsd file registration when
the number of column is more. It is showing persing error.
if i am deleting few column from xsd file . It is working otherwise
showing error. Is there any solution for that please suggest me.
The Error is
ORA-31011:XML parsing failed
ORA_19202: Error occurred in XML processing
LPX-00230 : (message vary time to time-like invalid tag ending etc.)
Regards
Manoranjan
and thanks in advanceWhere is you XML coming from. Are you sure it's valid. If you are hard coding it as a SQL String constant are you hitting the 4k / 32K limit on the size of SQL / PL/SQL constant. Have you tried loading the content from a bfile..
-
How to create our own XML Schema (.xsd) in Weblogic WorkShop
Hi,
I am new to Weblogic Workshop.I want to create one xml schema with custom elements.
when I am creating a file xml schema(.xsd).The file contains default namespace and no child elements in it.I don't know how to add elements to that file.
please tell me how to add parent elements and child elements and also our own xml namingspace.Hi Sivaram,
Unfortunately, the 8.1 IDE did not have special tooling for schema generation.
You will need to create it by hand or using an external tool
If you are using an external tool to create the file within the schema project, you might want to disable the schema project auto build, which will be triggered every time a file save takes place
cheers
Raj -
Hello,
I just downloaded and installed Vivado 2013.4 on my Xubuntu 12.04 machine. But when I try to add IP from the IP catalog, as in the ug937 Lab1 step2, it fails with obscure error messages (see below).
Here's basically what I did:
-In the Flow Navigator, i select the IP Catalog button.
-In the search field of the IP Catalog, I type DDS.
-then I double-click the DDS Compiler and my error occure.
Please Help,
Jerome.
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen_demo.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen_demo.vhd":1]
Analysis Results[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen.vhd":1]
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
set_property target_language Verilog [current_project]
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
sources_1[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen_demo.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen_demo.vhd":1]
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
update_compile_order -fileset sim_1
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/fsm.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/fsm.vhd":1]
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/fsm.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/fsm.vhd":1]
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[HDL 9-1654] Analyzing Verilog file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sim/testbench.v" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sim/testbench.v":1]
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/debounce.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/debounce.vhd":1]
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-2313] Loaded Vivado IP repository '/opt/Xilinx/Vivado/2013.4/data/ip'.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-1704] No user IP repositories specified
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
Vivado Commands[Project 1-11] Changing the constrs_type of fileset 'constrs_1' to 'XDC'.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
sim_1[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[HDL 9-1654] Analyzing Verilog file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sim/testbench.v" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sim/testbench.v":1]
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-234] Refreshing IP repositories
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-395] Problem validating against XML schema: Invalid value format for this type spirit:order
[IP_Flow 19-193] Failed to save BOM file '/home/jmassol/.Xil/Vivado-2683-ubuntu/coregen/dds_compiler_0/dds_compiler_0.xml'.
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/debounce.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/debounce.vhd":1]
[IP_Flow 19-3378] Failed to create IP instance 'dds_compiler_0'. Error saving IP file.
[IP_Flow 19-194] Failed to save IP instance 'dds_compiler_0'.
[HDL 9-1061] Parsing VHDL file "/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen.vhd" into library work ["/home/jmassol/Desktop/Vivado/vivado_debug/ug937/project_xsim/project_xsim.srcs/sources_1/imports/ug937/sources/sinegen.vhd":1]
set_property constrs_type XDC [current_fileset -constrset]
We had the same problem when switching to Ubuntu 14.04, and there actually is a solution for it: make sure your locales are set to English.
$> env | grep LC_*
should only show english (or C) locales, all others are known to cause parsing errors in some numbers, usually caused by wrong string-to-float conversions (e.g. 18,29 in german is 18.29 in english). You can change the locales in the file /etc/default/localesThis is not the first time we had problems with the locale settings, Xilinx does not seem to test their software with anything else than en_US, causing obscure bugs like this one.
HTH
Philipp -
XML and XSD file to an internal table
I had read a lot of thread but i don't understand how to deal with xml/xsd in R3.
I need someone that have a definite example for this escenary please.
With OPEN DATASET took from the server XML and XSD file, and put it in two internal tables type string.
What functions or method have to use, and how to use them, to charge the XML file in an internal table?
This is an example of XML and XDS:
XML
AND CONTINUE
Best Regards,I just tried to interpret your question, it was not obvious what you wanted.
I guess what you mean is that you have defined (statically) a deep structure, and you want to decode the XML into it. That is called a transformation (transaction STRANS, statement CALL TRANSFORMATION). You have the choice between 2 transformation languages: XSLT and ST. Of course, it depends what release you are running.
I advise you to play first with the ID transformation, to convert an ABAP deep structured data object into XML, so that you see what XML is generated, this one is called asXML. If you create your own transformation, when you call it, it will first convert automatically the data object to asXML, and the transformation has to do the rest of the job.
You can do the opposite, i.e. converting from XML to a data object, according to the same principle (intermediate asXML).
Well, there are lots of things to say, I recommend you to read articles and documentation on XSLT and ST (search on SDN).
About XSD, it won't help (and I did never see any possibility to use it) to decode the XML, as you must anyway define the target data object statically (and there's no tool to generate the ABAP code of the data object definition from the XSD).
Note that you may also use iXML libraries to parse the XML.
Please tell us more.
BR
Sandra -
Where to place xml and xsd files in Tomcat
Hi,
This is rather a stupid question but I am totally new to JAXP technology and i wanted to know is there a specific location where i need to store the xml and xsd files i created?. And how would i mention the target name space for the xsd file? I am usinf eclipse IDE and Tomcat 5.5.
Thanks for the patiance.Is the question so stupid that no one even want to try to reply?
-
Error in xml file validating to xml schema
Hey,
I am getting the following error while validating xml file to its schema:
The error is:
SAMPLEITEMDLFILE.xml:2,139: no declaration found for element 'WMWROOT'
The XML document SAMPLEITEMDLFILE.xml is NOT valid (1 errors)
schema file:
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="ItemDownload" targetNamespace="http://www.manh.com/ILSNET/Interface" elementFormDefault="qualified"
xmlns="http://www.manh.com/ILSNET/Interface" xmlns:xs="http://www.w3.org/2001/XMLSchema" version ="2007">
<xs:include schemaLocation="Item.xsd" />
<xs:element name="WMWROOT" nillable="true" type="WMWROOT" />
<xs:complexType name="WMWROOT">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="WMWDATA" type="WMWDATA" />
</xs:sequence>
</xs:complexType>
<xs:element name="WMWDATA" nillable="true" type="WMWDATA"/>
<xs:complexType name="WMWDATA">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="Items" type="ItemList" />
</xs:sequence>
</xs:complexType>
<xs:element name="Items" nillable="false" type="ItemList" />
<xs:complexType name="ItemList">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="unbounded" name="Item" nillable="true" type="Item" />
</xs:sequence>
</xs:complexType>
</xs:schema>
This is the part of PL/SQL code thru which I am generating the xml:
UTL_FILE.put_line (l_out_file, '<?xml version="1.0" ?>');
UTL_FILE.put_line (l_out_file, '<WMWROOT');
UTL_FILE.put_line (l_out_file, 'xmlns="http://www.manh.com/ILSNET/Interface"> ');
UTL_FILE.put_line (l_out_file, '<WMWDATA>');
UTL_FILE.put_line (l_out_file, '<Items>');
I am validating it in stylus studio tool.
Can any1 tell me where I am goin wrong?Hi,
I am using databse version 10.2.0.03. I am getting the output of xml file like tis:
<?xml version="1.0" ?>
<WMWROOT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.manh.com/ILSNET/Interface ItemDownload.xsd">
WMWDATA>
<Items>
<Item>
<action>Save</action><UserDef8>10074</UserDef8><active>Y</active><availableonweb>N</availableonweb><cost>285.93</cost><desc>HP DESKJET PRINTER (EMBLA)</desc><HarmCode><Identifier>9019.20.0000</Identifier></HarmCode><Item>R145-794</Item><InventoryTracking>Y</InventoryTracking><LongDesc>HP DESKJET PRINTER (EMBLA)</LongDesc><LotControlled>Y</LotControlled><SerialNumTrackInbound>Y</SerialNumTrackInbound><SerialNumTrackInventory>Y</SerialNumTrackInventory><SerialNumTrackOutbound>Y</SerialNumTrackOutbound><StorageTemplate><Template>Each</Template></StorageTemplate><XRefs><XRef></XRef></XRefs>
</Item>
</Items>
</WMWDATA>
</WMWROOT>
My plsql code is like tis:
SELECT /*rule*/
XMLELEMENT (
"Item",
XMLFOREST (action AS "action",
Userdef8 AS "UserDef8",
active AS "active",
availableonweb AS "availableonweb",
cost AS "cost",
description AS "desc"),
XMLELEMENT ("HarmCode",
XMLFOREST (Identifier AS "Identifier")),
XMLFOREST (
Item AS "Item",
inventorytracking AS "InventoryTracking",
Longdesc AS "LongDesc",
lotcontrolled AS "LotControlled",
serialnumtrackinbound AS "SerialNumTrackInbound",
serialnumtrackinventory AS "SerialNumTrackInventory",
serialnumtrackoutbound AS "SerialNumTrackOutbound"),
XMLELEMENT ("StorageTemplate",
XMLFOREST (Template AS "Template")),
XMLELEMENT (
"XRefs",
XMLELEMENT ("XRef", XMLFOREST (XRefItem AS "XRefitem")))).
getclobval ()
----------------------------------------writing to utl file-------------
l_out_file :=
UTL_FILE.fopen (lv_path,
-- lv_out_file,
'testingitemsdl.xml',
'W',
32767);
UTL_FILE.put_line (l_out_file, '<?xml version="1.0" ?>');
UTL_FILE.put_line (l_out_file, '<WMWROOT');
UTL_FILE.put_line (l_out_file, 'xmlns="http://www.manh.com/ILSNET/Interface"> ');
UTL_FILE.put_line (l_out_file, '<WMWDATA>');
UTL_FILE.put_line (l_out_file, '<Items>');
FOR i IN lc_item_info
LOOP
UTL_FILE.put_line (l_out_file, i.item);
END LOOP;
UTL_FILE.put_line (l_out_file, '</Items>');
UTL_FILE.put_line (l_out_file, '</WMWDATA>');
UTL_FILE.put_line (l_out_file, '</WMWROOT>');
UTL_FILE.fclose (l_out_file); -
Error of Validation of XML Schema in BEA WorkSpace Studio
When I validate my XML Schemas throught the BEA WorkSpace Studio Version: 1.1 Build id: 1090602 the follow error happens:
Referenced file contains errors (file:/MyPath/MyXMLSchema1.xsd).
For more information, right click on the message and select "Show Details..."
Show Details:
The errors below were detected when validating the file "MyXMLSchema1.xsd" via the file "MyXMLSchema2.xsd".
In most cases these errors can be detected by validating "MyXMLSchema1.xsd" directly.
However it is possible that errors will only occur when MyXMLSchema1.xsd is validated in the context of MyXMLSchema2.xsd.
src-resolve: Cannot resolve the name 'srv:Services' to a(n) 'type definition' component
When I validate my XML Schemas throught the oepe_11gR1PS4 (Eclipse Platform Version: 3.6.2 Build id: M20110210-1200) no errors were found.
My project is an OSB Project (ALSB Project).
What's happen?BEA WorkSpace Studio Version: 1.1 Build id: 1090602 use xerces bea\alsb3.0\tools\eclipse_pkgs\1.1\eclipse_3.2.2\eclipse\plugins\org.apache.xerces_2.8.0.v200606131651
oepe_11gR1PS4 (Eclipse Platform Version: 3.6.2 Build id: M20110210-1200) use xerces Oracle\Middleware_10.3.5\oepe_11gR1PS4\plugins\org.apache.xerces_2.9.0.v201005080400.jar
If you replace the follow files:
bea\alsb3.0\tools\eclipse_pkgs\1.1\eclipse_3.2.2\eclipse\plugins\org.apache.xerces_2.8.0.v200606131651\resolver.jar
bea\alsb3.0\tools\eclipse_pkgs\1.1\eclipse_3.2.2\eclipse\plugins\org.apache.xerces_2.8.0.v200606131651\xercesImpl.jar
bea\alsb3.0\tools\eclipse_pkgs\1.1\eclipse_3.2.2\eclipse\plugins\org.apache.xerces_2.8.0.v200606131651\xml-apis.jar
for:
Oracle\Middleware_10.3.5\oepe_11gR1PS4\plugins\org.apache.xerces_2.9.0.v201005080400.jar
BEA WorkSpace Studio Version: 1.1 Build id: 1090602 will validate without errors (the same oepe_11gR1PS4 behaviour) -
How to load a XML-Schema (XSD) from Classpath
Hi
I want to perform XML Schema Validation using a XML-Schema stored in a File "MySchema.xsd" in the classpath.
Unfortunately I have no clue, how I can load this file without using an absolute path. I already tried:
Thread.currentThead().getContextClassLoader().getRessourceAsStream()but this method rejects to load Files with the extension XSD.It does however load the file, if I rename it to MySchema.xml or MySchema.properties, but then I cannot use the Visual Editors of JDeveloper to edit the File.
Has anyone an idea, how I can load a XSD-File stored in the classpath?
Thanks in advance
Frank BrandstetterMy Problem is, that I cannot load the Schema-File during runtime. I try to use code like this:
String Schema = "sam/model/dataaccess/message/NavMessageXSD.xml"; // <== works with .xml, fails with .xsd
ClassLoader loader = Thread.currentThread().getContextClassLoader();
InputStream is = loader.getResourceAsStream(Schema);
if (is==null)
throw new Exception("Ressource not found"); // <== Exception thrown with .xsd
XSDBuilder builder = new XSDBuilder();
schemadoc = builder.build(new InputSource(is));
DOMParser parser = new DOMParser();
parser.setValidationMode(XMLParser.SCHEMA_VALIDATION);
parser.setXMLSchema(schemadoc);This code works if "Schema" points to a file with extension .xml ("NavMessageXSD.xml"). It fails if "Schema" points to a file with extension .xsd ("NavMessageXSD.xsd").
This file is already part of my project. If it is named "NavMessageXSD.xsd" I can edit it using the visual editor. If it is named "NavMessageXSD.xml" it is just an ordenary XML-File.
Thanks for your help
Frank Brandstetter -
I have a question, if in the XDK there is a
possibility to check a .xsd file, if it belongs to the XML Schema Definition http://www.w3.org/2000/10/XMLSchema
Thanks for your help
Greetings, Merry Christmas and Happy new Year
AndreasSimply use the self-same XML Schema Processor to validate your *.xsd schema against the schema for XML Schema itself. That is, the XML Schema spec "ships" with a normative XML Schema which describes the valid elements that a schema author can use to write a schema. If you have a particular XML schema definition in hand, it is in particular an instance of a document that should be valid by the XML schema for XML Schema, if you've done it correctly.
-
Exp XML Schema (.xsd) to another schema on same instance
Hello,
I hope someone on this forum can help me or point me in the correct direction. I want to export a schema which contains a table (EQUIPMENT) which has a XMLType column defined against a registered .xsd. I would then like to restored this schema to another schema on the same instance (development instance) and also onto another db instance.
I have been trying to do this with the help of "Chapter 30 Importing and Exporting XMLType Tables" from the Oracle® XML DB Developer's Guide
10g Release 2 (10.2). Unfortunately without success. At the end of this message I have encluded sample error messages that I am receiving for creation of TYPES which is causing my import to fail.
I cannot find any examples on the web on how to achieve an exp from one schema and imp in another either on the same instance or another one.
DDL for my table is :
create table EQUIPMENT
ID number(7) not null,
STATUSID number(7) not null,
ATTRIBUTEDATA xmltype
xmltype column ATTRIBUTEDATA xmlschema "EQUIPMENT.xsd" element EQUIPMENT_XML
tablespace TBS_DATA1;
Three test runs as follows:
1. Using an empty u2 schema and I register the .xsd file. Then I try to import (FROMUSER - TOUSER imp mode) my dump file which leads to the following error:
IMP-00017: following statement failed with ORACLE error 2304:
"CREATE TYPE "MTA1440_T" TIMESTAMP '2007-11-14:14:42:16' OID '3EE57B10307317"
"74E044080020C94102' AS OBJECT ("SYS_XDBPD$" "XDB"."XDB$RAW_LIST_T",""
"ATTRIBUTE_01" NUMBER(38),"ATTRIBUTE_02" VARCHAR2(4000 CHAR),"ATTRIBUTE_03" "
"VARCHAR2(4000 CHAR),"ATTRIBUTE_04" NUMBER(38),"ATTRIBUTE_05" VARCHAR2(4000 "
"CHAR))FINAL INSTANTIABLE "
IMP-00003: ORACLE error 2304 encountered
NOTE: Even though import failed, I now see a new TYPE created called "MTA1526_T".
2. If I try to create the TYPE as is from the error above I get the following error:
SQL> CREATE TYPE MTA1440_T
2 OID '3EE57B1030731774E044080020C94102'
3 AS OBJECT (SYS_XDBPD$ XDB.XDB$RAW_LIST_T,
4 ATTRIBUTE_01 NUMBER(38),
5 ATTRIBUTE_02 VARCHAR2(4000 CHAR),
6 ATTRIBUTE_03 VARCHAR2(4000 CHAR),
7 ATTRIBUTE_04 NUMBER(38),
8 ATTRIBUTE_05 VARCHAR2(4000 CHAR)) FINAL INSTANTIABLE;
9 /
CREATE TYPE MTA1440_T
ERROR at line 1:
ORA-02304: invalid object identifier literal
3. So now I create the "MTA1440_T" type without the OID value and retry the import.
IMP-00061: Warning: Object type "U2"."MTA1440_T" already exists with a different identifier
"CREATE TYPE "MTA1440_T" TIMESTAMP '2007-11-14:14:42:16' OID '3EE57B10307317"
"74E044080020C94102' AS OBJECT ("SYS_XDBPD$" "XDB"."XDB$RAW_LIST_T",""
"ATTRIBUTE_01" NUMBER(38),"ATTRIBUTE_02" VARCHAR2(4000 CHAR),"ATTRIBUTE_03" "
"VARCHAR2(4000 CHAR),"ATTRIBUTE_04" NUMBER(38),"ATTRIBUTE_05" VARCHAR2(4000 "
"CHAR))FINAL INSTANTIABLE "
Questions from me:
A. Can I export TYPES only as suggested by the online documentation ?
B. If importing onto same instance in another schema surely the OID for the TYPE will always fail - so then why can the import not create the required TYPE name itself during the import ?
C. Should I use global TYPES and Register the .XSD globally for all schema's in an instance to validate against .. would this prevent me from having errors on an import ?
I would appreciate any insight any one could provide me. Many thanks in advance.
DomHi Guys,
Thank you all for the replies. I am dissappointed to hear that in 10g does not support exp/imp of schema's structured XML. However I am a little confused or should I say mislead by the "" documentation I
Here is an extract from chapter "30 - Importing and Exporting XMLType Tables" from the Oracle XML DB 10g Developers Guide documentation:
"..... Oracle Database supports the import and export of XML schema-based XMLType tables. An XMLType table depends on the XML schema used to define it. Similarly the XML schema has dependencies on the SQL object types created or specified for it. Thus, exporting a user with XML schema-based XMLType tables, consists of the following steps:
1. Exporting SQL Types During XML Schema Registration. As a part of the XML
schema registration process .....
2. Exporting XML Schemas. After all the types are exported, XML schemas are
exported as XML text .....
3. Exporting XML Tables. The next step is to export the tables. Export of each table consists of two steps:
A. The table definition is exported as a part of the CREATE TABLE statement....
B. The data in the table is exported as XML text. Note that data for out-of-line
tables is.....
From this documentation I was under the impression that the exp/imp of XML Schema-Based XMLType Tables was supported.
Regarding the backup mechanism/strategy for database schema's containing tables with Schema-Based XMLTypes what would you recommend the best online backup method to use - tablespace backups ?
What I need to be able to do in day-to-day work is to have the ability to be able to take a copy of a customers UAT or production database schema and apply it to a dev or test db instance here for bug testing etc. Do you have any advice on best to achieve this without the use of an exp/imp when the schema will contain Schema-Based XMLType tables.
Thank you all for your assistance so far. -
Hi,
does someone know how to validate a XML file against
a XSD File (XML Schema) in ABAP. Iam using the IXML Package.
Thanks.
JimI've originally been using Xerces1_4_0, but you're right - it's xerces-2_0_0_beta4 that does the job.
Thanks for the hint!
Luca -
Is there an easy way to get the xml schema/DTD for a custom entity, specifically an .XSD file for that entity (which will then be used to create a map to be able to transform the fields of the entity to a 3rd-party message format)?
So have a custom entity with lots and lots of fields. Each of the fields will map to a differently named field to match the schema of the 3rd party entity. A very common situation. Looking to use a tool like the Biztalk mapper or Altova's MapForce to generate
an .xslt file to transform the downloaded entity (service.Retrieve with all columns) to the new format. (Will implement a typical VETR pattern.)
Apparently with CRM 4 there was a call that provided this, but from 2011 has not been available. Working with a crm 2015 system.That will give a descriptor of the table and allow creation of an .XSD file, but it's really complex in terms of types, and the there's type conversion. It might be an easy way to get a schema, with the downside being it's hard to use that schema.
It seems easier to do a fetch of the record with all fields filled in using service.Retrieve, and then converting this to xml, using Microsoft's guidance leads to using https://msdn.microsoft.com/en-us/library/hh675409.aspx which will serialize the entity
into XML with all the fields converted to type string, and with complex fields likewise converted to strings with additional information about the type.
Using this it's possible using an number of tools to create an easier to use .XSD file.
However, it would seem most integrations of this type are using 3rd party CRM connectors. Perhaps this is why Microsoft hasn't provided anything direct (and took away what they did have in crm4.0 due to it generating a hard to use .XSD or due to letting
their partners continue income streams from selling connectors").
But without using 3rd party connectors, or following the still tedious method of generating .XSD (a useable .xsd), have not yet come up with an easy, automatic way to get an .XSD or to easily integrate with 3rd party message format. -
Has anyone been successful at validating xml with a Schema running weblogic 6.1
sp2?
Here is a snippet of code...
SAXParserFactory objFactory = SAXParserFactory.newInstance();
objFactory.setValidating("true");
objFactory.setNamespaceAware("true");
objFactory.setFeature("http://apache.org/xml/features/validation/schema", "true");
objXMLInputParser.parse(new InputSource(new StringReader(XMLDocument)), A_HANDLER);
When my xml code runs through the parser I get an error for each element saying
the element type is not declared in the dtd or schema.
Since weblogic 6.1 runs with 1.3.1 Xerces parser. Does it support xml validation
with a Schema. From what I've read it seems that it does.
Any help or insight would be appreciated.
Thanks
KarenI figured out my problem in case anyone else is having trouble..
In the xml document that you need to refer to:
xmlns:xsd="http://www.w3.org/2000/10/XMLSchema-instance that is the namespace
supported by xerces 1.3.1.
Whew!
"Karen Schaper" <[email protected]> wrote:
>
Has anyone been successful at validating xml with a Schema running weblogic
6.1
sp2?
Here is a snippet of code...
SAXParserFactory objFactory = SAXParserFactory.newInstance();
objFactory.setValidating("true");
objFactory.setNamespaceAware("true");
objFactory.setFeature("http://apache.org/xml/features/validation/schema",
"true");
objXMLInputParser.parse(new InputSource(new StringReader(XMLDocument)),
A_HANDLER);
When my xml code runs through the parser I get an error for each element
saying
the element type is not declared in the dtd or schema.
Since weblogic 6.1 runs with 1.3.1 Xerces parser. Does it support xml
validation
with a Schema. From what I've read it seems that it does.
Any help or insight would be appreciated.
Thanks
Karen -
XML instance validation against XML schema
How can I get a reference on the error node object after
validation against an XML schema ?
Ex. :
DOMParser domP = new DOMParser();
domP.setXMLSchema(schemaDoc); // schemaDoc = ref. on an XMLSchema
domP.setValidationMode(XMLParser.SCHEMA_VALIDATION);
domP.parse(reader); // reader contains the XML instance data
If an error occurred, I only get a message string. What I need is to get a reference on the node object which contains the error in order to retrieve its properties to the schema.
I could then alert the user with a message such as :
"Data xxx is not valid ; it must be comprised between yy and zz...".
Did somebody solve this problem ? May I use the XMLError class to do this ?
Thank youHi Ray,
Were you able to resolve this issue? I am encountering a very similar problem where I am not connected to the internet and it fails during the newSchema method on javax.xml.validation.SchemaFactory. I have attempted to implement the suggestions of ExtremeGardener and vidyut with no luck.
Per ExtremeGardener's suggestion of replacing xmlns:xs="http://www.w3.org/2001/XMLSchema" with xmlns:xs="XMLSchema.xsd" and storing it locally, it gave me an error for trying to set the "xs" or "xsd" prefixes to anything other than "http://www.w3.org/2001/XMLSchema." I forget the exact error. I also tried to use my own prefix and it did not like that either.
Per vidyut's suggestion of using a catalog resolver, I believe that I have tried that too (if I understand correctly). I created an LSResourceResolver and tied it to the SchemaFactory. I can invoke it for a namespace but that did not resolve the issue because it only invokes the resolver on an import, include, or redefine. I believe that it is trying to reach the internet due to the xmlns:xs="http://www.w3.org/2001/XMLSchema" attribute within the top-level schema element in the XSD and I know of no way to invoke it for that.
I also created an ErrorHandler and tied it to the SchemaFactory. That shows me the errors and they are all related to the standard XML data types defined in XMLSchema.xsd. The errors that I am seeing are all of this form: "UndeclaredPrefix: Cannot resolve 'xs:string' as a QName: the prefix 'xs' is not declared."
I am currently using the SchemaFactory in Java 1.5, but I am thinking about trying the Xerces SchemaFactory since they are not exactly the same implementation.
Does anyone have any other suggestions? Any help you can provide would be greatly appreciated!
Thanks,
betzro1
Maybe you are looking for
-
Explain how to run a jar file in Openscript in OATS.
Hi.. I have a jar file which essentially compares two files.I want to run it from Openscript. Please explain me the steps in detail (after adding in the assets field) Thanks in advance regards Harsha
-
Internal Order - Periodic Reposting
Hi all, I have got statistic internal orders (for company-cars) - that have all the same cost-center as a collector. At the end of the month I would like to transfer costs to other cost centers. I tried to do that with KSW1 - I entered Internal Order
-
ABAP-Interactive forms : Read-Only buttons upon runtime
Hello, I'm fairly new at this and probably for a good reason I can't find any information pertaining to this issue. Using the embeded Adobe Lifecycle Designer within SAP using transaction SFP, I go to the layout tab and create a button. On this butt
-
I'm using the latest release (10.0) and am looking for a way to stop the history from being displayed in the History menu without turning off History, so I can still access History by going into the library.
-
Script for database send mail for tablespace threshold 90%
Dear All, Scripts required for send mail from database for following events 1.Tablespace Threshold 2. Db Shutdown & Startup Database Version : 10.2.0.1.0 OS :- Linux Thanks & Regards, Praful Kawaji