XML Schema Syntax highlighting - quicker way than this?

I have implemented a syntax highlighter for my XML Schema Editor, however it runs quite slowly. Is there a faster way than the method used below:
          while(line.length() > len)
               if(line.charAt(len) == '<' )
                    append(Color.black, line.charAt(len));
                    len++;
                    if( line.charAt(len) == '/')
                         append(Color.black, line.charAt(len));
                         len++;
                    else if( line.charAt(len) == '!' && line.charAt(len+1) == '-' && line.charAt(len+2) =='-')
                         append(Color.black, line.charAt(len));
                         len++;
                         append(Color.black, line.charAt(len));
                         len++;
                         append(Color.black, line.charAt(len));
                         len++;
                         while(line.charAt(len)!='-')
                              append(CommentColour, line.charAt(len));
                              len++;
                         if(line.charAt(len) == '-' && line.charAt(len+1) == '-')
                              append(Color.black, line.charAt(len));
                              len++;
                              append(Color.black, line.charAt(len));
                              len++;
                    while(line.charAt(len) != '>')
                         if(line.charAt(len) == '"' || line.charAt(len) == '\'')
                              append(AttributeColour, line.charAt(len));
                              len++;
                              while(line.charAt(len) != '"' && line.charAt(len) != '\'')
                                   append(AttributeColour, line.charAt(len));
                                   len++;
                              append(AttributeColour, line.charAt(len));
                              len++;
                         if(line.charAt(len) == '/')
                              append(Color.black, line.charAt(len));
                              len++;
                         else if(line.charAt(len) == '<')
                              append(Color.black, line.charAt(len));
                              len++;
                                        if( line.charAt(len) == '!' && line.charAt(len+1) == '-' && line.charAt(len+2) =='-')
                                             append(Color.black, line.charAt(len));
                                             len++;
                                             append(Color.black, line.charAt(len));
                                             len++;
                                             append(Color.black, line.charAt(len));
                                             len++;
                                             while(line.charAt(len)!='-')
                                                  append(CommentColour, line.charAt(len));
                                                  len++;
                                             if(line.charAt(len) == '-' && line.charAt(len+1) == '-')
                                                  append(Color.black, line.charAt(len));
                                                  len++;
                                                  append(Color.black, line.charAt(len));
                                                  len++;
                         else if(line.charAt(len) == '>')
                              append(Color.black, line.charAt(len));
                              len++;
                              while(line.charAt(len)!='<')
                                   append(ElementDetailsColour, line.charAt(len));
                                   len++;
                         else
                              append(ElementNameColour, line.charAt(len));
                              len++;
                    if(line.charAt(len) == '>')
                         append(Color.black, line.charAt(len));
                         len++;
               else
                    append(ElementDetailsColour, line.charAt(len));
                    len++;
          append(Color.black, "\n");
}line = The string of XML Schema data
len = the character position within the string.
Currently it looks at each character and sees if it is one of the defining characters eg '<' and then colours the following text the chosen colour, until it reaches another defining chracter eg '>'
Is there a faster way? Could I use hashmaps somehow?
Thanks
Alex

1. You may use somewhat cumbersome syntax like:
choice
A
B
all
A
B
/all
/choice
to implement inclusive or.
2. They (W3 Schema WG) were talking about
this but decided not to allow it (at least for now). A workaround you may use:
all
group ref = group1
group ref = group2
/all
group name=group1
elem ... maxOccurs = 10
/group
Something like that.
null

