XSD validation: wrong behaviour for mixed=false

Based on XSD report.xsd demo file, I experienced mixed="false" attribute of complex type.
<element name="purchaseReport">
<complexType mixed="false">
Such an attribute forbids text nodes in purchaseReport elements.
So such XML data should be rejected by XSDSetSchema tool:
<purchaseReport
xmlns="http://www.example.com/Report"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.example.com/Report report.xsd"
period="P3M" periodEnding="1999-12-31">
invalidchar
<regions>
However it passes Oracle schema validation, which is not expected.
It is rejected by XMLSpy, which is expected.
I didn't find such a bug report.
Does someone has a clue?
Tx,
François Loison

Hi Mark,
Thanks for your response for the confirmation of the bug.
Before we created this thread, we tested our case in Stylus Studio using the following XSD Validators:
- Saxonica 9.4.0.6
- Saxonica 9.4.0.6 for XSD 1.1
- Xalan Java 2.7.0
- .NET Framework XML Parser
- Xerces-J Validator 2.11.0 for XSD 1.1
All of them worked properly for the XML and XSD in question.
By the way, on the subject of the Oracle XML DB and XSD 1.1, any plans to support it?
Oracle 12c ?!
We will open an SR and provide it here. So you will be able to open a bug for this issue.

Similar Messages

  • Xsd validation in Database for 1 million record

    Hello All,
    I would like to know the pros and cons to do the xsd validation of a million record in 11g database and if possible the processing time taken to do xsd validation for million records.
    What would be good datatype to load this xml file of million records, should it be blog/clob or varchar2(200000000).
    Thanks.

    varchar2(200000000).SQL VARCHAR2 is limited to 4000
    PL/SQL VARCHAR2 is limited to 32767

  • Urgent Requirement : XSD Validation for internal references

    Hi,
    I have a requirement , according to which....i have
    Invoice Date and Contract Date and XSD validations on these two fields are dependent.
    i.e, invoice date is required if contract date is absent .
    Contract date is required if invoice date is absent.
    How can we validate the xml file with this scenario using XSD.
    Thanks for the help....in advance.
    Regards,
    Aru

    Hi,
    The solution to the problem u gave works fine but validates like AND condition not OR.........
    Any other answers..........Thanks for ur reply......
    Aru

  • XSD validation for incoming data into BPEL process

    Please suggest how to validate XSD incoming data into BPEL process.
    I just wanted to verify the data before entering into BPEL

    Hi,
    I guess i am replying very late.
    In BPEL 2.0 we have an activity called "Validate" which can do the XSD validations.
    "Lets Learn Oracle SOA: Validate XML schema In BPEL"
    Regards,
    Chinmaya

  • IDOC BOMMAT: Wrong validity-from dates for components

    Hi all,
    I am currently loading BOMs via IDOC BOMMAT for a data migration project. Unfortunately I am having problems to load the BOMs with the correct validity-from date for components. The data is correct when I check in LSMW, but after the load of the IDOCs the validity-from date of each component is the same as the validity date of the BOM header!
    System Version is SAP 4.7.
    Thanks for your help and Best Regards
    H.

    Has anybody any ideas?
    Thanks a lot!

  • Can SOA 11g fault policy handle XSD Validation errors from the Mediator?

    I would like all errors in my SOA process to go through the fault-policies.xml. But I don't seem to be able to catch any mediator error caused by an XSD validation failure. A sample of the sort of error I am trying to 'catch' is:
    Nonrecoverable System Fault          oracle.tip.mediator.infra.exception.MediatorException: ORAMED-01303:[Payload default schema validation error]XSD schema validation fails with error Invalid text 'A' in element: 'TermCode'Possible Fix:Fix payload and resubmit.
    My fault-policies.xml file is as follows:
    <?xml version="1.0" encoding="UTF-8" ?>
    <faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy">
    <faultPolicy version="2.0.1"
         id="NewStudentRegistrationFaults"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults" name="medns:1303">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    <faultName xmlns:rjm="http://schemas.oracle.com/sca/rejectedmessages" name="rjm:GetNewStudentRegistrationFile">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults" name="medns:TYPE_ALL">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension" name="bpelx:mediatorException">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension" name="bpelx:bindingFault">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    <faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension" name="bpelx:remoteFault">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="java-fault-handler">
    <javaAction className="edu.villanova.soa.handlers.FaultNotificationHandler"
    defaultAction="ora-human-intervention" propertySet="faultNotificationProps">
    <returnValue value="OK" ref="ora-human-intervention"/>
    </javaAction>
    </Action>
    <!-- Human Intervention -->
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <!-- Terminate -->
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    <!-- Property sets used by custom Java actions -->
    <Properties>
    <!-- Property set for FaultNotificationHandler customer java action -->
    <propertySet name="faultNotificationProps">
    <property name="from">[email protected]</property>
    <property name="to">[email protected]</property>
    <property name="subject">Reporting a SOA fault</property>
    </propertySet>
    </Properties>
    </faultPolicy>
    <faultPolicy version="2.0.1"
         id="MediatorFaults"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Conditions>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults" name="medns:1303">
    <condition>
    <action ref="java-fault-handler"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="java-fault-handler">
    <javaAction className="edu.villanova.soa.handlers.FaultNotificationHandler"
    defaultAction="ora-human-intervention" propertySet="faultNotificationProps">
    <returnValue value="OK" ref="ora-human-intervention"/>
    </javaAction>
    </Action>
    <!-- Human Intervention -->
    <Action id="ora-human-intervention">
    <humanIntervention/>
    </Action>
    <!-- Terminate -->
    <Action id="ora-terminate">
    <abort/>
    </Action>
    </Actions>
    <!-- Property sets used by custom Java actions -->
    <Properties>
    <!-- Property set for FaultNotificationHandler customer java action -->
    <propertySet name="faultNotificationProps">
    <property name="from">[email protected]</property>
    <property name="to">[email protected]</property>
    <property name="subject">Reporting a SOA rejected msg. fault</property>
    </propertySet>
    </Properties>
    </faultPolicy>
    </faultPolicies>
    My fault-bindings.xml file is as follows:
    <?xml version="1.0" encoding="UTF-8" ?>
    <faultPolicyBindings version="2.0.1"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <composite faultPolicy="NewStudentRegistrationFaults"/>
    <component faultPolicy="MediatorFaults">
    <name>NewStudentRegistrationMediator</name>
    </component>
    <service faultPolicy="NewStudentRegistrationFaults">
    <name>GetNewStudentRegistrationFile</name>
    </service>
    </faultPolicyBindings>
    You'll notice that I've tried a number of ways (and various other combinations) to try to steer the error above into my Java fault handler but nothing has meet with success. The mplan is as follows:
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <!--Generated by Oracle SOA Modeler version 1.0 at [2/3/10 1:21 PM].-->
    <Mediator name="NewStudentRegistationMediator" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/sca/1.0/mediator"
    wsdlTargetNamespace="http://xmlns.oracle.com/pcbpel/adapter/ftp/Experiments/NewStudentRegistration/GetNewStudentRegistrationFile%2F">
    <operation name="Get" deliveryPolicy="AllOrNothing" priority="4"
    validateSchema="true">
    <switch>
    <case executionType="queued" name="RegToBanner.insert_2">
    <action>
    <transform>
    <part name="$out.NewstudentregistrationCollection"
    function="xslt(xsl/NewStudentRegistration_To_NewstudentregistrationCollection.xsl, $in.body)"/>
    </transform>
    <invoke reference="RegToBanner" operation="insert"/>
    </action>
    </case>
    </switch>
    </operation>
    </Mediator>
    I'm a newbie to Oracle SOA. So perhaps I am missing the obvious. But I haven't read much in the documentation specifically about using the XSD validation option on the mediator and have seen nothing specifically about catching this sort of exception in the fault policy (apart from the faults I already have in my policy). Can anyone suggest what I am doing incorrectly here or perhaps whether what I am attempting to do is not possible? Thanks.
    - Cris

    Has anyone got it working yet?
    In my case, I have the following sequence:
    FileAdapter -> Mediator1 -> Mediator2->DB Adapter
    I am deliberately introducing validation error in File. Isn't it correct to assume Fault framework would get triggered at Mediator1 level since we are invoking FileAdapter service?
    I am getting a strange behaviour. If I enable XSD validation at Mediator1 level, process is Faulted with no re-try option. However, if I enable XSD validation ONLY at Mediator2 level, I get Recoverable fault. There seems to be some disconnect between documentation and reality. I am using JDeveloper 11.1.1.3.0 version and SOA Suite 11g.
    Thanks,
    Amjad.

  • Attributes missing after XSD validation!

    I'm feeding a very simple XML file into an equally simple XSD validator. When it returns, all of my tags are fine, but the attributes are dropped. If I parse the file directly, without validation, the attributes are fine.
    I've posted my files online at http://www.pastie.org/507569
    Am I doing something wrong here? Is this a bug in my JRE (1.6.0r14)?
    Thanks for any help,
    Norman

    XML
    <config blah="5">hello!</config>
    XSD
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
         <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd" />
      <xs:element name="config">
       <xs:complexType>
        <xs:simpleContent>
         <xs:extension base="xs:string">
          <xs:attribute name="blah" type="xs:string"/>
         </xs:extension>
        </xs:simpleContent>
       </xs:complexType>
      </xs:element>
    </xs:schema>
    My code...
    SchemaFactory schema_factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
    Schema schema = schema_factory.newSchema(new File("test.xsd"));
    StreamSource xml_source = new StreamSource(new File("test.xml"));
    StringWriter xml_bridge = new StringWriter();
    StreamResult xml_result = new StreamResult(xml_bridge);
    Validator validator = schema.newValidator();
    validator.validate(xml_source, xml_result);
    System.out.println("Validated to: " + xml_bridge.toString());
    Result...
    Validated to: <?xml version="1.0" encoding="UTF-8"?><config>hello!</config>

  • Wrong behaviours with TableCellRenderer

    Hi.
    I implemented my tablecellrenderer for dates. The problem is that the values of the column I rendered are not visually selected when I click on them.
    Moreover:
    when I click on a cell, sometimes it changes its content, according to the row I was selecting before.
    if three rows have the same date value, all three are selected.
    I tried using setOpaque (true) but this selected all the rows in that column.
    Here is my renderer..thanks for any little help
    public class DateTableCellRenderer extends JLabel implements TableCellRenderer {
    Timestamp curDate;
    public Component getTableCellRendererComponent(JTable table, Object value,
    boolean isSelected, boolean hasFocus, int rowIndex, int vColIndex) {
    if(value!=null){
    if (value instanceof Timestamp) {
    curDate = (Timestamp) value;
    SimpleDateFormat a = new SimpleDateFormat("dd/MM/yyyy", Locale.ITALY);
    String text = a.format(curDate);
    this.setText(text);
    if (isSelected) {
    this.setOpaque(true);
    setForeground(table.getSelectionForeground());
    setBackground(table.getSelectionBackground());
    } else {
    this.setOpaque(false);
    setForeground(table.getForeground());
    setBackground(table.getBackground());
    return this;
    }

    You're right. I forgot using the code tags to format my class. Here is my situation:
    I have a dinamic JTable to which I added a TableSorter. In the model I added object like BigDecimal, Strings and Timestamp and I created a TableCellRenderer for each type I can have inside the table. The wrong behaviours are those described in the previous post.
    Any help?
    Thanks camickr, but I think that the link you gave me is wrong

  • OSB: strict xsd validation

    Hi guys,
    I'm trying to validate an XML inside the OSB with this schema:
    <xsd:complexType name="GenericMessage">
    <xsd:sequence>
    <xsd:element name="generic_header" type="gm:GenericHeader">
    </xsd:element>
    <xsd:any maxOccurs="unbounded">
    </xsd:any>
    </xsd:sequence>
    </xsd:complexType>
    and the message:
    xmlns:doc="http://www.namespaces.com/schema/Document/v1"
    <gm:generic_header>
    </gm:generic_header>
    <doc:document>
    </doc:document >
    I can validate this message with the Oracle Workshop but when I send it to the OSB I always get this error:
    Element not allowed (strict wildcard, and no definition found): document@http://www.namespaces.com/schema/Document/v1
    I thought that maybe it weren't finding the schemaLocation so I tried to add it as a relative and/or absolute url:
    schemaLocation=” http://www.namespaces.com/schema/Document/v1 http://localhost:7010/sbresource?SCHEMA/...../Document” (this address works in a browser)
    But it didn't work either.
    Do you know if there is a bug or what I'm doing wrong?
    PS: I can't change the strict any element to a lax one.
    Thank you!
    Edited by: user10791025 on 21-oct-2011 2:46

    Hi ,
    As u said after take off <xsd:any> its working fine....
    Is tat xsd is valid one..????
    If ur using validate action it check and validate your input payload against the xsd ..let say for ex: xsd element excepts Boolean value but while testing the proxy input payload if we gave 13123 (numeric value) it through error..
    if it troughs error while validating in OSB server ..something wrong with validate action elements .
    Chck xpath------xsd element
    In variable --body
    against resouce ----xsd element or wsdl elemnt

  • XSd-validation isn't performed when invoking file Adapter

    I've configured an ESB where data needs to be transformed using a file adapter and a db adapter.
    The deleimted files first need to be validated using xsd (native transformation) and if validation was performed correctly they can be transformed and loaded into db tables.
    The xsd-validation isn't performed in my use case where some fields are required, have a decimal-format etc., if the files don't comply they're still picked up and being transformed to the db adapter, where the insertion will fail then because the file had errored records in it.
    I'm using esb 10.1.3.3 in this case.
    kind regards,
    Nathalie

    Hi Nathalie,
    I'm not able to define properties on my esb routing
    service in release 10.1.3.3, the definition tab isn't
    showing any detailed information for my routing
    service.Strange, we're also using 10.1.3.3. Make sure in the ESB Control when you select the routing service, that the operation for which you want to validate the payload is selected. If it is selected, the operation details section should show the validation option. Also see page 3-14 of the ESB Developers Guide. You can also change the esbsv-file:
    <operations>
    <operationInfo guid="xyz" qname="Test.Insert.insert" wsdlOperation="insert" mepDisplayName="One Way" mep="OneWay">
    <request validate="true" xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/d
    b/top/Insert" element="tns:TestCollection"/>
    </operationInfo>
    </operations>
    </service>
    using the validate="true" option.
    No logging is being generated for this matter, so I'm
    not sure which problem I'm facing wright now. I will
    bounce the service and try again.We had such an issue when we didn't validate payload at runtime and inserted data using DB adapter. Our TopLink mappings didn't correspond to the XML data to be inserted. That caused only 2 tables out of 4 to be updated, without any error logged. Enabling validation, resulted in an error being thrown; the behaviour we wanted.
    The only thing that's of importance here, is that I
    need to define this functionality within BPEL and not
    ESB, the customer has only acquired bpel for this
    matter because human task integration was necessary.One of the advantages of 11g fortuntely is that separation of concerns will be better. It will be much clearer where to use adapters. Not that this helps in your current case right now :-s
    I should be able to accomplish the xsd validation
    inside a bpel configuration.That should work, good luck!
    Regards, Ronald

  • Subsequent debit - different behaviour for PO based IR and GR based IR

    Hy Guys,
    i am facing currently a problem with my understanding of system behaviour for GR Based Invoice Verification in combination with Subsequent Debit Postings...
    Example 1 - System Behaviour in case of PO based Invoice Verification:
    PO with 3000 PC Material XYZ / Price 10 EUR
    Goods Receipt for all 3000 Pieces
    Goods Issue for 2000 Pieces
    Situation is now:
    Valuated Material XYZ with Stock Quantity 1000 PC / MAP 10 / Stock Value  = 10.000 EUR
    Subsequent Debit Posting for 300 EUR / 3000 PC
    Result is that Stock Account is debited with 100 EUR / Price Difference with 200 EUR
    New Situation is:
    Valuated Material XYZ with Stock Quantity 1000 PC / MAP 10,1 / Stock Value  = 10.100 EUR
    This makes sense to me!!!
    Example 2 - System Behaviour in case of GR based Invoice Verification:
    PO with 3000 PC Material XYZ / Price 10 EUR
    Seperate Goods Receipt for 1000 PC - three times
    Goods Issue for 2000 Pieces
    Situation is now:
    Valuated Material XYZ with Stock Quantity 1000 PC / MAP 10 / Stock Value  = 10.000 EUR
    Subsequent Debit Posting for 300 EUR / 3000 PC
    Result is that Stock Account is debited with 300 EUR  (But there are only 1000 PC currently on stock!!!!! -  System thinks there are 3000 on stock....)
    New Situation is:
    Valuated Material XYZ with Stock Quantity 1000 PC / MAP 10,3 / Stock Value  = 10.300 EUR
    In that case i think system behaviour is wrong, because MAP increased to much.
    Any comments? Is this customizable?
    Thanks!
    BR;
    Gregor

    Hi Gregor,
    Wellcome to SCN. Please, see SAP Note 308008 - FAQ: Posting logic: GR/IR clearing account, and related notes.
    Regards
    Eduardo

  • XSD VALIDATION IN ABAP PROGRAM

    Hi,
    I have a requirement where in a report i am picking xml file from the presentation server (desktop) and then i am parsing the xml file using FM "SMUM_XML_PARSE" (first i use FM SCMS_BINARY_TO_XSTRING and then SMUM_XML_PARSE). after using the function SMUM_XML_PARSE i get the xml data in my internal table and then my report uses that data for some processing. This all is working fine .
    My issue is that how do i do a XSD VALIDATION for the xml file that i am reading . I would have liked to do a xsd validation after i import the xml file and throw error if the xml file is not as per its xsd.As i am not using any middleware technology like XI/ WTX which have XSD validation functionality i am not sure how to achieve this in abap program.

    Hi,
    I think you're right, iXML can only validate DTD via its if_ixml_parser->set_validating method (you can find this information in SAP SDN article "ABAP XML Mapping", as of release 6.10, I couldn't find any other reference saying that xsi:noNamespaceSchemaLocation is supported since then).
    By looking at SDN, I saw an external link about XSD to DTD conversion via XSLT (http://crism.maden.org/consulting/pub/xsl/xsd2dtd.xsl), but I don't have any idea if it works. On another thread, people used OS command to do XML/XSD validation, but didn't describe what they ran exactly (anyway, that means using any external tool).
    Sandra

  • A valid provisioning profile for this executable was not found

    I have built an enterprise APP. It has been installed in hundreds of machine. It can run smoothly at the begining. After two months, a few of the machice cannot open the APP anymore. I have tried to read its crach log and it has nothing. Finally, i found out the reason by tracing the console log.
    The error is "A valid provisioning profile for this executable was not found".
    So I check if the file exist but it is disappeared. The user have not removed the profile.
    At last, I tried to install the profile again, it is still not working even the profile is installed. Is there anyone who have the same issue? Thank you very much
    Message was edited by: Ben125

    Sorry that I have made a mistake. A wrong profile is installed.
    Thanks

  • [AnyConnect] No valid certificates available for authentication

    Hi,
    We are using Cisco Anyconnect 3.0.0629 with certificate authentication (stored in Aladdin eToken)
    Most of users have no problem and it works fine.
    When one user tried to connect, he got a lot of errors "No valid certificates available for authentication" during 30 seconds. (~10 errors per second)
    In a normal behaviour, we should have only one error.
    Why is AnyConnect flooding this error?
    How could I resolve it?
    Thanks for your help,
    Patrick

    I also had the problem of "no valid certificates available for authentication", although it only prompted once, rather than a flood like the OP.
    However, the cause and solution for my problem was:
    The certificate used for authentication was issued by my internal CA, to the Computer, NOT the user.
    Although the user that is logged on is a local administrator, the AnyConnect Client application does not have the permission to send the certificate from the Computer store.
    The application needs to 'run as administrator'
    Right-click the application shortcut-> Properties->Compatibility->Privilege Level.
    Tick ->Run This Program As Administrator.
    I needed to reboot the client pc before this worked.
    n.b I was using Windows 8

  • XSD VALIDATION

    Hi,
    I have generated the DOM TREE and this dom tree need to pass through XSD Validate and then the generated (XML) is to go through the XSLT processor.
    I need your suggestion how to go with after generating the DOM TREE.
    Thanks.

    Nice find, Ben. Thanks.
    I've been using jUnit with the XML and XSD support in Java 5. Here's a link, if anyone is looking for a way to do XSD validation from within a Java program:
    http://itunesu-api-java.googlecode.com/svn/branches/xsd-validation/src/test/edu/ asu/itunesu/XsdTest.java
    Dave

Maybe you are looking for