Refer to another element in xml schema

Hello
i havea very basic question.
i am writing an xml schema. I'd like to ask that what should i do if i want to create an element which refers to another element within the same xml file.
Regards,
Beans

<xs:schema>
<xs:element name="A">
<xs:complexType>
<xs:sequence>
<xs:element ref="B"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="B"/>
</xs:schema>

Similar Messages

  • How to bind data from script created variable to embed element of XML schema (xsd) in "Data View"

    Hi, i have got another problem with livecycle designer scripting.
    I have got script line which is defining of string variable:
    var aaa = "this is my string";
    and i have got embed XML schema like this (it`s only short part of whole file):
    ... xs:element name="bbb" type="xs:string"/ ...
    After saving data to XML i would like to get "this is my string" as a value of my "bbb" XML element.
    To save this data i`m using submit button which is connect with submit.php file on my server.
    How to connect script created variable and embed XML schema element which is present on my "Data View" tab.
    Please help me a bit becouse i don`t know even where to search answer of it...
    Of course i know possibilities to create fake unvisible text field object and bind it with 'bbb' and than put "this.rawValue = aaa" to connect those two variables but i think that is not a good idea to solve it in that way. It`s too primitive

    i solve it, i should write this:
    xfa.datasets.data.bbb.value = aaa;

  • Unable to find root element in XML Schema when Syndicating (SAP MDM)

    Hi experts,
    We are having a problem with our Syndication.
    We have created an XML Schema using XML Spy. We need a namespace, and this is 70 characters long (in other words, far shorter than maximum at 255 characters).
    <xs:schema xmlns:ns="http://schemas.xxxxx.com/ServiceManagement/ServiceMasterDataFromMDM/0.3" xmlns:xs="http://www.xxxxx.org/2001/XMLSchema" targetNamespace="http://schemas.xxxxxx.com/ServiceManagement/ServiceMasterDataFromMDM/0.3" elementFormDefault="unqualified" attributeFormDefault="unqualified">
    When opening the xml schema file in Syndicator, the root field is disabled.
    If we remove namespace in heading of xml schema, the root field is enabled, and the root element is correct.
    How can we make use of the XML schema when we need namespace?
    We have tried to add namespace annotation ns: to all type definitions:
       <xs:element name="ServiceCategory" type="ns:ServiceCategoryType">
    This did not help.
    Please advice.
    KR,
    Thomas
    Edited by: Thomas on Mar 2, 2011 2:12 PM

    >>We need a namespace, and this is 70 characters long
    If you want namespace to appear in XML and your XSD has it too. please add the namespace under "URI" attribute in XML schema in Console.
    You need to import the XSD in Console first, specify namespace under URI and then use this to build syndication map.
    Thanks
    Aamir

  • Insert XHTML elements inside XML schema

    Hi,
    My oracle version is 10.2.0.2.0. Following this suggest :
    http://forums.oracle.com/forums/thread.jspa?messageID=835251&#835251
    I tried to create a schema in this way:
    <?xml version="1.0"?>
    <xs:schema
         xmlns:xs="http://www.w3.org/2001/XMLSchema"
         xmlns:xdb="http://xmlns.oracle.com/xdb"
         targetNamespace="http://test.example.it/test"
         xmlns="http://test.example.it/test"
         elementFormDefault="qualified"
         attributeFormDefault="unqualified">
         <!-- definition of main element -->
         <xs:element name="Project">
              <xs:complexType>
                   <xs:sequence>
                        <xs:element name="AnnoBando" type="xs:string" xdb:SQLType="CLOB"/>
                        <xs:element name="AnnoBando2" type="xs:string"/>
                   </xs:sequence>
              </xs:complexType>
         </xs:element>
    </xs:schema>In this schema only element "AnnoBando" contains XHTML elements, my question is, when I upload my xml document, can I pass directly XHTML elements in this way?
    insert into TESTSQLTYPE values ('codice', xmltype('
    <Project
         xmlns = "http://test.example.it/test"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns:xml="http://www.w3.org/XML/1998/namespace"
         xsi:schemaLocation = "http://test.example.it/test http://test.example.it/test2.xsd">
         <AnnoBando> text <b>bolded text</b> text</AnnoBando>
      <AnnoBando2>empty text</AnnoBando2>
    </Project>
    '))or I should insert html entities of "<" and ">" of the element?
    If i try to insert the xml example specified here I get this error:
    ORA-31187: Cannot Add Node 'b' (type='element') to Simple Type Node '/Project/Annobando'Thanks for your help.
    Stefano

    Try these two:
    1.
    ======
    <AnnoBando>![CDATA[text &lt;b&gt;bolded text&lt;/b&gt; text]]</AnnoBando>
    =======
    2.
    ======
    <AnnoBando> text &amp;lt;b&amp;gt;bolded text&amp;lt;/b&amp;gt; text</AnnoBando>
    =======<p>
    Basically, because '<' and '>' are used for element declarations in XML, you cannot include them 'nude' in the element content. The above are two methods of escaping those characters.
    <p>
    Leigh.

  • Limiting attributes of multiple elements with XML Schema

    I am working with a curriculum development group and we are trying to get all of their content into and XML format so that it can be easily displayed by a browser and parsed by our application. For quiz pages we would like to do something like the following:
    <question>
      <text>Who won superbowl XXXII?</text>
      <answer correct="true">Denver Broncos</answer>
      <answer correct="false">Green Bay Packers</answer>
      <answer correct="false">Dallas Cowboys</answer>
      <answer correct="false">Atlanta Falcons</answer>
    </question>However, I can't find a way to limit it so that only one answer element within a question element can have a correct attribute with the value of true. Is this possible?
    Additionally, if anybody has recommendations for already developed XML based languages for curriculum that they have experience with that would be appreciated.

    well, you create 4 sequences where each sequence has a different team winning, and then choice these 4 sequences together. Admittedly, that would be ugly.

  • JAXP API provides no way to enable XML Schema validation mode

    I am evaluating XDK 9.2.0.5.0 for Java and have encountered another
    problem with XML Schema support when using the JAXP API.
    Using the classes in oracle.xml.jaxp.*, it appears to be impossible to
    enable XML Schema validation mode. I can set the schema object, but
    the parser does not use it for validation.
    If I use DOMParser directly, I can call the setValidationMode(int)
    method to turn on schema validation mode. There is no equivalient
    means to enable XML Schema validation when using the JAXP API.
    Test case for JAXP API:
    === begin OracleJAXPSchemaTest.java ======
    package dfranklin;
    import java.io.*;
    import javax.xml.parsers.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    import oracle.xml.parser.schema.XMLSchema;
    import oracle.xml.parser.schema.XSDBuilder;
    import org.w3c.dom.*;
    import org.xml.sax.*;
    public class OracleJAXPSchemaTest
    private final static String xsd = ""
    +"<xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"urn:dfranklin:test\">"
    +" <xsd:element name=\"amount\" type=\"xsd:integer\"/>"
    +"</xsd:schema>";
    private final static String xml =
    "<amount xmlns=\"urn:dfranklin:test\">1</amount>";
    public static void main(String[] args)
    throws Exception
    System.setProperty("javax.xml.parsers.DocumentBuilderFactory",
              "oracle.xml.jaxp.JXDocumentBuilderFactory");
    new OracleJAXPSchemaTest().run();
    public void run()
    throws Exception
    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    dbf.setValidating(true);
    dbf.setNamespaceAware(true);
    XMLSchema xmlSchema = buildXMLSchema(new StringReader(xsd));
    dbf.setAttribute("oracle.xml.parser.XMLParser.SchemaObject",
              xmlSchema);
    DocumentBuilder docbldr = dbf.newDocumentBuilder();
    Document doc = docbldr.parse(new InputSource(new StringReader(xml)));
    print(doc);
    private XMLSchema buildXMLSchema(Reader xsdin)
    throws Exception
    XSDBuilder xsdBuilder = new XSDBuilder();
    XMLSchema xmlSchema = (XMLSchema)xsdBuilder.build(xsdin, null);
    return xmlSchema;
    private void print(Document doc)
    throws
    javax.xml.transform.TransformerConfigurationException,
    javax.xml.transform.TransformerException
    Transformer xformer = TransformerFactory.newInstance().newTransformer();
    xformer.transform(new DOMSource(doc), new StreamResult(System.out));
    System.out.println();
    === end OracleJAXPSchemaTest.java ======
    Running that program:
    java dfranklin.OracleJAXPSchemaTest
    produces this output
    Exception in thread "main" oracle.xml.parser.v2.XMLParseException: Element 'amount' used but not declared.
    at oracle.xml.parser.v2.XMLError.flushErrors(XMLError.java:148)
    at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:269)
    at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:149)
    at oracle.xml.jaxp.JXDocumentBuilder.parse(JXDocumentBuilder.java:96)
    at dfranklin.OracleJAXPSchemaTest.run(OracleJAXPSchemaTest.java:40)
    at dfranklin.OracleJAXPSchemaTest.main(OracleJAXPSchemaTest.java:27)
    This shows that the parser is not using the XML Schema to validate the
    document. I think it's expecting to find a DTD.
    Here is the equivalent program using DOMParser directly, and setting
    validation mode to SCHEMA_VALIDATION.
    === begin OracleParserTest.java ====
    package dfranklin;
    import java.io.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    import oracle.xml.parser.schema.XMLSchema;
    import oracle.xml.parser.schema.XSDBuilder;
    import oracle.xml.parser.v2.DOMParser;
    import oracle.xml.parser.v2.XMLParser;
    import org.w3c.dom.*;
    import org.xml.sax.*;
    public class OracleParserTest
    private final static String xsd = ""
    +"<xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"urn:dfranklin:test\">"
    +" <xsd:element name=\"amount\" type=\"xsd:integer\"/>"
    +"</xsd:schema>";
    private final static String xml =
    "<amount xmlns=\"urn:dfranklin:test\">1</amount>";
    public static void main(String[] args)
    throws Exception
    new OracleParserTest().run();
    public void run()
    throws Exception
    DOMParser dp = new DOMParser();
    XMLSchema xmlSchema = buildXMLSchema(new StringReader(xsd));
    dp.setXMLSchema(xmlSchema);
    dp.setValidationMode(XMLParser.SCHEMA_VALIDATION);
    dp.parse(new InputSource(new StringReader(xml)));
    Document doc = dp.getDocument();
    print(doc);
    private XMLSchema buildXMLSchema(Reader xsdin)
    throws Exception
    XSDBuilder xsdBuilder = new XSDBuilder();
    XMLSchema xmlSchema = (XMLSchema)xsdBuilder.build(xsdin, null);
    return xmlSchema;
    private void print(Document doc)
    throws
    javax.xml.transform.TransformerConfigurationException,
    javax.xml.transform.TransformerException
    Transformer xformer = TransformerFactory.newInstance().newTransformer();
    xformer.transform(new DOMSource(doc), new StreamResult(System.out));
    System.out.println();
    === end OracleParserTest.java ====
    Running that program
    java dfranklin.OracleParserTest
    produces this output
    <?xml version = '1.0'?>
    <amount xmlns="urn:dfranklin:test">1</amount>
    In this case, the parser has validated the document.
    I also tried this with version 10.1.0.0.0 beta, and got the same
    error.
    Darin Franklin

    Thanks for posting that. I tried that code and still got my problem. The big difference is that I'm reading a group of XML files each of which uses a large number of schema files. There are over 50 schema files organized so they can be included as needed. Each of the XML files has a noNamespaceSchemaLocation attribute specifying one of the ten top schma files, that includes many others.
    However, I did solve the problem. I added one line --
           saxb.setFeature( "http://apache.org/xml/features/validation/schema",
                    true);
            // next line is new
            saxb.setProperty( JAXPConstants.JAXP_SCHEMA_LANGUAGE,
                    JAXPConstants.W3C_XML_SCHEMA );after the setFeature to turn on schema validation.
    (It needs an import org.apache.xerces.jaxp.JAXPConstants; statement.)
    Note:With the feature set to true and the setProperty commented out, the EntityResolver is called at construction tiem, and for each schema file, but each element is flagged as needing to be declared.
    With the feature commented out, and the setProperty in place, the EntityResolver is not called, and there is no validation performed. (I added invalid content to one of the files and there were no errors listed.)
    With both the setFeature and the setProperty in place, however, I get the calls from the EntityResolver indicating that it is processing the schema files, and for the good files, I get no errror, but for the bad file, I get an error indicating a bad validation.
    Now I can make the EntityResolver quiet and get what I wanted. Maybe there are other ways to do this, but I've got one that works. :-)
    Thanks to all who have helped.
    Dave Patterson

  • Can't import XML schema with ref to external namespace

    In TopLink 10.1.3 Dev Preview 3 (build 041116), I have 2 simple schema files. One defines an element as a ref to an element in the other schema, so the ref points to an element in an external namespace. TopLink won't import this schema.
    First schema, imports fine:
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       targetNamespace="http://www.oracle.com/employee"
       xmlns="http://www.oracle.com/employee"
       elementFormDefault="qualified"
       attributeFormDefault="unqualified">
         <xs:element name="employee">
           <xs:complexType>
             <xs:sequence>
                    <xs:element name="name" type="xs:string"/>
             </xs:sequence>
           </xs:complexType>
         </xs:element>
    </xs:schema>
    Second schema, fails import with "ERROR: null. Please check to ensure the document conforms to the XML Schema specification and try again":
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       targetNamespace="http://www.oracle.com/department"
       xmlns="http://www.oracle.com/department"
       xmlns:employee="http://www.oracle.com/employee"
       elementFormDefault="qualified"
       attributeFormDefault="unqualified">
       <xs:import
         namespace="http://www.oracle.com/employee"
             schemaLocation="employee.xsd"/>
       <xs:element name="department">
         <xs:complexType>
           <xs:sequence>
             <xs:element ref="employee:employee"         maxOccurs="unbounded"/>
           </xs:sequence>
         </xs:complexType>
       </xs:element>
    </xs:schema>
    Both schemas are valid according to the W3C schema validation checker at http://www.w3.org/2001/03/webdata/xsv.
    I can work around the issue by putting the employee definitions into the department schema file so that all elements are in the same namespace. But I would like the schemas to be in separate files for better modularity and maintainability.
    Am I doing something wrong? I would really like to be able to use references to external namespaces in my element definitions.
    Thanks,
    Dave

    Hello David,
    Apologies, but this is a bug in DP3 with respect to references to elements in imported namespaces. This has been fixed in current code, but until you get that, there are a couple ways to work around it:
    ==========================================================
    1) Use an include rather than an import.
    department.xsd
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
        targetNamespace="http://www.oracle.com/department"
        xmlns="http://www.oracle.com/department"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified">
       <xs:include schemaLocation="employee.xsd"/>
       <xs:element name="department">
          <xs:complexType>
             <xs:sequence>
                <xs:element ref="employee" maxOccurs="unbounded"/>
             </xs:sequence>
          </xs:complexType>
       </xs:element>
    </xs:schema>employee.xsd
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        targetNamespace="http://www.oracle.com/department"
        xmlns="http://www.oracle.com/department"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified">
       <xs:element name="employee">
          <xs:complexType>
             <xs:sequence>
                <xs:element name="name" type="xs:string"/>
             </xs:sequence>
          </xs:complexType>
       </xs:element>
    </xs:schema>You should only have to import the parent schema (i.e. department.xsd), as the included document will automatically be built in. Note that this works for imports as well, provided that there aren't nasty bugs blocking the process.
    ==========================================================
    2. Build everything into the same document
    department.xsd
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema
        targetNamespace="http://www.oracle.com/department"
        xmlns="http://www.oracle.com/department"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified">
       <xs:element name="department">
          <xs:complexType>
             <xs:sequence>
                <xs:element ref="employee" maxOccurs="unbounded"/>
             </xs:sequence>
          </xs:complexType>
       </xs:element>
       <xs:element name="employee">
          <xs:complexType>
             <xs:sequence>
                <xs:element name="name" type="xs:string"/>
             </xs:sequence>
          </xs:complexType>
       </xs:element>
    </xs:schema>Obviously, this one won't work quite as well in some cases.
    ==========================================================
    Until you can get to the latest code, I hope this helps some.
    - Paul

  • Question about xml schemas and the use of unqualified nested elements

    Hello,
    I have the following schema:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns="http://xml.netbeans.org/examples/targetNS"
        targetNamespace="http://xml.netbeans.org/examples/targetNS"
        elementFormDefault="unqualified">
        <xsd:element name="name" type="xsd:string"/>
        <xsd:element name="age" type="xsd:int"/>
        <xsd:element name="person">
            <xsd:complexType>
                <xsd:sequence>
                    <xsd:element ref="name"/>
                    <xsd:element ref="age"/>
                   <xsd:element name="height" type="xsd:int"/>
                </xsd:sequence>
            </xsd:complexType>
        </xsd:element>
    </xsd:schema>I am just wondering why would someone have a nested element that is unqualified? here the "height" element.
    Can anyone explain this to me please?
    Thanks in advance,
    Julien.
    here is an instance xml document
    <?xml version="1.0" encoding="UTF-8"?>
    <person xmlns='http://xml.netbeans.org/examples/targetNS'
      xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
      xsi:schemaLocation='http://xml.netbeans.org/examples/targetNS file:/E:/dev/java/XML/WebApplicationXML/web/newXMLSchemaThree.xsd'>
    <name>toto</name>
    <age>40</age>
    <height>180</height>
    </person>

    Don't worry about it.
    There are two different styles of schemas. In one style, you define the elements, attributes, etc. at the top, and then use the "ref" form to refer to them. (I call this the "global" style.) The other style is to define elements inline where they are used. ("local" style)
    Within some bounds, they work the same and which you use is a choice of you and the tools that generate the schemas.
    A warning about the local style. It is possible to define an element in two different locations in the schema that are different. It will get past all schema validation, but it seems wrong to my sense of esthetics. With the global style, this will not happen.
    So, how did this happen? Probably one person did the schema when it only had a name and age. Then, someone else added the height element. They either used a different tool, or preferred the other style. I'm aware of no difference in the document you have described between the two styles.
    Dave Patterson

  • XML Schema any element

    I have a list of schema files and they a number of elements in them. But for my data extraction i use only close to 300 tags. When i register the schema I get an error that a table cannot of have more than 1000 columns. My work mate is working on Annotations and I am planning to build a new schema to make extract only these 300 tag names and also make sure the XML file can be validated like it did earlier. Explaining this i came across a complex type element called *<any>* which can be used to allow elements to be available which are not declared within the schema file.
    My Original schema file looks something like below,
    <xsd:complexType name="WfInformation">
    <xsd:all minOccurs="0">
    <xsd:element name="Company" type="WfCompany" minOccurs="0" />
    <xsd:element name="HeadOffice" type="WfOffice" minOccurs="0" />
    <xsd:element name="IndependentOffice" type="WfIOffice" minOccurs="0" />
    <xsd:element name="AffiliateCompany" type ="WfIAOffice" minOccurs="0" />
    <xsd:element name="Number" type="xsd:string" minOccurs="0" />
    <xsd:element name="ReferenceID" type="xsd:string" minOccurs="0" />
    </xsd:all>
    </xsd:complexType>
    of the above list of items i use only elements Company, HeadOffice, Number. After reading through some documentation I wanted to <any> tag like below,
    <xsd:complexType name="WfInformation">
    *<xsd:sequence>*
    <xsd:element name="Company" type="WfCompany" minOccurs="0" />
    <xsd:element name="HeadOffice" type="WfOffice" minOccurs="0" />
    *<xsd:any processContents="lax"/>*
    *<xsd:any processContents="lax"/>*
    <xsd:element name="Number" type="xsd:string" minOccurs="0" />
    *<xsd:any processContents="lax"/>*
    *</xsd:sequence>*
    </xsd:complexType>
    My question is if I am correcting the lines as i mentioned above will be Register schema again fail with same reason that i have 1000 columns. As i understand every element inside an Complex element is stored as a column value. In that case will this redesign work. Or is there any other way to approach re-desgin the XML Schema.

    Thanks. I think that leaves out my option to create a totally new Schema to suit my XML files.
    Only other option we have is to use Annotations.
    I think my colleague - eoin62 would have shared the XML Schema files earlier through your oracle email address.
    Please refer thread - How to register multiple XSD files
    But we received a reply and we knew very little on how to make changes to Admin.xsd and how would that solve our problem. Please correct me if i am incorrect. Because the biggest Schema was estimate.xsd that has close to 800+ elements. I am not sure if my colleague sent you the necessary tag names we use within the Schema. We have close to around 300 tags we use. But our combined XML Schema has close to 1600+ If we have to annotate, i thought it would be better we tell Oracle which tagswe need, which inturn should should help better create XMLtype table against a Schema and work on performance.
    Your earlier reply was,
    Basically in XML Schema Admin.xsd element AdminCompin WorkfileTypeneeds to be stored Out of line..
    Add the annotations xdb:SQLInline=”false” and xdb:defaultTable=”ADMIN_COMP_XML”. to the element..
    if you can share with our XML Schema on how to annotate or if you can share a location that shows how an annotated or non-annotated Schema works that would help us correcting our Schema files.
    Thanks for all your support. We have gone a long way in XML Parsing in the last 6 weeks.
    Edited by: beta32c on Feb 19, 2013 12:09 AM

  • Specifying nested element with two different XML Schema

    Hello,
    I am trying to convert one xml file to another file. I figure data services would be great for this.
    My problem relates to how to have a source xml file with a certain xml schema be transformed to one of a different xml schema. I cannot build the nested elements of the target schema.
    From the source xml I only need four fields. But they need to be nested three levels in the target xml.
    Source
    <DRUG_PRODUCT_LST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <DRUG_ITEM>
          <DRUG_PRODUCT_ID>113083</DRUG_PRODUCT_ID>
          <DIN_PDIN>2317559</DIN_PDIN>
          <HC_BRAND_NAME>PMS-SILDENAFIL</HC_BRAND_NAME>
          <HC_ATC_CODE>G04BE03</HC_ATC_CODE>
       </DRUG_ITEM>
    <DRUG_PRODUCT_LST
    Target
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <CODES>
       <CODE_TYPES>
          <CODE_TYPE>
             <COD_CODE>113083</COD_CODE>
             <COD_DESCR>PMS-SILDENAFIL</COD_DESCR>
             <COD_SOURCE>G04BE03</COD_SOURCE>
             <COD_NPSA>2317559</COD_NPSA>
          </CODE_TYPE>
       </CODE_TYPES>
    </CODES>
    I have tried using an xml pipline to unnest the source, then use a query transform to re-nest for the target. But I do not know how to specify the input schemas.

    Hello,
    I am trying to convert one xml file to another file. I figure data services would be great for this.
    My problem relates to how to have a source xml file with a certain xml schema be transformed to one of a different xml schema. I cannot build the nested elements of the target schema.
    From the source xml I only need four fields. But they need to be nested three levels in the target xml.
    Source
    <DRUG_PRODUCT_LST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <DRUG_ITEM>
          <DRUG_PRODUCT_ID>113083</DRUG_PRODUCT_ID>
          <DIN_PDIN>2317559</DIN_PDIN>
          <HC_BRAND_NAME>PMS-SILDENAFIL</HC_BRAND_NAME>
          <HC_ATC_CODE>G04BE03</HC_ATC_CODE>
       </DRUG_ITEM>
    <DRUG_PRODUCT_LST
    Target
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <CODES>
       <CODE_TYPES>
          <CODE_TYPE>
             <COD_CODE>113083</COD_CODE>
             <COD_DESCR>PMS-SILDENAFIL</COD_DESCR>
             <COD_SOURCE>G04BE03</COD_SOURCE>
             <COD_NPSA>2317559</COD_NPSA>
          </CODE_TYPE>
       </CODE_TYPES>
    </CODES>
    I have tried using an xml pipline to unnest the source, then use a query transform to re-nest for the target. But I do not know how to specify the input schemas.

  • How can I  refer an xml  Schema that was registred in Oracle xml DB

    How can I refer an xml Schema that was registred in Oracle xml DB, from other xml schema?
    I have the follow schema,:
    <?xml version="1.0" encoding="AL32UTF8"?>
    <xsd:schema targetNamespace="schemastipostasa.xsd"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xdb="http://xmlns.oracle.com/xdb/XDBSchema.xsd"
    elementFormDefault="unqualified" version="1.0"
    attributeFormDefault="unqualified">
    <xsd:simpleType name="codigosType" xdb:SQLType="NUMBER(4)">
    <xsd:restriction base="xsd:positiveInteger" >
    <xsd:totalDigits value="4" />
    </xsd:restriction>
    </xsd:simpleType >
    <xsd:simpleType name="integerUnoType" xdb:SQLType="NUMBER(1)">
    <xsd:restriction base="xsd:int" >
    <xsd:totalDigits value="1" />
    </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="condicionType" xdb:SQLType="VARCHAR2(1)">
    <xsd:restriction base="xsd:string">
    <xsd:enumeration value="S" >
    <xsd:annotation>
    <xsd:documentation>Condicion si es S</xsd:documentation>
    </xsd:annotation>
    </xsd:enumeration>
    <xsd:enumeration value="N" >
    <xsd:annotation>
    <xsd:documentation>Condicion no es N</xsd:documentation>
    </xsd:annotation>
    </xsd:enumeration>
    </xsd:restriction>
    </xsd:simpleType >
    </xsd:schema>
    I registred the schema written above with the folowwing pl*sql :
    DECLARE
    direc varchar2(2000);
    nombreArch BFILE;
    mens varchar2(2000);
    BEGIN
    direc:=uso_comun.pack_mail.fun_valor_param('TASA','DIR_DBSERVER');
    nombreArch:=bfilename(direc,'schemas_tipos_tasa.xsd');
    DBMS_XMLSCHEMA.registerSchema(
    SCHEMAURL => 'http://xmlns.oracle.com/tasa/schemas.tipos.tasa.xsd',
    SCHEMADOC => nombreArch,
    LOCAL => TRUE,
    CSID => nls_charset_id('AL32UTF8'));
    dbms_lob.CLOSE(nombreArch);
    dbms_output.put_line('salio sin cancelar');
    exception
    when others then
    mens:=sqlerrm;
    dbms_lob.CLOSE(nombreArch);
    rollback;
    raise_application_error (-20001,'en registro shcema='||mens);
    END;
    Then, I want to register the following schema, that mention de schema above:
    <?xml version="1.0" encoding="AL32UTF8"?>
    <xsd:schema targetNamespace="schema.repuesto.xsd"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xdb="http://xmlns.oracle.com/xdb/XDBSchema.xsd"
    xmlns:tns="http://xmlns.oracle.com/tasa/schemas.tipos.tasa.xsd"
    elementFormDefault="qualified" version="1.0"
    attributeFormDefault="unqualified" >
    <xsd:element name="PRECIORENG" type="preciorepType" />
    <xsd:complexType name="preciorepType" >
    <xsd:sequence minOccurs="1" maxOccurs="unbounded">
    <xsd:element name="CODIGO_MARCA" type="tns:codigosType" />
    <xsd:element name="ORIGEN_PRECIO" type="tns:integerUnoType" />
    <xsd:element name="INGRESO_POR_FALTANTE" type="tns:condicionType" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    But when a run the following script whith the same db-user:
    DECLARE
    direc varchar2(2000);
    nombreArch BFILE;
    mens varchar2(2000);
    BEGIN
    direc:=uso_comun.pack_mail.fun_valor_param('TASA','DIR_DBSERVER');
    -- nombreArch:=bfilename(direc,'prueba_schema_seis.xsd');
    nombreArch:=bfilename(direc,'Schema_repuesto_nuevo.xsd');
    DBMS_XMLSCHEMA.registerSchema(
    SCHEMAURL =>'http://xmlns.oracle.com/tasa/schema.repuesto.xsd',
    SCHEMADOC => nombreArch,
    LOCAL => TRUE,
    CSID => nls_charset_id('AL32UTF8'));
    dbms_lob.CLOSE(nombreArch);
    dbms_output.put_line('salio sin cancelar');
    --commit;
    exception
    when others then
    mens:=sqlerrm;
    dbms_lob.CLOSE(nombreArch);
    rollback;
    raise_application_error (-20001,'en registro shcema='||mens);
    END;
    tell me the error: ORA: 01031, insufficient privileges!!!!, what’s wrong??,

    Hi,
    To register schema, you require XDBADMIN system privilege granted to the user.
    Please verify this and retry.
    Rgds,
    Rakesh Tripathi

  • 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.
    Dom

    Hi 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.

  • MDIS ValueX XML Structure, element TEXT not found in xml schema

    When you extract ECC Contract through MECCM using port ERP Contract Data Transmission, if your mapping isn't correct 2 exception types are created: StructuralX or ValueX (and ImportX but I haven't seen this type of exception yet).
    Anyone noticed that the structure of the XML messages are actually different? The XSD for structuralX files are the same as the files placed in the "ready" folder, where as the XSD for the valueX files are DIFFERENT, and contain a tag called <TEXT>.
    This raises an issue when we're trying to handle exceptions in Import Manager using the type Port.  We get error "Logon Error: Source file does not conform to XML Schema. Element <TEXT> not found in xml schema".
    We can process exceptions in the structuralX folder, but not in the valuex folder because the xml file structure in the valuex folder is different.
    Just wondering if anyone else has had this issue or has resolved it.  We will open message with SAP.
    Thanks.

    Hello
    What is your MDM version ?
    this issue happened in old MDM 7.1 versions but was fixed in SP-2 unless you mapped Clone fields and in this case the fix is a bit later.
    In MDM 7.1 the latest builds of SP-2 and SP-3 should have the fix for all issues. But if you use MDM 5.5 then some issues regarding XSD conversion for exception where not addressed due to technical issues.
    The workaround for MDM 5.5 (If you use a late build of SP-6 Patch-4 or SP-6 Patch-5)  is to use the original file to fix the exception and not the file in the exception folder.
    Please notice that when you have Structural exception then all the Source XML file will go to the Exception folder.
    But in case of Value Exception - The source XML file will be dropped in the archive folder and another XML file containing VXR's (Virtual Extended Records) will be dropped in the exception folder, Therefore will have a different structure.
    Hope it helps.
    Thanks.
    Best Regards.
    Yaron.

  • Obtain  name into name element (XML schema)

    Hello abappers,
    I need obtain the next code XML schema
    <xs:element name='AuditFile'>
        <xs:complexType>
          <xs:sequence>
            <xs:element ref='Header' />
            <xs:element ref='MasterFiles' />
            <xs:element name='GeneralLedgerEntries' />
            <xs:element name='SourceDocuments' />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    The code:
    l_element_Audito           TYPE REF TO if_ixml_element,
    l_document        TYPE REF TO if_ixml_document.
    l_element_AuditFile            TYPE REF TO if_ixml_element,
    l_element_GeneralLedgerEntries TYPE REF TO if_ixml_element,
    l_element_SourceDocuments      TYPE REF TO if_ixml_element,
    l_element_Header             TYPE REF TO if_ixml_element,
    l_element_MasterFiles             TYPE REF TO if_ixml_element,
    Fill root node with value AuditFile
            l_element_AuditFile  = l_document->create_simple_element(
                        name = 'AuditFile'
                        parent = l_element_Audito ).
    Create element 'Header' as child of 'AuditFile'
            l_element_Header  = l_document->create_simple_element(
                        name = 'Header'
                        parent = l_element_AuditFile  ).
    Create element 'MasterFiles' as child of 'AuditFile'
            l_element_MasterFiles  = l_document->create_simple_element(
                        name = 'MasterFiles'
                        parent = l_element_AuditFile  ).
    Create element 'GeneralLedgerEntries' as child of 'AuditFile'
            l_element_GeneralLedgerEntries  = l_document->create_simple_element(
                        name = 'GeneralLedgerEntries'
                        parent = l_element_AuditFile  ).
    Create element 'SourceDocuments' as child of 'AuditFile'
            l_element_SourceDocuments  = l_document->create_simple_element(
                        name = 'SourceDocuments'
                        parent = l_element_AuditFile  ).
    and with the this code obtain:
    <xs:element name="AuditFile">
    <xs:complexType>
    <xs:sequence>
      <xs:element ref="Header" />
      <xs:element ref="MasterFiles" />
      <xs:element ref="GeneralLedgerEntries" />
      <xs:element ref="SourceDocuments" />
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    Can you help me, please?
    Cordial greetings.

    Hello abappers,
    I need obtain the next code XML schema
    <xs:element name='AuditFile'>
        <xs:complexType>
          <xs:sequence>
            <xs:element ref='Header' />
            <xs:element ref='MasterFiles' />
            <xs:element name='GeneralLedgerEntries' />
            <xs:element name='SourceDocuments' />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    The code:
    l_element_Audito           TYPE REF TO if_ixml_element,
    l_document        TYPE REF TO if_ixml_document.
    l_element_AuditFile            TYPE REF TO if_ixml_element,
    l_element_GeneralLedgerEntries TYPE REF TO if_ixml_element,
    l_element_SourceDocuments      TYPE REF TO if_ixml_element,
    l_element_Header             TYPE REF TO if_ixml_element,
    l_element_MasterFiles             TYPE REF TO if_ixml_element,
    Fill root node with value AuditFile
            l_element_AuditFile  = l_document->create_simple_element(
                        name = 'AuditFile'
                        parent = l_element_Audito ).
    Create element 'Header' as child of 'AuditFile'
            l_element_Header  = l_document->create_simple_element(
                        name = 'Header'
                        parent = l_element_AuditFile  ).
    Create element 'MasterFiles' as child of 'AuditFile'
            l_element_MasterFiles  = l_document->create_simple_element(
                        name = 'MasterFiles'
                        parent = l_element_AuditFile  ).
    Create element 'GeneralLedgerEntries' as child of 'AuditFile'
            l_element_GeneralLedgerEntries  = l_document->create_simple_element(
                        name = 'GeneralLedgerEntries'
                        parent = l_element_AuditFile  ).
    Create element 'SourceDocuments' as child of 'AuditFile'
            l_element_SourceDocuments  = l_document->create_simple_element(
                        name = 'SourceDocuments'
                        parent = l_element_AuditFile  ).
    and with the this code obtain:
    <xs:element name="AuditFile">
    <xs:complexType>
    <xs:sequence>
      <xs:element ref="Header" />
      <xs:element ref="MasterFiles" />
      <xs:element ref="GeneralLedgerEntries" />
      <xs:element ref="SourceDocuments" />
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    Can you help me, please?
    Cordial greetings.

  • Refer to different XML schema

    When I save file as "Word XML document", what kinds of schema does MS word using? Is it possible to use another XML schema? If so, how?
    Plus, is it possible to use VBA inside MS word so that I can create save as "Word XML document" inside the "Save as type option"? 

    ​Hi UW,
    >> When I save file as "Word XML document", what kinds of schema does MS word using?
    Word uses its own XML schema.
    >> Is it possible to use another XML schema? If so, how?
    Yes, you could use your custom XML schema. The link below shows more details:
    # What You Can Do with Word XML [Word 2003 XML Reference] --  Microsoft Office Word 2003 XML Software Development Kit
    https://msdn.microsoft.com/en-us/library/office/aa223584(v=office.11).aspx
    For how to use another XML schema, you could refer the link below:
    # Create a rich Word document based on your own custom XML (without the need for XSLT)
    http://blogs.msdn.com/b/brian_jones/archive/2006/01/09/customxml1.aspx
    >> is it possible to use VBA inside MS word so that I can create save as "Word XML document" inside the "Save as type option"?
    What do you mean by "create save as "Word XML document" inside the "Save as type option"?"? Do you mean you want to create a new option in the Save as type option? In my option, you could not. The FileFormat in the Document
    was specified by WdSaveFormat Enumeration. You could not modify the WdSaveFormat Enumeration. You could refer the link below:
    # WdSaveFormat Enumeration (Word)
    https://msdn.microsoft.com/en-us/library/office/ff839952.aspx
    In addition, if you have any issue about using another XML schema, I will recommend you post a new thread.
    The reason why I suggested is:
    #1 There would be more community members to discuss the question.
    #2 For people who have the similar question, it would be easier for them to find the answer from a specific thread.
    Best Reards,
    Edwrad
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

