Validating a xml aggainst a schema
Hi Everyone,
Can you please let me know of any easy procedure to validate an xml against a schema in BPEL?
I tried many things but am still stuck up.
Thanks,
Mannu
Hi Mannu,
Define a second bpel-process ( asynchronous ) base its input message on the schema you want to validate against.
In the latest release this is very easy.
Delete the reply activity (optional).
deploy this ( to a separate domain)
In your main process add this process as a partnerlink
Add the validateXML property to the partnerlink and set it to "true"
Invoke it with the xml you want validated .
When you do this in a scope you can catch
the bpelx:invalidVariables exception
and inspect a fault variable ( based on the RuntimeFaultMessage found in RuntimeFault.wsdl) for the violation etc.
Et voila.
HTH
Mark
Similar Messages
-
Validating an XML document to a schema using ColdFusion
This is something I have never tried before. We created an XML Schema to define XML documents we expect to receive from various entities. When we receive the document, we would like to validate it before processing it. I think ColdFusion is up to this from reading the documentation, but we have not got anything working yet.
When we try and xmlParse() our test XML file against the XML schema we get the following error. When we use a web based XML validation tool and feed it the same XML file and schema it validates just fine.
An error occured while parsing an XML document.
[Error] :2:6: cvc-elt.1: Cannot find the declaration of element 'pur'.
The error occurred in D:\playground\warren\ppur_file_import.cfm: line 57
55 :
56 :
57 : <cfset xmldoc = XmlParse(ExpandPath(filepath), true, ExpandPath(validator)) />
58 : <cfdump var="#xmldoc#">
59 : <cfabort>
Searching for the error has not provided me any useful hints. Can anybody here?XML SCHEMA
<?xml version="1.0" encoding="iso-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- Simple Types -->
<xs:simpleType name="RECORD_ID">
<xs:restriction base="xs:string">
<xs:pattern value="[AaBbCc]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="REPORT_MONTH">
<xs:restriction base="xs:integer">
<xs:pattern value="(0[1-9]|1[0-2])"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="REPORT_YEAR">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MFG_FIRMNO">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{7}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LABEL_SEQ_NO">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{5}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="REVISION_NO">
<xs:restriction base="xs:string">
<xs:pattern value="[A-Za-z]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="REG_FIRMNO">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{7}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="GROWER_ID">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{11}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CEDTS_IND">
<xs:restriction base="xs:string">
<xs:pattern value="[Ee]|[ ]"/>
<!-- needs to match E or a blank. -->
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="APPLIC_DT">
<xs:restriction base="xs:integer">
<xs:pattern value="(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])([0-9]{2})"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SITE_CODE">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{6}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="QUALIFY_CD">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="PLANTING_SEQ">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ACRE_TREATED">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{8}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UNIT_TREATED">
<xs:restriction base="xs:string">
<xs:pattern value="[ATSCKUPatsckup]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AMT_PRD_USED">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{10}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UNIT_OF_MEAS">
<xs:restriction base="xs:string">
<xs:pattern value="LB|OZ|GA|QT|PT|KG|GR|LI|ML"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="DOCUMENT_NO">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{8}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LINE_ITEM">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="PROCESS_DT">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="BATCH_NO">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-5][0-9][0-9][0-9]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="COUNTY_CD">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-5][0-9]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SECTION">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TOWNSHIP">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TSHIP_DIR">
<xs:restriction base="xs:string">
<xs:pattern value="[NSns]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RANGE">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RANGE_DIR">
<xs:restriction base="xs:string">
<xs:pattern value="[EWew]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="BASE_LN_MER">
<xs:restriction base="xs:string">
<xs:pattern value="[HMShms]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AER_GND_IND">
<xs:restriction base="xs:string">
<xs:pattern value="[AFGOafgo]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SITE_LOC_ID">
<xs:restriction base="xs:string">
<xs:pattern value="[-0-9 ]+"/>
<!-- Examples in files I checked
only had numeric characters and
a dash. The county contract doesn't
specify numeric-only, so letters may
be acceptable. I find no evidence of
any letters being used. -->
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ACRE_PLANTED">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{8}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UNIT_PLANTED">
<xs:restriction base="xs:string">
<xs:pattern value="[ATSCKUPatsckup]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="APPLIC_TM">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="APPLIC_CNT">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{6}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="FUME_CD">
<xs:restriction base="xs:integer">
<xs:pattern value="[0-9]{4}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LICENSE_NO">
<xs:restriction base="xs:integer">
<xs:pattern value="[-0-9A-Za-z]{13}"/>
</xs:restriction>
</xs:simpleType>
<!-- end Simple Types -->
<!-- !!!!!!!!! Begin Abstract Types !!!!!!!!! -->
<xs:complexType name="application_data_abs" abstract="true">
<xs:sequence>
<xs:element name="GROWER_ID" type="GROWER_ID" />
<xs:element name="CEDTS_IND" type="CEDTS_IND" />
<xs:element name="APPLIC_DT" type="APPLIC_DT" />
<xs:element name="SITE_CODE" type="SITE_CODE" />
<xs:element name="QUALIFY_CD" type="QUALIFY_CD" />
<xs:element name="PLANTING_SEQ" type="PLANTING_SEQ" />
<xs:element name="ACRE_TREATED" type="ACRE_TREATED" />
<xs:element name="UNIT_TREATED" type="UNIT_TREATED" />
<xs:element name="AMT_PRD_USED" type="AMT_PRD_USED" />
<xs:element name="UNIT_OF_MEAS" type="UNIT_OF_MEAS" />
<xs:element name="DOCUMENT_NO" type="DOCUMENT_NO" />
<xs:element name="LINE_ITEM" type="LINE_ITEM" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="application_abs" abstract="true">
<xs:sequence>
<xs:element name="key_data" type="key_data" />
<xs:element name="product_data" type="product_data" />
</xs:sequence>
</xs:complexType>
<!-- !!!!!!!!! End Abstract Types !!!!!!!!! -->
<!-- !!!!!!!!! Start Complex Types !!!!!!!!! -->
<xs:complexType name="product_data">
<xs:sequence>
<xs:element name="MFG_FIRMNO" type="MFG_FIRMNO" />
<xs:element name="LABEL_SEQ_NO" type="LABEL_SEQ_NO"/>
<xs:element name="REVISION_NO" type="REVISION_NO" />
<xs:element name="REG_FIRMNO" type="REG_FIRMNO" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="key_data">
<xs:sequence>
<xs:element name="RECORD_ID" type="RECORD_ID" />
<xs:element name="COUNTY_KEY">
<!--
The optional COUNTY_ID field would be used by
the Counties to include their internal
record identifier. This would allow DPR
to reference a county's internal record ID
in the event of data inconsistencies.
-->
</xs:element>
<xs:element name="REPORT_MONTH" type="REPORT_MONTH" />
<xs:element name="REPORT_YEAR" type="REPORT_YEAR" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="fileInfo">
<xs:sequence>
<xs:element name="PROCESS_DT" type="PROCESS_DT" />
<xs:element name="BATCH_NO" type="BATCH_NO" />
<xs:element name="COUNTY_CD" type="COUNTY_CD" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="mtrs_data">
<xs:sequence>
<xs:element name="SECTION" type="SECTION" />
<xs:element name="TOWNSHIP" type="TOWNSHIP" />
<xs:element name="TSHIP_DIR" type="TSHIP_DIR" />
<xs:element name="RANGE" type="RANGE" />
<xs:element name="RANGE_DIR" type="RANGE_DIR" />
<xs:element name="BASE_LN_MER" type="BASE_LN_MER" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="ag_application_data">
<xs:complexContent>
<xs:extension base="application_data_abs">
<xs:sequence>
<xs:element name="AER_GND_IND" type="AER_GND_IND" />
<xs:element name="SITE_LOC_ID" type="SITE_LOC_ID" />
<xs:element name="ACRE_PLANTED" type="ACRE_PLANTED" />
<xs:element name="UNIT_PLANTED" type="UNIT_PLANTED" />
<xs:element name="APPLIC_TM" type="APPLIC_TM" />
<xs:element name="FUME_CD" type="FUME_CD" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="nonag_application_data">
<xs:complexContent>
<xs:extension base="application_data_abs">
<xs:sequence>
<xs:element name="APPLIC_CNT" type="APPLIC_CNT" />
<xs:element name="LICENSE_NO" type="LICENSE_NO" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!--- "Ag" -->
<!--
Type A:
Data that would appear on individual lines
in the old A type
(F file type, agricultural job report)
Type B:
Data that would appear on individual lines
in the old B type
(F file type, agricultural monthly production summary)
-->
<xs:complexType name="ag_application">
<xs:complexContent>
<xs:extension base="application_abs">
<xs:sequence>
<xs:element name="mtrs_data" type="mtrs_data" />
<xs:element name="application_data" type="ag_application_data" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!--- "Non_Ag" -->
<!--
Data that would appear on individual lines
in the old C type
(C file type, non-agricultural monthly summary)
-->
<xs:complexType name="nonag_application">
<xs:complexContent>
<xs:extension base="application_abs">
<xs:sequence>
<xs:element name="application_data" type="nonag_application_data" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- The individual lines of data that are transmitted. -->
<xs:complexType name="data_lines">
<xs:sequence>
<xs:element name="Non_Ag" type="nonag_application" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Ag" type="ag_application" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<!-- !!!!!!!!! End Complex Types !!!!!!!!! -->
<xs:element name="pur">
<xs:complexType>
<xs:sequence>
<xs:element name="County" minOccurs="0" maxOccurs="1">
<!--
Tag for counties to put county-specific
data in (eg, their batch number, timestamp,
contact info, etc)
-->
</xs:element>
<!-- File: information specific to the file -->
<xs:element name="File" type="fileInfo" minOccurs="1" maxOccurs="1"/>
<!-- Data: lines of data transmitted -->
<xs:element name="Data" type="data_lines" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema> -
Validating xml doc using schema
I was wondering if you can the following validation of an xml document using schema:
<parent>
<child>Jogn</child>
<child>Hanna</child>
<child>Blake</child>
<childCount>3</childCount>
<parent>the childcountValue equals the number of child node. is this possible using
schema or do do i have to use an application to do this?
thanx in advancethanx dvohra, but i already know how to validate schema using a parser.
I'm looking for a way in the schema that specified thhat the total number of child elemnt equals to the integer value of the childTotal element. I don't even know if this is possible. If possible, what (tag) would i use. i don't need answer..hint would be nice.
my other solution is to write an application that use a SAX parser to parse the xml doc. Although this is relatively easy, i would like to keep the validation within on file (the schema)..rather than have it be in the schema and a ContentHandler. -
Has anybody tried creating and validating a XML doc with XML Schema?
Hi,
Has anybody tried creating and validating a XML doc with XML Schema?With XMLBeans, an XML document may be created from and validated with an XML schema.
-
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 -
Does XDB supports validating xml against multiple schemas?
The XMLType has some methods for validating an xml documents against a schema, e.g., SCHEMAVALIDATE, etc.. does XDB support validating xml against multiple schemas (Just like what JAXP or Xerces have done)? Or what's the current situation about this issue? thanks.
did you try using the import schema element instead of the include elemnt?
-
Issue in Store XML into Schema generated tables and Validation XML against registered schema.
Hello friends,
I am facing some problem when store xml into generated tables from registered schema.
This is my Schema
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.abc.inf.in/test" targetNamespace="http://www.abc.inf.in/test" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="abc.xsd"/>
<xs:element name="project" type="student">
<xs:annotation>
<xs:documentation> This is a Documentation</xs:documentation>
</xs:annotation>
</xs:element>
</xs:schema>
-- This is my xml document
<project versao="2.00" xmlns="http://www.abc.inf.in/test">
<test xmlns="http://www.abc.inf.in/test">
<intest version="2.00" Id="testabc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<ide>
<cUF>35</cUF>
<cNF>59386422</cNF>
<natOp>this is post</natOp>
<indPag>1</indPag>
<mod>55</mod>
<serie>1</serie>
</ide>............
Not giving full because it's too long.
1. I Successfully registered Schema into database
2. Then i generate table from registered Schema
2. In my java code i validated XML document against Schema and it's successfully validate.
3. But when i stored this XML into this generated table it's give me error
Like :
INSERT INTO XMLTABLE
VALUES
(XMLTYPE(bfilename('MYDIR','testabc.xml'),NLS_CHARSET_ID('AL32UTF8')))
Error report:
SQL Error: ORA-31061: XDB error: XML event error
ORA-19202: Error occurred in XML processing
LSX-00333: literal "94032000" is not valid with respect to the pattern
And i have to store this xml into this tables so what i have to do ?Thanks for your reply odie_63.
I got this my error solution. My XML document is not well structured based on my registered XML Schema.
Means In My XML Document there are some invalid value and that not match my schema pattern so it's gives this error
SQL Error: ORA-31061: XDB error: XML event error
ORA-19202: Error occurred in XML processing
LSX-00333: literal "94032000" is not valid with respect to the pattern
For Solution we have two ways
1. I have changed this literal "94032000" value in my xml file then save it.
2.
- We have to delete this schema then
- we have to change Schema pattern for particular element
like :--
<xs:restriction base="xs:string">
<xs:whiteSpace value="preserve"/>
<xs:pattern value="[0-9]{3}"/>
</xs:restriction>
- then store xml into database it works..
Thanks. -
Oracle XML parser and schema validation
Hi Forum,
I have problem parsing XML with validation against XML schema. I define location of schema (URL) in xml file and Oracle parser could not find the schema (xml file is correct - checked in other programs). When I point to xml schema directly from Java (using parser.setXMLSchema) before calling parser.parse, it works just fine. Where is the problem? Does oracle parser works correctly with XML Schema?
TIA,
AlexSAXParser saxParser=new SAXParser();
saxParser.setValidationMode(XMLParser.SCHEMA_VALIDATION);
Specify a Schema to validate a XML document with, for the SAXParser.
saxParser.setXMLSchema(SchemaUrl);
DefaultHandler handler=new DefaultHandler();
saxParser.setErrorHandler(handler);
Parse the XML document to validate with the XML schema.
saxParser.parse(XmlDocumentUrl); -
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 -
Error while Validating xml against a schema using jaxp
Hi All,
Following code validates xml against a schema using JAXP .It gives SAXNotRecognizedException error when you run the program.
static final String JAXP_SCHEMA_LANGUAGE = "http://java.sun.com/xml/jaxp/properties/schemaLanguage";
static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema";
SAXParserFactory myFactory = SAXParserFactory.newInstance();
myFactory.setNamespaceAware(true);
myFactory.setValidating(true);
javax.xml.parsers.SAXParser parser;
String filename = "C:/Note.xml";
File xmlFile = new File(filename);
try
DefaultHandler handler = new DefaultHandler();
parser = myFactory.newSAXParser();
parser.setProperty(JAXP_SCHEMA_LANGUAGE, W3C_XML_SCHEMA);
parser.parse(xmlFile, handler);
catch (ParserConfigurationException e)
// TODO Auto-generated catch block
e.printStackTrace();
catch (SAXException e)
// TODO Auto-generated catch block
e.printStackTrace();
catch (IOException e)
// TODO Auto-generated catch block
e.printStackTrace();
Error Details :
org.xml.sax.SAXNotRecognizedException: http://java.sun.com/xml/jaxp/properties/schemaLanguage
at org.apache.xerces.framework.XMLParser.setProperty(XMLParser.java:1682)
at org.apache.xerces.parsers.SAXParser.setProperty(SAXParser.java:770)
at org.apache.xerces.jaxp.SAXParserImpl.setProperty(SAXParserImpl.java:183)
How do i fix the above mentioned problem ?
Thanks in Advance.
AnshValidate with the JAXP DOMParser instead of the JAXP SAXParser.
To validate with a SAXParser use the xerces SAXParser.
thanks,
Deepak -
Error in XML Parsing through Schema doc.MalformedURLException
Hi,
I need to validate xml file before parsing it through XML schema validation. My XML file and schema files are in the same directory and I need am validation it using below code.
Java Code_
String rbBasePath = ConfigurationFactory.getInstance().getConfigurations("ConfigParam").get("config.rb.properties", DEFAULT_RB_PATH);
InputSource xmlInputSource = new InputSource (rbBasePath + ConfigConstants.XML_FILE_NAME);
File schemaFileObj = new File (rbBasePath + ConfigConstants.XML_SCHEMA_FILE_NAME);
SAXSource source = new SAXSource (xmlInputSource);
SchemaFactory sf = SchemaFactory.newInstance (XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = sf.newSchema (schemaFileObj);
Validator validator = schema.newValidator ();
validator.setErrorHandler (new ParserErrorHandler());
validator.validate (source);
But, I am getting following error.
java.net.MalformedURLException: unknown protocol: c_
After some google, I found there may be some bug which does not read the file if file path contains some space in between. But in my case schema path does not contain any space in between.
Please help to figure out this issue.
Edited by: Jaykishan on Jul 20, 2011 12:17 PM
Edited by: Jaykishan on Jul 20, 2011 12:18 PMError occurs at below line of code.
validator.validate (source);
Error message: MalformedURLException. java.net.MalformedURLException: unknown protocol: c
My xml and xsd file is located at: C:\config\resources\AlertData.xml, C:\config\resources\AlertDataSchema.xsd. -
Validate xml againt registerd schema, ignoring xsi:noNamespaceSchemaLocatio
hi,
i would like to validate received xml against registered schema, ignoring the one defined in xml. I use XMLisValid(xml_data ,schema_url) but it works only if there is no xsi:noNamespaceSchemaLocation attrubute.
This is sample xml.
<?xml version="1.0" encoding="UTF-8"?>
<!--Sample XML file generated by XMLSPY v2004 rel. 3 U (http://www.xmlspy.com)-->
<ROOT xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://localhost/public/xsd/myapp.xsd">
<ID>0</ID>
<INFO>
<INFO_ID>0</INFO_ID>
<INFO_CONTENT>Text</INFO_CONTENT>
</INFO>
</ROOT>
Anybody knows if it is possible?
Thanks in advance..Hi,
It should work according to the documentation, but obviously it doesn't.
So I guess you'll have to consider one of these options :
- Changing the xsi:noNamespaceSchemaLocation at the source to use the URL of your registered schema instead
- The other way around : register your schema at the URL defined in the document
- Removing the xsi:noNamespaceSchemaLocation attribute prior to validation
Here's an example for the third option :
BEGIN
dbms_xmlschema.registerSchema(
schemaURL => 'myapp2.xsd'
, schemaDoc =>
'<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="ROOT">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:integer"/>
<xs:element name="INFO">
<xs:complexType>
<xs:sequence>
<xs:element name="INFO_ID" type="xs:integer"/>
<xs:element name="INFO_CONTENT" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>'
, local => true
, genTypes => false
, genTables => false
END;
SQL> declare
2
3 doc xmltype := xmltype('<?xml version="1.0" encoding="UTF-8"?>
4 <ROOT xmlns:xdb="http://xmlns.oracle.com/xdb"
5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xsi:noNamespaceSchemaLocation="http://localhost/public/xsd/myapp.xsd">
7 <ID>0</ID>
8 <INFO>
9 <INFO_ID>0</INFO_ID>
10 <INFO_CONTENT>Text</INFO_CONTENT>
11 </INFO>
12 </ROOT>');
13
14 isValid integer;
15
16 begin
17
18 doc := doc.deleteXML('/ROOT/@xsi:noNamespaceSchemaLocation','xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"');
19
20 select xmlisvalid(doc, 'myapp2.xsd') into isValid from dual;
21
22 dbms_output.put_line('isValid = '||to_char(isValid));
23
24 end;
25 /
isValid = 1
PL/SQL procedure successfully completed -
How to validate an xml with a schema w/o specifying the schema in the xml
I have done xml validation with xml schemas, where the xml points to the xsd to use. However, I would like to not have to specifiy the xml schema in the xml document (and can't ensure that the xml coming to us has that in it). How do I, in the java code, tell it what schema to use in validation?
Brianstatic final String schemaSource = argv[0];
static final String JAXP_SCHEMA_SOURCE =
"http://java.sun.com/xml/jaxp/properties/schemaSource";
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
factory.setAttribute(JAXP_SCHEMA_SOURCE,
new File(schemaSource)); -
JAXB: How to unmarshal from xml contains two schemas?
Hi, all.
My question is in subject.
Ex.)
schema1.xsd:
(snip)...
<xsd:element name="xxx">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
...(snip)
schema2.xsd:
(snip)...
<xsd:element name="yyy">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="zzz" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="zzz" type="xsd:string"/>
if I have a xml like the following, xml validation is correct:
sample.xml:
(snip)...
<ns1:xxx xmlns:ns1="...(schema1.xsd)...">
<ns2:yyy xmlns:ns2="...(schema2.xsd)...">
<ns2:zzz>SAMPLE</ns2:zzz>
</ns2:yyy>
</ns1:xxx>
I want to unmarshal from this xml using JAXB, but actually ths xxx didn't have any tag in List class given getAny() method, because xxx doesn't know about yyy, I think.
These schemas cannot change as requirements of customer.
How to unmarshal from xml contains two schemas using JAXB?
tx.I solved it myself.
JAXBContext can be specified many context path at same time.
Ex.)
context = JAXBContext.newInstance("package1:package2:package3...");
So, unmarshaller can know how to choose what be instanced.
tx. -
In our application we have a requirement to validate large xml file (around 40 mb) against a simple schema file.
I have tried all options(Sax and Dom) mentioned in below article on sun site -
http://java.sun.com/developer/EJTechTips/2005/tt1025.html
but with all of these approches the validation process just hangs for hours.
Even i am running my test case for this validation by allocating 1 GB memory to test case, on latest processor(core-2 duo) but still it just hangs and returns after a long duration.
If needed i can provide sample test case, schema file and xml file.
Please help me to know if its a problem with JAXP 1.3 Schema Validation Framework (SVF) to handle large files, or if there is any other efficient way of validating large xml file.
Regards
Rahulyou may want to split the XML to 10MB each and parse the XML's separately or store in a database and read the XML using XQuery.
I am sure there may be better ways to do this, will see experts opinions here.
Maybe you are looking for
-
I was trying to get the new iOS update, and the iPad froze. I've seen others who have the same problem, but they had the iCloud and things like that. I have a few stories on there, and I'm not about ready to lose them, as I was stupid enough to not t
-
Standard PCI to PCI bridge no longer working after BIOS update
Hey everyone, Before I get into the details of what is probably the most frustrating computer problem I have ever faced I would first like to say hello because this is my first post and I give you my system specs. Windows 7 ultimate x64 GA-M61PME-S2P
-
When i had flash player 7 installed i could open a website with flash that had music and once i closed that page the music would obviously automatically stop. Now that i installed Flash 8 even after i close the page the music keeps on playing even th
-
I want to stop the scheduling of the process chains for two days in a week. Presently the chains are running daily and i need to stop the loading for two days in a week.
-
Burning the CDs from ISO files - Solution
I have just finished burning the cd images and as I type this my little baby is coming to life! he he :-) I did try Nero but failed misrably so I offer the following as a solution that worked for me. Apologies to anyone if it appears I'm teaching 'Gr