Creating root element w/reference to XSD file

I'm using JDOM and would like to know how to create the root element so it
looks like this:
<Import xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://www.mydomain.com/XSDfilename.xsd">

I am trying to create a xml file with then serves as an input to a vendor tool
I tried creating the root element with default namespace but the second elemnt is also created with the default namespace. I am using Jdom to create this xml file .
My program output:
<?xml version="1.0" encoding="UTF-8"?>
<PacketGroup xmlns="http://www.abc.com/schemas/idwebarchive/data">
<DefaultPacket xmlns="" logonid="scott" password="humptydumpty">
<IndexLevel level="1" containerDesc="" containerName="Recorder Docs" />
<IndexLevel level="2" containerName="Recorded Year" containerDesc="">
<Keyword name="Recorded Year" value="2005" />
</IndexLevel>
<DocumentLevel documentName="Documents" docDesc="" >
<Keyword name="Document Number" value="2005-034378" />
</DocumentLevel>
</DefaultPacket>
</PacketGroup>
Vendor REquirement:
<?xml version="1.0" encoding="UTF-8"?>
<PacketGroup xmlns="http://www.abc.com/schemas/idwebarchive/data">
<DefaultPacket logonid="scott" password="humptydumpty">
<IndexLevel level="1" containerDesc="" containerName="Recorder Docs" />
<IndexLevel level="2" containerName="Recorded Year" containerDesc="">
<Keyword name="Recorded Year" value="2005" />
</IndexLevel>
<DocumentLevel documentName="Documents" docDesc="" >
<Keyword name="Document Number" value="2005-034378" />
</DocumentLevel>
</DefaultPacket>
</PacketGroup>
How do I go about creating this structure without the default namespace in my subsequent elements.
Any help is appreciated , I am new to this aspect of programming
Thanks
VK