Maybe you are looking for

  • ISE 1.2 Sponsor Group - "View/Edit Accounts" Setting not working as expected

    Hi, we need a sponsor account that is not allowed to see the Account List (so the Accounts that were created) on the sponsor UI. The sponsor should be only allowed to create an account, to send his credentials via E-Mail or to print them.. and that's

  • In Bridge CS6 when I view a jpg thumbnail color loss

    In Bridge CS6 when I view jpgs as a thumbnail and also when selected to single viewing, the colors wash out.  They do not in raw or psd versions of the same photo.  They look fine in windows picture viewer and I saved them to my website and they were

  • Blocked upgrading to Adobe Acrobat Pro XI. What do I do?

    I have downloaded Framemaker 12, which Blocked upgrading to Adobe Acrobat Pro XI from ProX. What do I do now? Does Adobe provide technical support for product installs?

  • Installing BI stats Best practices

    Hi Experts, I am installing BI Statistics for our client in SAP BI 7.0. Now, experts who have worked on this must be knowing that there are tons of objects that are activated on the system while installing it. Now to transport this to Quality and pro

  • Bex not to display Headings

    Hi , I dont want to see headings in my Bex mean to say Sold-to-party   Total Orders  Hold   Open Orders 1234               100                 50       50 1235               70                   50       20 1236               50                   30