XML element names required in lower case

Hi,
I am on release 4.6C
I create an XML file from internal table using FM SDIXML_DATA_TO_DOM and SDIXML_DOM_TO_XML.
The internal table is defined such that the  fieldnames of internal table are same as element names in XML file.
The XML file gets created properly, but the element names appear in upper case.
The requirement is to have it in lower case.
Does anybody have any idea about how to control the case here?

Hi Sudhir
you can convert field names manually using translate command to convert it to lower case.
hope this helps.

Similar Messages

  • Dynamically Using  XML Element name as column names

    I have a requirement where I need to show data for 31 days or days of the month based on the data in the xml result.
    Based on the month you are running the report, some may have 28 elements and some may have 31 elements in the data for days.
    How do I dynamically show 28 columns or 31 columns etc - the trick here is I have to use the name of the XML element and not the value for column names.
    My requirement is like this.
    Deal --------01 -------- 02 -------- 03 -------- 04 05 .upto ... 31days
    Deal 1 : 22218 : 32218 : 11918
    Deal 2 : Qty1 : Qty2 : Qty3
    I need to be able to use the XML Element names , Day01, Day02 etc as the column names in the report.
    How can I use the XML Element name - in this case I need to remove the "Day" and use just the number part for the column name.
    I can't have xml element names as numbers, thats why "Day" string is prefixed.
    <Row state="">
    <DEAL>Deal 1</DEAL>
    <PORTFOLIO>AM ST Prod PDP</PORTFOLIO>
    <CPTY>DTEGO</CPTY>
    <FACILITY>MICHCON</FACILITY>
    <POINT>100013 : Chestonia 17-Rec</POINT>
    <TYPE>Purchase</TYPE>
    <Day01>22218</Day01>
    <Day02>32218</Day02>
    <Day03>11918</Day03>
    <Day04>11918</Day04>
    <Day05>11918</Day05>
    <Day06>11918</Day06>
    <Day07>11918</Day07>
    <Day08>11918</Day08>
    <Day09>11918</Day09>
    <Day10>11918</Day10>
    <Day11>11918</Day11>
    <Day12>23238</Day12>
    <Day13>11918</Day13>
    <Day14>11918</Day14>
    <Day15>11918</Day15>
    <Day16>32328</Day16>
    <Day17>11918</Day17>
    <Day18>11918</Day18>
    <Day19>11918</Day19>
    <Day20>11918</Day20>
    <Day21>11918</Day21>
    <Day22>11918</Day22>
    <Day23>11918</Day23>
    <Day24>11918</Day24>
    <Day25>11918</Day25>
    <Day26>11918</Day26>
    <Day27>13511</Day27>
    <Day28>13550</Day28>
    <Day29>13550</Day29>
    <Day30>13550</Day30>
    </Row>

    I have a requirement where I need to show data for 31 days or days of the month based on the data in the xml result.
    Based on the month you are running the report, some may have 28 elements and some may have 31 elements in the data for days.
    How do I dynamically show 28 columns or 31 columns etc - the trick here is I have to use the name of the XML element and not the value for column names.
    My requirement is like this.
    Deal --------01 -------- 02 -------- 03 -------- 04 05 .upto ... 31days
    Deal 1 : 22218 : 32218 : 11918
    Deal 2 : Qty1 : Qty2 : Qty3
    I need to be able to use the XML Element names , Day01, Day02 etc as the column names in the report.
    How can I use the XML Element name - in this case I need to remove the "Day" and use just the number part for the column name.
    I can't have xml element names as numbers, thats why "Day" string is prefixed.
    <Row state="">
    <DEAL>Deal 1</DEAL>
    <PORTFOLIO>AM ST Prod PDP</PORTFOLIO>
    <CPTY>DTEGO</CPTY>
    <FACILITY>MICHCON</FACILITY>
    <POINT>100013 : Chestonia 17-Rec</POINT>
    <TYPE>Purchase</TYPE>
    <Day01>22218</Day01>
    <Day02>32218</Day02>
    <Day03>11918</Day03>
    <Day04>11918</Day04>
    <Day05>11918</Day05>
    <Day06>11918</Day06>
    <Day07>11918</Day07>
    <Day08>11918</Day08>
    <Day09>11918</Day09>
    <Day10>11918</Day10>
    <Day11>11918</Day11>
    <Day12>23238</Day12>
    <Day13>11918</Day13>
    <Day14>11918</Day14>
    <Day15>11918</Day15>
    <Day16>32328</Day16>
    <Day17>11918</Day17>
    <Day18>11918</Day18>
    <Day19>11918</Day19>
    <Day20>11918</Day20>
    <Day21>11918</Day21>
    <Day22>11918</Day22>
    <Day23>11918</Day23>
    <Day24>11918</Day24>
    <Day25>11918</Day25>
    <Day26>11918</Day26>
    <Day27>13511</Day27>
    <Day28>13550</Day28>
    <Day29>13550</Day29>
    <Day30>13550</Day30>
    </Row>

  • How to associate an xml from httpservice to datagrid if the xml element name contains periods in it

    Following is the xml from an http service, how to associate
    this xml to a data grid (employee name, number) since it contains
    periods(dots) in xml element name.
    An early help is appreciated.....
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <com.companyx>
    <person>
    <employee.data>
    <employee.name>mrx</employee.name>
    <employee.number>1001</employee.number>
    </employee.data>
    <employee.data>
    <employee.name>mry</employee.name>
    <employee.number>1002</employee.number>
    </employee.data>
    <employee.data>
    <employee.name>mrz</employee.name>
    <employee.number>1003</employee.number>
    </employee.data>
    <page>0</page>
    </person>
    </com.companyx>
    Thanks,
    Vijay Karthik

    HI
    GOOD
    IT IS POSSIBLE IN ABAP
    Extensible Markup Language (XML) is a simple, very flexible text format derived from SGML (ISO 8879). Originally designed to meet the challenges of large-scale electronic publishing, XML is also playing an increasingly important role in the exchange of a wide variety of data on the Web and elsewhere.
    XSD->
    XML Schemas express shared vocabularies and allow machines to carry out rules made by people. They provide a means for defining the structure, content and semantics of XML documents. in more detail.
    XDS->
    XDS can process data images from CCD-, imaging-plate, and multiwire-detectors in a variety of formats. Detector specific Input file templates greatly simplify the use of XDS; they are provided as part of the documentation.
    XDS runs under Unix or Linux on a single server or a grid of up to 99 machines of the same type managed by the MOSIX system; in addition, by using OpenMP, it can be executed in parallel on up to 32 processors at each node that share the same address space.
    http://www2.stylusstudio.com/SSDN/default.asp?action=9&fid=23&read=2926
    /people/r.eijpe/blog/2006/02/19/xml-dom-processing-in-abap-part-iiia150-xml-dom-within-sap-xi-abap-mapping
    THANKS
    MRUTYUN

  • Safari XML parser converts attributes to lower case?

    I am trying to create and serialize XML documents using Safari 2.01. It appears that during this process, XML attributes are always converted to lower case. Since XML is case sensitive, this causes errors when mixed case is expected. My sample code (below) works properly (attributes not converted to lower case) in FireFox, Netscape, etc.
    Questions are:
    Is there a way to load/serizlize XML in Safari so that this does not happen?
    If not, is this behavior by design or is it a bug? Will this be changed in future versions?
    Thanks for any assistance!
    Sample code:
    // Create XML document
    var xmlString = '<Test MixedCase="test">SomeText</Test>'
    var parser = new DOMParser();
    xmlDoc = parser.parseFromString(xmlString, "text/xml");
    // Get XML text
    var serializer = new XMLSerializer();
    text = serializer.serializeToString(xmlDoc);
    IBM Thinkpad T40   Windows 2000  
    IBM Thinkpad T40   Windows 2000  
      Windows XP  
      Mac OS X (10.2.x)  
      Mac OS X (10.0.x)  

    Are you sure the parser is changing the element names?
    (You didn't really mean "attributes", did you?) If it
    is, then that's a bug in the parser. Element names in
    XML are case-sensitive, i.e. they can be upper or
    lower case or any mixture of cases. There aren't
    supposed to be any "features" that let you fiddle with
    the case of element names.
    If you told me that you were using a Transformer to
    produce HTML, and that it was outputting <TR>, I
    wouldn't be surprised. Especially since XALAN is a
    transformer and not a parser. I would just suggest in
    that case that you should change your output method
    from HTML to XML, and to output <tr>. A Transformer
    won't change the case of element names if the output
    method is XML, but it may if the output method is
    HTML.Thanks for the response. Sorry about the vernacular mixup there.
    Here is our situation:
    javax.xml.parsers.SAXParser parser = SAXParserFactory.newInstance().newSAXParser();
    parser.parse(InputSource is, HandlerBase hb) <-- noted that this is a deprecated method
    This parse method here turns the html elements upper case.
    I have experimented with setting the XMLReader on the parser as a HTMLSerializer and XHTMLSerializer with no luck in changing the outcome.
    Hope this clears things up a bit more.

  • Simple Transformation with very long XML element names

    I am trying to write a program to deserialize XML documents using the Simple Transformation technique.  There are many optional elements in the XML document, so I need to have conditional statements statements to avoid trying to process elements that are not in the document.  The XML document, however, has several Element Names that are greater than 30 characters in length.  The Simple Transformation technique seems to require ABAP data dictionary structures that mirror the schema of the XML document.  But one cannot create structure component names that are greater than 30 characters in length.  We don't have any control over the XML schema as the XML documents come from the US government.  The ST fragment below shows the statement that I want to write, but since the ABAP Structure PlasticCardInformationGroup cannot have a component AuthorizationResponseInformation, the ST syntax checker yields an "Illegal Reference ADDITIONALPLASTICCARDINFORMATION" error message.
    Does anyone know a way to avoid this error?
    <tt:d-cond check="exist(TRS_TradingPartner_Agreement.TRS_FinancialTransaction.PlasticCardInformationGroup.AdditionalPlasticCardInformation)">
    <ns2:AdditionalPlasticCardInformation>
    <tt:attribute name="CardNetworkType" value-ref="TRS_TRADINGPARTNER_AGREEMENT.TRS_FINANCIALTRANSACTION.PLASTICCARDINFORMATIONGROUP.ADDITIONALPLASTICCARDINFORMATI.CARDNETWORKTYPE"/>
    <tt:attribute name="DraftLocatorNumber" value-ref="TRS_TRADINGPARTNER_AGREEMENT.TRS_FINANCIALTRANSACTION.PLASTICCARDINFORMATIONGROUP.ADDITIONALPLASTICCARDINFORMATI.DRAFTLOCATORNUMBER"/>
    </ns2:AdditionalPlasticCardInformation>

    could anyone help me?

  • CJK characters in xml element name

    Hi People,
    I have a question as it looks like I am doing something wrong, but I do not know what.
    I am trying to use CJK characters in the element name of an xml document and the element names are encoded/parsed using the default encoding and not the encoding specified at the xml document.
    This is the specific code
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
         document.appendChild(document.createElement("\ub3c4\uba54\uc778"));
         TransformerFactory tFactory = TransformerFactory.newInstance();
            Transformer transformer = tFactory.newTransformer();
            transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
            transformer.transform(new DOMSource(document), new StreamResult(baos));
            System.out.println(new String(baos.toByteArray(), "UTF-8"));
            System.out.println(new String(baos.toByteArray()));(you have to run this on a system that does not have UTF-8 as the default locale :-)
    The result of this is
    <?xml version="1.0" encoding="UTF-8" standalone="no"?><???/>
    <?xml version="1.0" encoding="UTF-8" standalone="no"?><&#46020;&#47700;&#51064;/>
    So the encoding of the element name is not UTF-8 but the default encoding.
    Just in case someone ask
    $ java -version
    java version "1.6.0_05"
    Java(TM) SE Runtime Environment (build 1.6.0_05-b13-120)
    Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_05-b13-52, mixed mode)
    Thanks,
    Lucas

    Hi Alpha.23,
    well I'm not sure, and maybe I'm totally wrong, but here is what I think about your problem.
    As there is no error while running the code, there should be no XML problem (so the characters you are using are XML compatible for tag names).
    I think the problem is the ability of any computer to display such chars. The questionmark often indicates that there is a char which cannot display correctly. This depends partitially on the font your are using.
    If I try to display the chars with simple System.out.println("\ub3c4\uba54\uc778"); I get those question marks too. So I guess the console of my IDE (eclipse) can't display these Korean symbols. But I haven't installed the specific language-support for any of the Asian languages (so I don't know what happend when they are installed, though I guess that doesn't solve the problem...).
    So my tip is first to look for a way to print these char in general (on the console, into a file, maybe try to create a word document because a unicode font -i.e. Arial Unicode- is able to print these - try ALT+47700 or ALT+46020).
    Best Wishes
    esprimo

  • ZCM 11-TP: device names always in lower case

    Hello,
    I'm just wonder why ZCM registers all linux device names in lower case, independent if the host name on the device itself is written in upper or lower case.
    Is this how ZCM did it all the time or is there a specific reason for this ?
    Rainer

    I'll investigate and let you know.
    Jason

  • Autotyping not preserving XML element names for use in Web service

    I am trying to generate a web service from an existing WSDL (ServiceOrderingContract.wsdl,
    attached). The WSDL contains as a message part with an element dsl_FirmOrderProvideRequest.
    Autotyping produces a corresponding class DSLFirmOrderProvideRequest. I use the
    output of autotyping to implement a web service corresponding to this WSDL. I
    then deploy this web service. The WSDL of the DEPLOYED webservice now has a message
    part with an element DSLFirmOrderProvideRequest, per the autotype, but in mismatch
    with the source WSDL. Of course, the clientgen from the source WSDL wont work
    against the latter deployed WSDL.
    Something is changing dsl_ to DSL in the autotyping process. Is this a bug? Or
    am I doing something wrong? Is there any option in autotype task to preserve element
    names?
    Thanks a lot.

    Hello,
    Take a look at the docs on roundtripping generated data types [1]
    Regards,
    Bruce
    [1]
    http://edocs.bea.com/wls/docs81/webserv/assemble.html#1074725
    Suteertha wrote:
    >
    This is in basic WLS 8.1 SP2.

  • XML element name contains (.) periods, how to access each element value?

    Hi All,
    This is the xml that needs to be processed.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <com.companyx>
    <person>
    <employee.data>
    <employee.name>mrx</employee.name>
    <employee.number>1001</employee.number>
    </employee.data>
    <employee.data>
    <employee.name>mry</employee.name>
    <employee.number>1002</employee.number>
    </employee.data>
    <employee.data>
    <employee.name>mrz</employee.name>
    <employee.number>1003</employee.number>
    </employee.data>
    <page>0</page>
    </person>
    </com.companyx>
    Please tell me how to access the <employee.name> value of
    the first <employee.data> element.
    An early help is much appreciated.......
    Thanks in Advance,
    Vijay Karthik

    Give this a try... should do the trick
    trace(myXML.person["employee.data"][0]["employee.name"])

  • Sort by name separates upper/lower case

    Since upgrading from Mountain Lion to Mavericks (10.9.4), I've noticed that I am no longer able to sort files by name and get one list in alphabetical order. I now get two, as Mavericks seems to be sorting out files beginning first with uppercase letters and then following with all lowercase letters:
    Naturally, this makes it difficult to efficiently scan a directory for a file with a known name, as I'd have to look in two places. Terminal is showing file lists in the same manner. I have made sure that grouping is turned off, so as to not confuse the view while sorting. A related issue that I am dealing with is drop down menus in Apps or on websites where one can typically type the first few letters of an entry and snap right to it. However, typing "tim" will not bring up an entry in a font menu, for instance, if the thing I'm trying to get to is "Times New Roman" with an uppercase T. In this case, I would have to hold the shift key to get a capital letter and then let it go, so that the rest would be lowercase.
    I don't remember any Mac operating system before this being so insistent on separating letter cases. Is there a way to disable this behavior?
    Chris

    The only thing I can think of would be that you set the OS up in a Case-sensitive file system, but since I’ve never used one, I don’t know for sure. I really don’t think that would be it, though.
    Any Finder “enhancement” software?

  • Grid View artist names are entirely lower case

    Hi,
    in my grid view the artist names have changed to entirely lowercase, i.e "adele", yet on all the tracks Artist & Volume Artist shows as "Adele" any idea why this suddenly changed? and more importantly how I can change it back?
    I've tried resetting the Artists and Volume Artist tags but this hasn't helped.
    Thanks
    Mark.

    Trephination wrote:
    Personally, I would rather this than distorting the image.
    Neither would I.
    Trephination wrote:
    If it bothers you, you can set other images as default grid artwork. Choose Get Info whilst on the grid view and you can paste in artwork which it will use as a default.
    It does not bother me, it was something that I just noticed while looking over the Grid View to answer someone else’s questions.

  • Generate lower-case nodes in XML

    Hi,
    In my PL/SQL procedures, I generate XML files based on SQL queries, like this:
    SELECT XMLELEMENT ("web_vpreparations",
    XMLAGG(
    XMLELEMENT ("web_vpreparation",
    XMLFOREST (CODE as "code",
    COMMERCIAL_NAME as "commercial_name",
    As you can see, I rename my column names to their lower-case equivalents, because the client-side application which processes the XML file expects them to be in lower-case.
    I now have a huge view with hundreds of columns and would like to avoid having to rename each one. Is there a chance I can tell the PL/SQL or the SQL to return the XML nodes in lower-case?
    I'll appreciate any help on this problem.
    Chris.

    does XMLTable exist in Oracle 9i, for some of my customers?No. XMLTable was introduced in 10g (not sure the exact version though).
    What am I doing wrong?Sorry can't say. I know for sure that it works for 10.2.0.4.0:
    SQL> select * from v$version where rownum = 1
    BANNER                                                         
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    1 row selected.
    SQL> select trim(column_value) cv
    from xmltable(
    'for $i in ora:view("hersteller_x")/ROW[HERSTL=1]/* return element {lower-case($i/name())} {$i/text()}')
    CV                                                                             
    <mandant>1</mandant>                                                           
    <herstl>1</herstl>                                                             
    <kurzbez>01FSL</kurzbez>                                                       
    <name>SEMICONDUCTOR INC.</name>                                      
    <versland>D</versland>                                                         
    <urland>US</urland>                                                            
    <versweg>4</versweg>                                                           
    7 rows selected.

  • TopLink map a field which name in low case

    I used Oracle ADF to modeling my database table. My table name and all filed names are in low cases. I used TopLink Create Java Objects from Tables wizard to crate Java objects from my table, and created map. In the TopLink mapping, the query keys are in low cases. But when my session bean execute the named query, the query statement from executeQuery doesn't put double quotes around the filed name and table name. The query statement like: select name from space. So it will cause error like "java.sql.SQLException: ORA-00942: table or view does not exist". The query statement should like:
    select "name" from "space";
    Can anyone tell me where to edit the mapping or customize code to put double quotes around field name and table name?

    I'm not sure if the JDev UI has an option to output table and field names with quotes. You could use a SessionCustomizer in your TopLink sessions.xml file to iterate over the Session's descriptors and change each of their table and field names to include the " character.
    In general you will make you life much easier if you just create the tables and field using normal upper case or case insensitive names.
    It would be nice to have an easier way to quote all table and field names, please feel free to log this issues on EclipseLink Bugzilla.
    James : http://www.eclipselink.org

  • XML Element of XML Element of XML Element (and so on...)

    Here is my XML data (shorted, in a file myFile):
    <LiveData>
    <Voltage>
    <Total>
    <VoltageNow>1052</VoltageNow>
    </Total>
    </Voltage>
    <Power>
    <Total>
    <PowerNow>345</PowerNow>
    </Total>
    </LiveData>
    I would like to get the VoltageNow and PowerNow values, but the following script does not work:
    tell application "System Events"
    set elem1 to XML element 1 of XML file myFile /*<LiveData>
    set power to XML elements of elem1 whose name is "Power"
    set total to XML elements of power whose name is "Total"
    set powernow to value of XML elements of total whose name is "PowerNow"
    end tell
    Error: System Events got an error: Can’t make {} into type string.
    BTW, I don't want to use XML Element X because the order may change.
    What is the correct method to traverse these elements to obtain values?

    AppleScript can handle the strings, but the System Events XML Suite doesn't work with text strings - it deals with the XML objects, which have name and value properties. The handler can be modified to show the names of an element, but it is just designed to work with the XML Suite.
    The contents of an XML file is just text, so you can forgo System Events and just use regular text manipulation statements, or use another tool such as the Satimage XMLLib osax, which is much more robust and does include commands to display the XML object as a string.
    By the way, my original handler was designed and tested in Leopard, but I discovered a Snow Leopard bug that alters the way it returns array/list contents. The following script has changes that return the functionality, in addition to a dialog handler that will display lists:
    <pre style="
    font-family: Monaco, 'Courier New', Courier, monospace;
    font-size: 10px;
    font-weight: normal;
    margin: 0px;
    padding: 5px;
    border: 1px solid #000000;
    width: 720px; height: 340px;
    color: #000000;
    background-color: #DAFFB6;
    overflow: auto;"
    title="this text can be pasted into the Script Editor">
    on run -- example
    set XMLFile to (choose file without invisibles)
    show("element value:", (getXMLElement from {XMLFile, "LiveData", "Voltage", "Total", "VoltageNow"}))
    end run
    to show(label, something)
    show an alert for something, formatting lists and records
    parameters - label [text]: the alert text
    something [mixed]: an item to put in the alert message
    returns nothing
    if something is not in {null, missing value} then
    try -- show the message
    if (class of something) is in {list, record} then (something as number) -- force an error
    display alert label message (something as text)
    on error errorMessage -- lists and records don't format very well, so cheat
    set {here, there} to {(offset of "{" in errorMessage), -(offset of "}" in (reverse of text items of errorMessage) as text)}
    display alert label message text here thru there of errorMessage
    end try
    else
    display alert label message "*null or missing value*"
    end if
    end show
    to getXMLElement from XMLItems
    get the specified element from a simple XML structure by name or index
        the number of items is not fixed, but must be at least 2 (the XML file and an XML element)
      parameters: XMLItems [list] -
    item 1 [text]: the XML file path (Finder or POSIX)
    item 2 [mixed]: the XML element name or index (names are case sensitive)
    item(s) 3+ [mixed]: sub item(s)
    returns [list]: value of the element
    try
    if (count XMLItems) is less than 2 then error "getXMLElement handler:  item list contains too few items"
    tell application "System Events"
    set theXMLData to contents of XML file ((the first item of XMLItems) as text)
    -- get text of theXMLData
    set theXMLElement to XML element 1 of theXMLData -- start at the root element
    repeat with anItem in rest of XMLItems -- add on the sub items
    set anItem to contents of anItem
    try
    set anItem to anItem as integer -- index number?
    end try
    set theXMLElement to (get XML element anItem of theXMLElement)
    end repeat
    try -- return the element(s)
    -- return name of XML elements of theXMLElement
    set theResult to value of theXMLElement -- SL built-in result variable does not get set
    if theResult is missing value then error -- SL does not error on empty or missing value
    return theResult
    on error errorMessage number errorNumber -- the element is empty, or a list of items
    log errorMessage
    return value of XML elements of theXMLElement
    end try
    end tell
    on error errorMessage number errorNumber
    log errorMessage
    -- return null
    error "getXMLElement handler:  element not found (" & errorNumber & ")"
    end try
    end getXMLElement</pre>

  • Element name too long when using ROWTYPE

    I've come across an issue with xml element names longer than 30 characters. Seems it has something to do with ROWTYPE. Creation of this function is successful:
    <pre>
    CREATE OR REPLACE FUNCTION test_fnc
    RETURN XMLTYPE
    AS
    var_return XMLTYPE;
    l_dummy DUAL.dummy%TYPE;
    BEGIN
    SELECT dummy INTO l_dummy FROM DUAL;
    SELECT XMLCONCAT(XMLELEMENT (
    "TEST",
    XMLFOREST (
    l_dummy "THIS_IS_OVER_30_CHARACTERS_LONG"
    data_set
    INTO var_return
    FROM DUAL;
    RETURN var_return;
    END test_fnc;
    </pre>
    However, specifying the variable as ROWTYPE gives ORA-00972 error (unless I shorten the element name...):
    <pre>
    CREATE OR REPLACE FUNCTION test_fnc
    RETURN XMLTYPE
    AS
    var_return XMLTYPE;
    l_dummy DUAL%ROWTYPE;
    BEGIN
    SELECT dummy INTO l_dummy FROM DUAL;
    SELECT XMLCONCAT(XMLELEMENT (
    "TEST",
    XMLFOREST (
    l_dummy.dummy "THIS_IS_OVER_30_CHARACTERS_LONG"
    data_set
    INTO var_return
    FROM DUAL;
    RETURN var_return;
    END test_fnc;
    </pre>
    Has anyone come across this before, or have any ideas for a solution? I could specify all my variables as TYPE but as there are many within the tables it would be easier to use ROWTYPE.
    Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
    Thanks.

    it works if you add "AS" after l_dummy.dummy
    SQL> CREATE OR REPLACE FUNCTION test_fnc
      2     RETURN XMLTYPE
      3  AS
      4     var_return   XMLTYPE;
      5     l_dummy      DUAL%ROWTYPE;
      6  BEGIN
      7     SELECT   dummy INTO l_dummy FROM DUAL;
      8
      9     SELECT   XMLCONCAT(XMLELEMENT (
    10                           "TEST",
    11                           XMLFOREST (
    12                              l_dummy.dummy AS "THIS_IS_OVER_30_CHARACTERS_LONG"
    13                           )
    14                        ))
    15                 data_set
    16       INTO   var_return
    17       FROM   DUAL;
    18  RETURN var_return;
    19  END test_fnc;
    20  /
    Function created.Ants

Maybe you are looking for