Similar Messages

  • Creating a time channel in the data portal and filling it with data - Is there a more efficient way than this?

    I currently have a requirement to create a time channel in the data portal and subsequently fill it with data. I've shown below how I am currently doing it:
    Time_Ch = ChnAlloc("Time channel", 271214           , 1      ,           , "Time"         ,1                  ,1)              'Allocate time channel
    For intLoop = 1 to 271214
      ChD(intLoop,Time_Ch(0)) = CurrDateTimeReal          'Create time value
    Next
    I understand that the function to create and allocate memory for the time channel is extremely quick. However the time to store data in the channel afterwards is going to be highly dependent on the length I have assigned to the Time_Ch. In my application the length of Time_Ch is variable but could easily be in the order of 271214 or higher. Under such circumstances the time taken to fill Time_Ch is quite considerable. I am wondering whether this is the most appropriate way of doing things or whether there is a more efficient way of creating a time channel and filling it.
    Thanks very much for any help.
    Regards
    Matthew

    Hi Matthew,
    You are correct that there is a more efficient way to do this.  I'm a little confused about your "CurrDateTimeReal" assignment-- is this a constant?  Most people want a Time channel that counts up linearly in seconds or fractions of a second over the duration of the measurement.  But that looks like you would assign the same time value to all the rows of the new Time channel.
    If you want to create a "normal" Time channel that increases at a constant rate, you can use the ChnGenTime() function:
    ReturnValue = ChnGenTime(TimeChannel, GenTimeUnit, GenTimeXBeg, GenTimeXEnd, GenTimeStep, GenTimeMode, GenTimeNo)
    If you really do want a Time channel filled with all the same values, you can use the ChnLinGen() function and simply set the GenXBegin and GenXEnd parameters to be the same value:
    ReturnValue = ChnLinGen(TimeChannel, GenXBegin, GenXEnd, XNo, [GenXUnitPreset])
     In both cases you can use the Time channel you've already created (which as you say executes quickly) and point the output of these functions to that Time channel by using the Group/Channel syntax of the Time channel you created for the first TimeChannel parameter in either of the above functions.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Enable syntax highlighting with configuration file in emacs

    When editing configuration files such as .procmailrc, .fetchmailrc, Emacs won't automatically highlight syntax for me.
    I can enable syntax highlighting in Vim by appending "syntax on"  to the .vimrc.
    I tried adding "global-font-lock-mode t" in the .emacs file, but it didn't solve my problem.
    What is the solution?

    igndenok wrote:
    Some of my config file have this (using conf-unix-mode)
    # this is .somerc
    # -*- conf-unix -*-
    Or using this in your .emacs
    (add-to-list 'auto-mode-alist '("\\.*rc$" . conf-unix-mode))
    I followed your advice, and it does have some syntax highlighting, but less than Vim does.
    For example, Vim will highlight all the names of colors in the .muttrc file, but Emacs doesn't.
    I guess Emacs is not as strong as Vim when it comes to editing configuration files.
    Last edited by yu3k (2011-09-14 10:06:47)

  • Urgent: Help required for fetching CHILDNODE from an XML schema.

    Hi All,
    Good Morning to all, i have problem in extracting the child node name. I have created a xml schema say "emrxmlsample3.xsd" based on this schema i have created a xmltype table and inserted a value to the table. I have a problem in fetching the "CHILDNODE" name. Kindly help me in solving this problem. Here by i am posting all the workings i have done...
    I am using the following client:
    SQL*Plus: Release 10.2.0.1.0 - Production on Mon Jan 31 11:44:59 2011
    Copyright (c) 1982, 2005, Oracle. All rights reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining options
    ////////////////////////////////// XML Schema ///////////////////////
    begin
    dbms_xmlschema.registerSchema(
    'http://www.oradev.com/emrxmlsample3.xsd',
    '<schema xmlns="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.oradev.com/emrxmlsample3.xsd"
    xmlns:samp="http://www.oradev.com/emrxmlsample3.xsd"
    version="1.0">
         <element name="HISTORY">
              <complexType>
                   <sequence>
                        <element name="HPI">
                             <complexType>
                                  <sequence>
                                       <element name = "PAIN">
                                            <complexType>
                                                 <sequence>
                                                      <element name = "SET">
                                                           <complexType>
                                                                <sequence>
                                                                     <element name = "LOCATION">
                                                                          <complexType>
                                                                               <sequence>
                                                                                    <element name = "HEAD" type = "string"/>
                                                                                    <element name = "NECK" type = "string"/>
                                                                                    <element name = "BACK" type = "string"/>                                                       
                                                                                    <element name = "CHEST" type = "string"/>                                                       
                                                                                    <element name = "ABDOMEN" type = "string"/>     
                                                                                    <element name = "JOINTS" type = "string"/>     
                                                                                    <element name = "OTHERS" type = "string"/>
                                                                               </sequence>
                                                                          </complexType>
                                                                     </element>
                                                                     <element name = "SEVERITY">
                                                                          <complexType>
                                                                               <sequence>
                                                                                    <element name = "MILD" type = "string"/>
                                                                                    <element name = "MODERATE" type = "string"/>
                                                                                    <element name = "SEVERE" type = "string"/>                                                       
                                                                                    <element name = "VERYSEVERE" type = "string"/>                                                       
                                                                               </sequence>
                                                                          </complexType>
                                                                     </element>     
                                                                     <element name = "CHARACTER">
                                                                          <complexType>
                                                                               <sequence>
                                                                                    <element name = "DIFFUSE" type = "string"/>
                                                                                    <element name = "PRICKING" type = "string"/>
                                                                                    <element name = "CUTTING" type = "string"/>                                                       
                                                                                    <element name = "PIERCING" type = "string"/>                                                       
                                                                               </sequence>
                                                                          </complexType>
                                                                     </element>                                                                      
                                                                </sequence>
                                                           </complexType>      
                                                      </element>
                                                 </sequence>     
                                            </complexType>
                                       </element>
                                  </sequence>
                             </complexType>
                        </element>
                   </sequence>
              </complexType>
         </element>
         </schema>',
    TRUE, TRUE, FALSE, FALSE);
    end;
    ////////////////////////// Table which has multiple Column //////////////////////////
    CREATE TABLE chipsemr3 (
    id number, CHIPSEMR XmlType)
    XMLTYPE CHIPSEMR STORE AS OBJECT RELATIONAL
    XMLSCHEMA "http://www.oradev.com/emrxmlsample3.xsd"
    ELEMENT "HISTORY";
    ///////////////////////////////// Insert Query in chipsxmltable //////////////////////////
    INSERT INTO chipsemr3 VALUES(1,
    xmltype.createxml('<?xml version="1.0"?>
    <samp:HISTORY xmlns:samp="http://www.oradev.com/emrxmlsample3.xsd" >
              <HPI>
                   <PAIN>
                        <SET>
                             <LOCATION>
                                  <HEAD> YES </HEAD>
                                  <NECK> NO </NECK>
                                  <BACK> N </BACK>
                                  <CHEST> N </CHEST>
                                  <ABDOMEN> N </ABDOMEN>
                                  <JOINTS> N </JOINTS>
                                  <OTHERS> N </OTHERS>
                             </LOCATION>
                             <SEVERITY>
                                  <MILD> N </MILD>
                                  <MODERATE> N </MODERATE>
                                  <SEVERE> N </SEVERE>
                                  <VERYSEVERE> N </VERYSEVERE>
                             </SEVERITY>
                             <CHARACTER>
                                  <DIFFUSE> N </DIFFUSE>
                                  <PRICKING> N </PRICKING>
                                  <CUTTING> N </CUTTING>
                                  <PIERCING> N </PIERCING>
                             </CHARACTER>
                        </SET>
                   </PAIN>
              </HPI>
    </samp:HISTORY>'));
    To show the Root Node Name:
    1. Query
    select x.CHIPSEMR.getrootelement() CHIPSNODES from chipsemr3 x, table(xmlsequence(x.CHIPSEMR.extract('//node()'))) x
    Apologies if the description is not clear. Kindly let me know if further details are needed. Many thanks for your help.
    Very best regards,
    Godwin Jebakumar C.V.

    Hi,
    I'm not sure what you want actually.
    You can get all elements names with :
    SELECT value(x).getRootElement() chipsnodes
    FROM chipsemr3 t,
         TABLE(
           XMLSequence(
             Extract(t.chipsemr, '//*')
         ) x
    ;or, starting with 10.2 :
    SELECT x.*
    FROM chipsemr3 t,
         XMLTable(
          'for $i in //* return local-name($i)'
          passing t.chipsemr
          columns chipsnode varchar2(30) path '.'
         ) x
    ;

  • How can i change a xmltype column's xml schema?

    i create a table that have a xmltype column.this column is schema-based.
    my problem is ,
    now i want to this column's schema will be redefined to a global schema?
    [b]how can i change the column's schema which already have a schema?

    When a schema is registered a lot of additonal annotations are added to the XML schema by the schema registration process - Look at the version of the XML schema under /sys/schemas/... in the XML DB repository. This information is unqiue to that version of the XML schema and is used internally to manage instance level metadata.
    When instance documents are stored in the DB a set of metadata is generated for each document so that we can make sure that we can maintain DOM Fidelity. This metadata is tied directly to the XML schema the document is associated and is only valid in the context of that XML Schema.
    So when the schema is registered locally and instances are stored the generated metadata is only valid in the context of the local schema. If the same schema is now registered globally new values will be generated for the annotations applied to the global version of the XML schema. Consequently the metadata associated with a document belonging to the local version of the XML schema has no meaning when viewed in the context of the global version of the XML schema.
    The net effect of this is that you will need to copy the data in order to get documents where the metadata for each document is based on the global version of the XML SChema.

  • Unable to create xml from xml schema

    JDeveloper 10.1.3 EA1
    I am unable to create a new xml file from an xml schema when the starting root element is a complex type (but it works with a simple type). It does not matter if the xml schema is registered within JDeveloper.
    Is this a bug or intended behaviour?
    Error message:
    ''XML Document from XML Schema creation could not be competed succesfully. Make sure the source schema is valid and that you have write permissions to the output directory."
    NB The xml schema is valid and I have write permissions on the specified directory.

    When I do not register this (or other) schema with JDeveloper, I can create an xml document from xml schema. However, when I register this schema and then try to generate an xml document (either from the registered xsd either from a filesystem xsd) with person as starting node it fails with the mentioned error. However, when I use city as starting node it is generated successfully.
    <?xml version="1.0" encoding="windows-1252" ?>
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns="http://www.amis.nl/demo/hrm"
    targetNamespace="http://www.amis.nl/demo/hrm"
    elementFormDefault="qualified">
    <xsd:element name="person">
    <xsd:annotation>
    <xsd:documentation>
    A sample complex element
    </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
    <xsd:sequence>
    <xsd:element name="name" type="xsd:string"/>
    <xsd:element name="length" type="xsd:int"/>
    <xsd:element name="weight" type="xsd:int" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    <xsd:element name="city" type="xsd:string">
    <xsd:annotation>
    <xsd:documentation>
    A sample simple element.
    </xsd:documentation>
    </xsd:annotation>
    </xsd:element>
    </xsd:schema>

  • OLEDB Dataconnection and XML Schema

    Hi,
    I create a form with fields binding with a OLEDB dataconnection.
    It's work, I can request my database and store my data.
    I want to be able to can access these field in a process (with workbench ES).
    If I bind fields with a xml schema I can access to them and manipulate them but I can't bind them with a OLEDB dataconnection and a xml schema.
    How can I do this ?
    Thank you and I hope you could understand me :D

    Yes, I have a DB but I am already working with the XML file. The Data Connection that I am using has this config:<br /><br />XML Schema<br />Schema file: contents.xsd<br />Options: <contents>, no checkboxes activated<br /><br />My solution is supposed to run online in a LAMP env, when the user clicks a Print Button, I run a script to generate the XML from the DB, and then I open a new page with the PDF form that I've built in LC Designer (8.0) with the generated data. I don't need data navigation, it's a summary report that will be printed.<br /><br />So, while developing, I've saved a populated XML locally and keep trying to open the PDF file with the data without success. Same if I save the 3 files (xsd, xml and pdf form) in the server and try to open the PDF through browser. But, as I said before, when previewing it in LC, I see the form exactly as I want.<br />I did what you mentioned (import data in Adobe Reader), and it worked partially, since the repeating row just showed one record.<br /><br />As I can see, I need some kind of script in the PDF form that, when it's loaded, the data (XML file) is imported. By now, I am trying to do it locally and think this should work. Then, for the online solution, I thought that I would need something running on the server, and based on what you said, I will need LC Forms, is that correct?<br /><br />Hope things are clearer now. Answering to your question, my form is binded globally. The repeating row is connected (Default Binding) to > $record.content[*] < and each field in the row connected to an item from the XSD definition. No Import/Export Bindings in use.<br /><br />Thanks for the help so far! :)

  • Data Insertion, XML Schema Specifying Element minOccurs="1

    An XML schema having an element with attribute minOccurs="1" has been successfully registered. A table was created based on that schema. Inserting data both with and without that element works successfully. Why is this?

    The only thing right now, I can think of, is that the database doesn't recognize it as being controlled via / depends on a registered XML Schema. See the FAQ on this forum for examples (See here: How does XML DB handle XML Schema Validation ?

  • XML Schema Substitution Group

    Hi,
    Can anybody please explain what are ***Substitution Groups*** in XML Schema with a simple example as this concept is little bit fuzzy for me.
    Thanks.

    This concerns with internationalization (i18N):
    http://www.w3schools.com/schema/schema_complex_subst.asp

  • How Does FrameMaker Support XML Schemas?

    Hi All,
    I'm wondering how FM supports XML Schemas. I need to validate the uniqnuess of the value of an element in my XML. Let's say I have an XML like this one:
    <Param>
         <name>Parameter 1 name</name>
         <description>Parameter 1 description</description>
         <code>12345</code>
    </Param>
    <Param>
         <name>Parameter 2 name</name>
         <description>Parameter 2 description</description>
         <code>6789</code>
    </Param>
    The value of <code> must be unique throughout the XML file. As far as I know, I can add a validation of the uniqnuess of <code> into my XML schema. The question is whether this uniqnuess check will be supported by FM.
    Any advice is appreciated.
    Thank you very much!

    It should (though I have not tested it myself). Framemaker 11 uses XercesC 2.7 for parsing the incoming/outgoing XML and it supports unique constrains. EDD cannot check the possible violation, however.
    BR, Martti

  • "Source File does not match XML Schema"

    Using MDM 5.5 SP4 Patch 2 (Build 5.5.34.26) on a 32-bit system (WinServer 2003, Enterprise Edition SP1.
    This source file and schema have been verified by SAP Tech Support and again using Altova XML Spy. The schema was loaded into MDM through the console and the source file was successfully mapped against it and the data manually imported into MDM. The customer record was then cleansed using the Data Manager and the import map was used to create an inbound port. However, when the Import Server goes to import the file using the map, the following error is dropped into the log: "Source File does not match XML Schema". Has anyone else seen this error?
    Thanks,  Don
    IMPORT LOG ENTRY:
    <?xml version="1.0" encoding="utf-8"?>
    <?xml-stylesheet type="text/xsl" href="MDM_Log.xsl"?>
    <MDM_Log version="1.0" path="H:PROGRA~1SAPMDM~1.5IMPORT~1TempMDIS_TASK@@U@[email protected]"
    >
         <Open ts-long="18:24:35 GMT, Saturday, February 03, 2007" ts="2007/02/03 18:24:35.108 GMT" pid="8640" host="bp1tulap452" compile-type="RELEASE_32">
              <Trace ts="2007/02/03 18:24:35.249 GMT" tid="7216" entry-no="3">[BP US FUELS CUSTOMER MASTER] Import Task Started. Chunk size[50000], No. parallel chunks[1]</Trace>
              <Trace ts="2007/02/03 18:24:43.890 GMT" tid="5980" entry-no="11">xSaxParser: Starting.</Trace>
              <Trace ts="2007/02/03 18:24:43.937 GMT" tid="5980" entry-no="19">xSaxParser: Ending.</Trace>
              <Trace ts="2007/02/03 18:24:43.937 GMT" tid="5980" entry-no="20">Source file does not conform to XML Schema!<LINE-FEED/></Trace>
              <Trace ts="2007/02/03 18:24:45.312 GMT" tid="7216" entry-no="29">[RESPOSITORY]Import Task Finished. Chunk size[50000], No. parallel chunks[1]</Trace>
         </Open>
    </MDM_Log>
    SOURCE FILE:
      <?xml version="1.0" encoding="UTF-8" ?>
    - <ns1:CustomerCreateResp xmlns:ns1="urn:bp:xi:up:re:cust_mdm:cmdm:pr5:100">
    - <CUSTOMER>
    - <item>
      <CUSTOMERNO>0090154474</CUSTOMERNO>
      <MDMCUSTOMER>2463</MDMCUSTOMER>
      <CREATE_DATE>22/01/2007,11:43:49</CREATE_DATE>
    - <RETURN>
      <TYPE />
      <MESSAGE />
      </RETURN>
    - <PT_CONTPART_RETURN>
    - <item>
      <MDM_CONTACT>0000000001</MDM_CONTACT>
      <CONTACT>0001111119</CONTACT>
      </item>
    - <item>
      <MDM_CONTACT>0000000004</MDM_CONTACT>
      <CONTACT>0002222229</CONTACT>
      </item>
      </PT_CONTPART_RETURN>
    - <PARTNERS>
    - <item>
      <CUSTOMERNO>0090154474</CUSTOMERNO>
      <PARTNER_FUNCTION>RE</PARTNER_FUNCTION>
      <PARTNER_NUMBER>0001333329</PARTNER_NUMBER>
      <DEFAULT_PARTNER>X</DEFAULT_PARTNER>
      </item>
    - <item>
      <CUSTOMERNO>0090154474</CUSTOMERNO>
      <PARTNER_FUNCTION>WE</PARTNER_FUNCTION>
      <PARTNER_NUMBER>0001555559</PARTNER_NUMBER>
      <DEFAULT_PARTNER />
      </item>
      </PARTNERS>
      </item>
      </CUSTOMER>
      </ns1:CustomerCreateResp>
    SCHEMA:
       <?xml version="1.0" encoding="UTF-8" ?>
    - <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:bp:xi:up:re:cust_mdm:cmdm:pr5:100" targetNamespace="urn:bp:xi:up:re:cust_mdm:cmdm:pr5:100" elementFormDefault="unqualified">
      <xsd:element name="CustomerCreateResp" type="CustomerCreateResp" />
    - <xsd:complexType name="CustomerCreateResp">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">682cc2d0aa6e11db9b800015c5888624</xsd:appinfo>
      </xsd:annotation>
    - <xsd:sequence>
    - <xsd:element name="CUSTOMER">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">f68988f0a02e11db94bb00166f98336c</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="item" maxOccurs="unbounded">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b20a75811dba9d400166f983d94</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="CUSTOMERNO" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b21a75811db9c4800166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="MDMCUSTOMER" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b22a75811dbcbac00166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="CREATE_DATE" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b23a75811dbcc0300166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="RETURN" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b24a75811db8d5500166f983d94</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="TYPE" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b25a75811db876d00166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="MESSAGE" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b26a75811db85c400166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
    - <xsd:element name="PT_CONTPART_RETURN" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b27a75811db8ca900166f983d94</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="item" minOccurs="0" maxOccurs="unbounded">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b28a75811dbaae100166f983d94</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="MDM_CONTACT" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b29a75811dbaade00166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="CONTACT" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b2aa75811dbc24c00166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
    - <xsd:element name="PARTNERS" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b2ba75811dbb74500166f983d94</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="item" minOccurs="0" maxOccurs="unbounded">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b2ca75811db9f6500166f983d94</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="CUSTOMERNO" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b2da75811db9bd800166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="PARTNER_FUNCTION" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b2ea75811dbb84100166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="PARTNER_NUMBER" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b2fa75811db852800166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="DEFAULT_PARTNER" type="xsd:string" minOccurs="0">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">72ea9b30a75811db968400166f983d94</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:schema>

    You have to define the namespace in the URI field of XML Schmea in Console.
    In MDM Console,
    Admin -> XML Schemas -> Create XML Schema
    You have to specify the namespace urn:bp:xi:up:re:cust_mdm:cmdm:pr5:100 in the URI property.
    Please update this post if fixed your problem.

  • Help required in syntax highlighting in xml using tool Syntax

    hi
    i am using Syntax tool for syntax highlighting of xml in JTextpane. I use complex html style and i want to change the colors of the displayed xml in the tool under complex html like the internet explorer displays in case of xml i want to make my xml like that..

    Hi,
    use it like this if Fname equals constnat[space] then pass the Constant[space] to Fname else value of Fname as under
    ................................Constant[]------>
    FNAME.............................................Then
    >Equals....................................IF -
    >FNAME
    Constant[].........................................ELSE
    .......................................FNAME---->   
    Constant[]    = Constant [ Space ]
    Sachin

  • 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

  • XML Syntax Highlighting

    Hi, I need help with XML Syntax Highlighting. I try to create simple XML editor, but I have probleblems with Syntax Highlighting.
    Is there anyone who can help me?

    Here is personal recommendation, this 3rd party syntax highlight component works quite well for many JTextComponents
    Check out: http://ostermiller.org/syntax/
    ICE

  • XML Syntax highlighting (again :)

    Hi there,
    I know, that there have been quite a view posts about this topics, but as far as I see, there has been no solution to this.
    So I wanted to ask if someone has implemented a XML Syntax highlighting or knows where to get a tutorial from to accomplish so (inheriting from DefaultStyledDocument...?)
    Sincerely
    Charly

    Hi!
    I have the same need: an XML Syntax Highlighting (coloring).
    I don't need an XML editor, I have a JTextPane that shows XML code and I would like it to be done with a syntax coloring.
    If you have a solution I will really appreciate!
    Thanks
    Gio :-)

Maybe you are looking for