Similar Messages

  • Create Root Element in XML

    Hi Experts,
    I am develpoing a program to generate xml file as output. I am using the method CL_IXML and other interfaces to generate the xml data. Here I need to create a root element. I did search in SDN but I couldnot found anything to generate xml root element.
    My output should be like this:
    <?xml version="1.0" encoding="UTF-8"?>
    <Request Version="11.1" IssuerID="1">
            <CreatePurchaseRequest
                RequestID="123456"
                Commonname="test"
            </CreatePurchaseRequest>
    </Request>
    Can anybody plz suggest how can I generate the root element Request here?
    Regards,
    Ranganadh.

    Thanks Sandra,
    My issue got resolved.
    I just created the root element using the method create_sample_element and set the attributes using set_attributes method.
    Thanks for your help.
    w_ixml = cl_ixml=>create( ).
          w_document = w_ixml->create_document( ).
          w_root = w_ixml->create_document( ).
          IF w_document IS INITIAL.
            RAISE EXCEPTION TYPE cx_cmx_da_exception
              EXPORTING
                textid = cx_cmx_da_exception=>cx_cmx_da_error_internal.
          ENDIF.
          w_encoding = w_ixml->create_encoding(
                                 character_set = 'utf-8'
                                 byte_order    = if_ixml_encoding=>co_none ).
          w_document->set_encoding( w_encoding ).
          w_element_inv1  = w_document->create_simple_element(
                      name = 'OrbiscomRequest'
                      parent = w_document ).
          w_element_inv1->set_attribute( name = 'Version'
                                         namespace = ''
                                         value = '11.1' ).
          w_element_inv1->set_attribute( name = 'IssuerID'
                                         namespace = ''
                                         value = '1' ).

  • JDOM "IllegalStateException: Root element not set" when reading file

    Hello, I am relatively new to XML. I am trying to read an xml document to parse some information out of it. I basically have a large amount of data I want to load into my program. I could program it all in as static arrays, but I thought xml would be easier, and make changes easier.
    I am trying to use JDOM, and have the project set up. My problem is when I read the document, it always gives a root element not set exception. Here is my xml file:
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
        Contents
    </root>Very basic, I'm using this to get things started. Here is my code for reading it:
            SAXBuilder sb = new SAXBuilder();
            Document d = new Document();
            try {
                sb.build(new File("test1.xml"));
            catch (JDOMException jdome) {
                System.err.println(jdome);
            catch (IOException ioe) {
                System.err.println(ioe);
            d.getContent();Whenever I try to do anything with the contents of the Document, like d.getContent(), it always throws a java.lang.IllegalStateException: Root element not set. It reads the file successfully (as far as I can tell), but it's like the xml file is empty. I can't find anything on the web about this problem, and every tutorial says to do exactly what I've done, but never mention any possible problem. It can find the file, and I can write to an xml file as in other tutorials, but reading one in is a problem.
    I chose JDOM because it seemed simplest for just reading in a large amount of data and parsing it out into variables. This is a very simple project, so I don't want to spend a lot of time writing xml parsing code, I'm only using xml because it will probably be easier than hard coding the data. Would a different xml api be easier to use for my purposes?
    Message was edited by:
    hunter9000

    You must always give the browser an either an absolute URL from the top of
              the web server (not the
              web application) or a relative path from the current page.
              Sam
              "Vijay Kumar" <[email protected]> wrote in message
              news:[email protected]..
              > Hi
              >
              > I get the 'getResource is called when document root is not set.' error
              > when I access any files in the webapp with their absolute path.
              >
              > Environment: WIN/NT SP3, WL5.1 SP5 as the webserver and app server.
              >
              > My webapp located in d:\temp is deployed as foo
              > weblogic.httpd.webApp.foo=d:/temp
              >
              > For example:
              > I can access a file in d:\temp\secured\home.html using
              > test
              >
              > However if with in an html I try to access the file using the abs path
              > from doc root
              > test I get an error
              >
              > and I guess the default servlet looks for the servlet-context named
              > 'secured'
              >
              > Can someone tell me if I can set the documentRoot in the web.xml or
              > weblogic.xml
              > file OR if there is any other way to access to the file using the abs path
              > of /secured/test/test.html
              >
              >
              > Thanks in advance
              >
              > Vijay
              >
              >
              >
              >
              

  • How to create java classes when multiple xsd files with same root element

    Hi,
    I got below error
    12/08/09 16:26:38 BST: [ERROR] Error while parsing schema(s).Location []. 'resultClass' is already defined
    12/08/09 16:26:38 BST: [ERROR] Error while parsing schema(s).Location []. (related to above error) the first definition appears here
    12/08/09 16:26:38 BST: Build errors for viafrance; org.apache.maven.lifecycle.LifecycleExecutionException: Internal error in the plugin manager executing goal 'org.jvnet.jaxb2.maven2:maven-jaxb2-plugin:0.7.1:generate': Mojo execution failed.
    I tried genarate java classes from multiple xsd files, but getting above error, here in .xsd file i have the <xe: element="resultClass"> in all .xsd files.
    So I removed all .xsd files accept one, now genarated java classes correctly. but i want to genarte the java classes with diffrent names with out changing .xsd
    Can you please tell me any one how to resolve this one......
    regards
    prasad.nadendla

    Gregory:
    If you want to upload several Java classes in one script the solution is .sql file, for example:
    set define ?
    create or replace and compile java source named "my.Sleep" as
    package my;
    import java.lang.Thread;
    public class Sleep {
    public static void main(String []args) throws java.lang.InterruptedException {
    if (args != null && args.length>0) {
    int s = Integer.parseInt(args[0]);
    Thread.sleep(s*1000);
    } else
    Thread.sleep(1000);
    create or replace and compile java source named "my.App" as
    package my;
    public class App {
    public static void main(String []args) throws java.lang.InterruptedException {
    System.out.println(args[0]);
    exit
    Then the .sql file can be parsed using the SQLPlus, JDeveloper or SQLDeveloper tools.
    HTH, Marcelo.

  • WSDL incorrect - in XSD elements always must be the root element?

    Hi!
    First of all, sorry about my english, but I'm not accustomed to write in this language ;-)
    We're trying to publish a Webservice with JAXWS and with a classes generated via JAXB parsing a group of XSD files, always in a maven project with java 5.
    More explained the steps we are trying to follow:
    1) parse the XSD files with JAXB and generate a JAR file to be included like a dependency in the webapp
    2) use the classes packaged in the JAR in other maven project and define and deploy a webapp with the webservice using JAXWS defining a SEI that uses and returns a Type included in the JAR generated in the previous step. Here it is the interface that implements the SEI:
    @WebMethod
         public TESTELEMENT test(
                   @WebParam(name = "test")
                   TESTELEMENT element);The problem seems to be that if the elements in the original XSD files aren't root elements the WSDL generated is incorrect.
    Here there are the XSD files we are using and the WSDL error result (XMLSpy dixit, "ns1:Example" must refer to an existing element).
    Anyone knows what happens?
    Thank you in advance and sorry about this large message!
    +--- start of TEST.XSD --+
    <?xml version="1.0" encoding="utf-8"?>
    <xs:schema xmlns="http://example.work/test" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://example.work/test" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:include schemaLocation="TEST_TYPE.xsd"/>
    <!--
    if we define the Example Element like this, everything works ok! why? because Example is defined global?
    <xs:element name="Example" type="ExampleType"/>
    -->
    <xs:element name="TEST_ELEMENT">
    <xs:annotation>
    <xs:documentation>Blablabla</xs:documentation>
    </xs:annotation>
    <xs:complexType>
    <xs:sequence minOccurs="0" maxOccurs="unbounded">
    <xs:element name="Example" type="TestType"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:schema>+-- end --+
    +--- start of TEST_TYPE.xsd --+
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns="http://example.work/test" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://example.work/test" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:complexType name="TestType">
    <xs:annotation>
    <xs:documentation>Example type</xs:documentation>
    </xs:annotation>
    <xs:sequence>
    <xs:element name="Element_A" type="xs:string"/>
    <xs:element name="Elment_B" type="xs:boolean"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>+-- end --+
    +-- start WSDL error --+
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions name="TestBO" targetNamespace="http://our.package.test/" xmlns:ns1="http://our.package.test/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <wsdl:types>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://example.work/test" xmlns:tns="http://example.work/test" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="TEST_ELEMENT">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" minOccurs="0" name="Example" type="tns:TestType"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    <xs:complexType name="TestType">
    <xs:sequence>
    <xs:element name="Element_A" type="xs:string"/>
    <xs:element name="Elment_B" type="xs:boolean"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    <xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://our.package.test" xmlns:ns1="http://example.work/test" xmlns:tns="http://our.package.test" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://example.work/test"/>
    <xs:element name="test" type="tns:test"/>
    <xs:element name="testResponse" type="tns:testResponse"/>
    <xs:complexType name="test">
    <xs:sequence>
    <xs:element minOccurs="0" name="test">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" minOccurs="0" ref="ns1:Example"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="testResponse">
    <xs:sequence>
    <xs:element minOccurs="0" name="return">
    <xs:complexType>
    <xs:sequence>
    <xs:element maxOccurs="unbounded" minOccurs="0" ref="ns1:Example"/> *<!-- here is the error - XMLSpy dixit that ns1:Example must refer to an existing element -->*
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    </wsdl:types>
    <wsdl:message name="test">
    <wsdl:part element="ns1:test" name="parameters">
    </wsdl:part>
    </wsdl:message>
    <wsdl:message name="testResponse">
    <wsdl:part element="ns1:testResponse" name="parameters">
    </wsdl:part>
    </wsdl:message>
    <wsdl:portType name="TestBO">
    <wsdl:operation name="test">
    <wsdl:input message="ns1:test" name="test">
    </wsdl:input>
    <wsdl:output message="ns1:testResponse" name="testResponse">
    </wsdl:output>
    </wsdl:operation>
    </wsdl:portType>
    </wsdl:definitions>+-- end --+                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Hi again.
    About my last post, say that the WSDL generated, in fact, was generated with CXF, sorry.
    Using JAXWS (wsgen to be more explicit) the WSDL results still are not ok, as you can see, the error is in the last ns1:Example reference in ServeiTestBO_schema1.xsd, that XMLSpy says that doesn't exists :-( :
    +--- ServeiTestBOImplService.wsdl [ServeiTestBOImpl - SEI] ---+
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.5-b03-. -->
    <definitions targetNamespace="http://impl.our.package.test/" name="ServeiTestBOImplService" xmlns:tns="http://impl.our.package.test/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/">
      <import namespace="http://our.package.test/" location="ServeiTestBO.wsdl"/>
      <binding name="ServeiTestBOImplPortBinding" type="ns1:ServeiTestBO" xmlns:ns1="http://our.package.test/">
        <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
        <operation name="test">
          <soap:operation soapAction=""/>
          <input>
            <soap:body use="literal"/>
          </input>
          <output>
            <soap:body use="literal"/>
          </output>
        </operation>
      </binding>
      <service name="ServeiTestBOImplService">
        <port name="ServeiTestBOImplPort" binding="tns:ServeiTestBOImplPortBinding">
          <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
        </port>
      </service>
    </definitions>+--- ServeiTestBO.wsdl [SEI interface] ---+
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <!-- Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.5-b03-. -->
    <definitions targetNamespace="http://our.package.test/" xmlns:tns="http://our.package.test/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/">
      <types>
        <xsd:schema>
          <xsd:import namespace="http://our.package.test/" schemaLocation="ServeiTestBO_schema1.xsd"/>
        </xsd:schema>
        <xsd:schema>
          <xsd:import namespace="http://example.work/test" schemaLocation="ServeiTestBO_schema2.xsd"/>
        </xsd:schema>
      </types>
      <message name="test">
        <part name="parameters" element="tns:test"/>
      </message>
      <message name="testResponse">
        <part name="parameters" element="tns:testResponse"/>
      </message>
      <portType name="ServeiTestBO">
        <operation name="test">
          <input message="tns:test"/>
          <output message="tns:testResponse"/>
        </operation>
      </portType>
    </definitions>+--- ServeiTestBO_schema1.xsd *[with error in the last "ns1:Example"]* ---+
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <xs:schema version="1.0" targetNamespace="http://our.package.test/" xmlns:tns="http://our.package.test/" xmlns:ns1="http://example.work/test" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:import namespace="http://example.work/test" schemaLocation="ServeiTestBO_schema2.xsd"/>
      <xs:element name="test" type="tns:test"/>
      <xs:element name="testResponse" type="tns:testResponse"/>
      <xs:complexType name="test">
        <xs:sequence>
          <xs:element name="test" minOccurs="0">
            <xs:complexType>
              <xs:sequence>
                <xs:element ref="ns1:Example" minOccurs="0" maxOccurs="unbounded"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:complexType>
      <xs:complexType name="testResponse">
        <xs:sequence>
          <xs:element name="return" minOccurs="0">
            <xs:complexType>
              <xs:sequence>
                <xs:element ref="ns1:Example" minOccurs="0" maxOccurs="unbounded"/>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:complexType>
    </xs:schema>
    --- ServeiTestBO_schema2.xsd  ---
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <xs:schema elementFormDefault="qualified" version="1.0" targetNamespace="http://example.work/test" xmlns:tns="http://example.work/test" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <xs:element name="TEST_ELEMENT">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Example" type="tns:TestType" minOccurs="0" maxOccurs="unbounded"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:complexType name="TestType">
        <xs:sequence>
          <xs:element name="Element_A" type="xs:string"/>
          <xs:element name="Elment_B" type="xs:boolean"/>
          <xs:element name="Sex" type="tns:SexType"/>
        </xs:sequence>
      </xs:complexType>
      <xs:simpleType name="SexType">
        <xs:restriction base="xs:string">
          <xs:enumeration value="M"/>
          <xs:enumeration value="W"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:schema>Thanks in advance again.

  • Creating a table structure using xsd file or excel?

    Hi,
    How to create a table structure of the xsd file or excel file generated from access 2000?
    Do you have any ideas or do you know any useful tools for this?

    Yes. This possible with ADF Faces RC, which provides an af:tree component. Have a look at the Fusion Order Demo, which uses the tree to implement a similar usecase to the one you describe.
    http://www.oracle.com/technology/products/jdev/samples/fod/index.html
    Regards,
    RiC

  • Best practice for how to access a set of wsdl and xsd files

    I've recently beeing poking around with the Oracle ESB, which requires a bunch of wsdl and xsd files from HOME/bpel/system/xmllib. What is the best practice for including these files in a BPEL project? It seems like a bad idea to copy all these files into every project that uses the ESB, especially if there are quite a few consumers of the bus. Is there a way I can reference this directory from the project so that the files can just stay in a common place for all the projects that use them?
    Bret

    Hi,
    I created a project (JDeveloper) with local xsd-files and tried to delete and recreate them in the structure pane with references to a version on the application server. After reopening the project I deployed it successfully to the bpel server. The process is working fine, but in the structure pane there is no information about any of the xsds anymore and the payload in the variables there is an exception (problem building schema).
    How does bpel know where to look for the xsd-files and how does the mapping still work?
    This cannot be the way to do it correctly. Do I have a chance to rework an existing project or do I have to rebuild it from scratch in order to have all the references right?
    Thanks for any clue.
    Bette

  • Exception:"Decrease the number of char between the beginning of the document and its root element"

    I'm now using a javabean in my jsp page to parse xml;when my xml file's size is
    about 10k,it just work fine;when my xml file's size became 50k,it throws the followng
    Exception:
    Failed to open xml document,Failed to retrieve Public id or system id from the
    document. Decrease the number of char between the beginning of the document and
    its root element. But when I run this javabean in JBuild ,it works fine no matter
    how big the xml file becomes;
    Why? the error message is in the attachment.

    The prologue must be included at the top of the document, followed by the root
              element.
              joden2000 wrote:
              > what does this exception mean:decrease the number of char between the beginning
              > of the document and its root element? When my xml file is about 10k,it works
              > just fine,when it becomes 50k ,the exception show.How can I deal with this?
              

  • Get errors of a xml validation from xsd file

    hi everyone,
    i created a xml validation from a XSD file as follow:
    public String validate(String xml) {
            String saida = "";
            InputStream xsd = XmlValidator.class.getResourceAsStream("shiporder.xsd");       
            try {
                DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
                docBuilderFactory.setNamespaceAware(true);
                DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
                ByteArrayInputStream is = new ByteArrayInputStream(xml.getBytes());
                Document doc = docBuilder.parse(is);
                SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
                Source schemaFile = new StreamSource(xsd);
                Schema newSchema = (Schema) factory.newSchema(schemaFile);
                Validator validator = newSchema.newValidator();
                validator.validate(new DOMSource(doc));           
                saida = "SUCESSO";
            } catch (DOMException ex) {           
                ex.printStackTrace();
                saida =  "DOM";
            } catch (SAXException ex) {           
                saida = ex.getMessage();
            } catch (IOException ex) {           
                ex.printStackTrace();
                saida =  "IO";
            } catch (ParserConfigurationException ex) {           
                ex.printStackTrace();
                saida = "PARSER_CONFIGURATION";
            return saida;
        }this code works perfectly, but i must change one thing.
    When is found a error on a xml structure, one exception is threw, and then the method is finalized. However i need to show up all errors on one shot.
    Because right now when i run and it find a error, the method throw an exception an stop, so i have to adjust, then execute again and adjust another repeatedly until everything is right, so i have to change that.
    Anyone could help me?
    thanks in advance

    That's the rule for XML validation. As soon as the parser finds an error, it must report it and stop.
    If you are having a lot of trouble creating an XML document which conforms to a schema, perhaps you should invest in one of those XML editors which supports validation as you enter the document.

  • XSD file Created in PI 7.0 is not working in MDM

    Hi Experts,
    Need your help on the below scenario:
    I have created the data types in in PI 7.0 and exported XSD file but, while connecting to syndicator (by using XML Schema file option)  system  is giving root element is missg error message. But, if i create the XSD file By using 3rd party XSD tools that XSD file working fine..
    Can any one let me know the reason why the XSD file created by PI System is giving the Problem ?
    Thanks in Advance
    Mahesh

    Hi Mahesh,
    usually XSDs from PI do not contain the <xsd:element>Name your Root Element</xsd:element> definition that is required for MDM Syndicator. If you compare the files as suggested, you'll notice something like that in the XSD of the third party tool. Still you could add this definition manually to the XSD from PI. Then the XSD will work, too.
    Best regards
    Michael

  • PI 7.1: Importing a wsdl file with references to other xsd files

    Hi Experts,
    I am trying to import a wsdl file that has got references to other xsd files. When i do this with SOAP UI, i can get the full message structure for the other xsd files. But when i try to import the same wsdl in the ESR, i only get to the messages and not the referenced xsd.
    Any ideas!
    Thank you in Advance,
    Danny

    Hi,
    First convert your main WSDL in to XSD,use Stylus or any XML editors to convert the same,thecn check the genarated XSD refering sun XSD tsrutures.then zip the all xsd in to one File and import in PI,then select you main xsd in the folder,and select root element.
    Normally withour converting in to XSD only if you group al import it in to PI,it wil work.
    or
    if you have some good knowledge about XSD then convert WSDL in to XSD and remove referece tags and include XSD content of sub xsds in to main XSD,and validate that one,and imnprt one XSD.
    Regards,
    Raj

  • How to create JSF application from xsd files?

    Hi,
    We have many xsd files describing xml's which we are supposed to send to web services. Application which we are creating should allow user to fill xml documents with data and then we should send those xml files to some web service. We want to automatize as much as possible the process of application creation to avoid possible errors and to minimize our efforts (there are plenty of quite complex xsd files).
    Our first approach was: we used Oracle JSXB to generate java classes basing on xsd files (using JDeveloper 10.1.3.2.0.4066). Then we tried to generate DataControls, but this action fails with following error:
    Window title: Error in init bean
    Message: Could not complete initbean because it would result in an invalid document
    Details: oracle.bali.xml.model.XmlInvalidOnCommitException: SEVERE: Wartość atrybutu Name nie jest typu ID (Value of Name attribute is not of ID type)
    Wartość musi być następującego typu: (Value must be of following type)
    Nazwa typu: ID (Type name)
    Typ pierwotny: string (Primitive type)
    Z następującymi więzami: (With following constraints)
    zgodne z wzorcem: [\i-[:]][\c-[:]]* (Compliant with template)
    [ node = Name ]
    <JavaBean version="10.1.3.40.66" id="XSLStylesheet" BeanClass="oracle.xml.xslt.XSLStylesheet" Package="oracle.xml.xslt" isJavaBased="true">
    <Attribute Name="classMethodParams" IsUpdateable="0" Type="java.util.Hashtable" />
    We tried Sun implementation fo JAXB - it generated different java classes (with annotation mechanism). Creation of DataControls using those classes was successful. Then we created simple JSF page and tried to put those DataControls on it in order to let the user fill it with data. The thing is that those controls are read only as there is no row created in those DC. We can't create any row in those DC as there are only 'commit' and 'rollback' operations. When we try to call 'CreateInsert' operation on child elements of those DC we get error in JDeveloper log window:
    2007-05-29 10:08:46 oracle.adf.controller.faces.lifecycle.FacesPageLifecycle addMessage
    WARNING: JBO-29000: DataControl:createRowData
    2007-05-29 10:08:46 oracle.adf.controller.faces.lifecycle.FacesPageLifecycle addMessage
    WARNING: DataControl:createRowData
    new row is not created and controls are still read-only.
    The question is:
    1. is there another, more efficient way to create JSF application from xsd files?
    2. if this is the best way to do it, what do we do wrong?
    Leszek

    To anyone who might find it useful: our solution to mentioned problem.
    Few tips how to solve described problem:
    1. Do not use JAXB (we checked Oracle and Sun)
    2. Use castor http://www.castor.org/
    a) for each xsd generate java files in separated package
    b) use java 1.5 to let castor generate lists
    c) use mapping of xml namespaces to java packages to have only 1 implementation of each xsd
    3. Create facades - java files for you root-level java objects
    4. Right click those facades and choose 'Create DataControl' in jdev
    5. Now you may drag and drop you DataControls and use them in your JSF (or UIX) application
    I hope it will help someone :)
    Leszek

  • XSD from PI in Syndicator - no root element selectable

    Hello
    I have created a message type in PI and exported the XSD. However when I want to use that XSD in the syndicator no root element is available. Why is that?
    I have searched the forums and found that MDM won't show a root element if the XSD is not sane. What part of the XSD is not sane? I have validated it in Liquid XML and it works in the import manager.
    Has anyone had the same problem?
    BR
    /Alexander

    Hi,
    I also faced same problem. We removed namespace from XSD manually. When u create file from PI it contains namespace.
    It worked then !!!!
    if still not solved tell me in detail i will give eg ..
    Regards
    Himanshu
    reward if helpful

  • How to create an XSD file from xml

    Hi,
    Is there any way to generated an XSD file from an already existing XML file.
    Does Jdeveloper 10g , has any feature to create the xsd file automatically?
    Please advice
    Regards

    Here are the steps I took to create an XSLT transformation in XI 3.0:
    1. I created my source and target XSDs using XMLSpy.
    2. I created the XSLT mapping from source to target in XMLSpy (referencing the souce XSD schema).
    3. I created another XSLT mapping to format the target into Excel XML.
    4. Import the source and target XSDs in the IR's External Definitions
    5. Zip each XSLT mapping (.xls) and import it into the IR's Imported Archives
    6. Reference the XSL mappings in the Interface Mapping

  • Multiple Root elements in the XSD Schema

    Hi Dear MDM gurus,
    I have manually created an XSD Schema and I can import it in the Syndicator without any problem.
    I have 3 different Root elements in the schema that I want to use and map to the corresponding table of this type.
    In my Syndicator screen in the Rood dropdown box I can see all three of the Root elements that I have in the schema.
    If I select the first Root element - everything goes fine and I can do my mapping, save the map, etc.
    The problem is that if I select the second or third root element to do the mapping for them, the syndicator does not show the structure in the Item Mapping after that.
    I tried moving the Second root element of the schema and make it first and it works with it, but then the other two are not appearing and I have the same issue.
    Does MDM support only one Root element in the Schema? If that's the case, why does it show all three of them in the dropdown?
    Here is an example:
    1. If I have them in this order in my XSD
              <xs:element name="ManufacturerGroupNumber" type="ManufacturerGroupNumbers"/>
              <xs:element name="SupplierGroupNumber" type="SupplierGroupNumbers"/>
              <xs:element name="SupplierLocationNumber" type="Suppliers"/>
    I can only see the structure when I select the "ManufacturerGroupNumber".
    2. If I have them in the Schema in this order
              <xs:element name="SupplierLocationNumber" type="Suppliers"/>
              <xs:element name="SupplierGroupNumber" type="SupplierGroupNumbers"/>
              <xs:element name="ManufacturerGroupNumber" type="ManufacturerGroupNumbers"/>
    I can only see the structure when I select the first one again "SupplierLocationNumber" and I can only do the mapping for it.
    Any help would be appreciated.
    Thanks in advance,
    Boris

    Hello Satish,
    Thank you for your quick response.
    I read some of the architectural approaches and XML specifications and depending on your design, you may have only one Root element or in rare cases Several Root elements. In my case, I was advised by our PI experts to use Multiple Root elements and this gives me the following:
    Advantages:
    u2022 The reusability of the schema definition is available for all types and all elements defined in the global namespace.
    Disadvantages:
    u2022 Since there are many global elements, there are many valid XML documents.
    I initially had the schema as you suggested, but they didn't like it in PI and advised me to change it with having multiple roots.
    What I'm trying to figure out is if there is a bug in MDM that does not allow to use the rest of the root elements, so I can open an OSS message.
    Thanks,
    Boris

Maybe you are looking for