Can DTD schema for a XML file be a data source to the Crystal Reports?

Hi All,
We are trying to generate a crystal report having XML file as a source. And we want to use the DTD schema for the source XML file.
Please suggest whether DTD schema can be used for crystal reports or not.
Thanks
Sriram

Hi Sriram,
I think it should work.
1) Use this pdf for your reference
[https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/90faaea7-8e1e-2b10-e6a7-ea82e11d9e8b ]
2)if in case it does not help you can convert existing DTD to XSD using this online converter
[http://www.hitsw.com/xml_utilites/]
and  then use for generating report from XML file.
Regards,
Jeetsinh Parmar.

Similar Messages

  • XML and Web Service Data Source Missing in Crystal Reports for VS

    I would like to use a Web Service as the data source for a Crystal Report that will be running outside of my Visual Studio application.  So setting the data source to the web service in code is not possible.  My understanding is Crystal Reports has a connection (in the Database Expert under New Connection) named XML and Web Service.  Here you can select web service and enter the WSDL URL for the web service.  However it does not appear in the list for Crystal Reports for Visual Studio.  Does this connection type come with the Visual Studio version of Crystal Reports and if not is their a way to obtain it? 
    Thank you for your assistance.

    None of the bundled versions of CR have the driver. Reason is that the driver responsible for these connections requires the Java framework and I suspect MS would not be too pleased if we installed the Java framework. The stand alone versions, since they are not part of any bundle can and do install the Java framework and the driver. Note that even the latest release of CR - CRVS2010 does not have the driver as it essentially becomes a bundle or a VS2010 plug-in.
    So, the short of it is; you have to obtain a stand-alone version of CR. I'd recommend CR 2008 (12.x) as CRXI R2 will run out of support in June of this year.
    - Ludek

  • Using an XML file as a data source for XI in NW CE 7.1 DS

    I am trying to set up a simple demonstration of XI capabilities by grabbing an XML file from one location and putting the data into WEI in and ISA 95 format.  I have set up my XML file (and schema) as an XML Data Source under ODA Data Sources.  However, I cannot seem to find how to access the data in my JEE application.  I was going to build a JPA file, but cannot seem to map the field data.
    I want to create a component in either WebDynPro or CAF perspectives that will utilize the XML file as input. I cannot find any examples either in SAP Support or by Google.  Any ideas?
    Thanks,
    TB

    OK - I got this working but in order to do this I followed some info from another post and changed the structure of the XML.
    Previously, it was structured as:
    <params>
    <param>
    <name>Test1</name>
    <value>Some Value</value>
    </param>
    <param>
    <name>Test2</name>
    <value>Some Value2</value>
    </param>
    </params>
    Now I have changed it to:
    <params>
    <param name="Test1" value="Some Value" />
    <param name="Test2" value="Some Value2" />
    </params>
    I also added the dod=true value into the JDCB url.
    Now, one of these circumstances fixed my issue (of which I am very glad) but I don't know which one :-) .... and I currently don't have the time to find out.
    I may investigate this further in the future (and post accordingly).
    Thanks,
    G

  • Where can I find the schema for config.xml file of jax-rpc

    For the xrpcc tool I need to create a config.xml file, does any body know where can I find the schema for it?

    http://java.sun.com/webservices/docs/1.0/tutorial/doc/JAXRPCxrpcc.html and all your questions will be answered... except maybe why aren't these pages linked from the main index anymore? (they were when 1.0 of the tutorial was released, but then there were no docs for wscompile or wsdeploy. The JAX-RPC release notes fixed the latter, but around 1.0_01 they broke the former.)

  • DTD + Schema reference in xml file to be inserted

    Hi,
    I am pasting sample code where I want to have schema + DTD reference. Schema file is used for validating the file and DTD is needed for entity resolution.
    <?xml version="1.0" ?>
    <!DOCTYPE html [
    <!ENTITY reg    "®">
    ]>
    <html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.xsd">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <meta http-equiv="Content-Script-Type" content="text/javascript" />
    </head>
    <!-- class="header" -->
    <body>
    Hi all. Register symbol should be displayed now &reg;
    </body>
    </html>I have already registered http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.xsd schema with the DB. But, when I try to insert this xml data in the DB, I'm getting the following error.
    SQL Error: ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00104: Warning: element "html" is not declared in the DTD
    Error at line 5
    ORA-06512: at "SYS.XMLTYPE", line 296
    ORA-06512: at line 1
    31011. 00000 -  "XML parsing failed"
    *Cause:    XML parser returned an error while trying to parse the document.
    *Action:   Check if the document to be parsed is valid.Anyone please help me in resolving this issue..
    Thanks in advance,
    Divya.
    Edited by: user11853430 on Nov 28, 2010 8:45 PM

    Thanks for the information. I assume you are intending using Schema Based Binary XML storage. Attempting to use Object Realtional storage for XHTML is not something we would recommend. I am checking with development to see if we have a way of using the DTD just for entity resolution. In the mean time the only other solution I can think of it to include the full or partial DTD for XHTML in addition to the entity defintion..
    I tried this, but it doesn't seem to work
    SQL> select XMLTYPE(
      2  '<?xml version="1.0" ?>
      3  <!DOCTYPE html [
      4  <!ENTITY reg    "r">
      5  <!ELEMENT html ANY>
      6  ]>
      7  <html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.xsd">
      8    <head>
      9      <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
    10      <meta http-equiv="Content-Style-Type" content="text/css" />
    11      <meta http-equiv="Content-Script-Type" content="text/javascript" />
    12    </head>
    13
    14  <!-- class="header" -->
    15    <body>
    16      Hi all. Register symbol should be displayed now &reg;
    17     </body>
    18  </html>') from dual
    19  /
    ERROR:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00106: Warning: attribute "xmlns:xsi" of element "html" is undefined
    Error at line 6
    ORA-06512: at "SYS.XMLTYPE", line 310
    ORA-06512: at line 1
    no rows selectedWhat you want is the DTD equivilant of
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
         <xs:element name="html" type="xs:anyType">
              <xs:annotation>
                   <xs:documentation>Comment describing your root element</xs:documentation>
              </xs:annotation>
         </xs:element>
    </xs:schema>I also tried making the xhtml-strict DTD available... but that did not appear to work
    First load the DTD and ENT files into the repository.
    C:\xdb\examples\DTD>sqlplus /nolog @loadDTD %CD%
    SQL*Plus: Release 11.2.0.2.0 Production on Sat Nov 27 10:55:32 2010
    Copyright (c) 1982, 2010, Oracle.  All rights reserved.
    SQL> spool loadDTD.log
    SQL> --
    SQL> connect system/oracle
    Connected.
    SQL> --
    SQL> create or replace directory XMLDIR as '&1'
      2  /
    old   1: create or replace directory XMLDIR as '&1'
    new   1: create or replace directory XMLDIR as 'C:\xdb\examples\DTD'
    Directory created.
    SQL> --
    SQL> declare
      2    V_RESULT             BOOLEAN;
      3    V_DTD_FOLDER         VARCHAR2(700) := '/sys/DTD';
      4    V_DTD_TRANSITIONAL   VARCHAR2(700) := '/sys/DTD/xhtml1-transitional.dtd';
      5    V_DTD_STRICT         VARCHAR2(700) := '/sys/DTD/xhtml1-strict.dtd';
      6    V_DTD_STRICT_REG     VARCHAR2(700) := '/sys/DTD/xhtml1-strict+reg.dtd';
      7    V_ENT_LAT1           VARCHAR2(700) := '/sys/DTD/xhtml-lat1.ent';
      8    V_ENT_SYMBOL         VARCHAR2(700) := '/sys/DTD/xhtml-symbol.ent';
      9    V_ENT_SPECIAL        VARCHAR2(700) := '/sys/DTD/xhtml-special.ent';
    10  begin
    11    if (not DBMS_XDB.existsResource(V_DTD_FOLDER)) then
    12      V_RESULT := DBMS_XDB.createFolder(V_DTD_FOLDER);
    13    end if;
    14    if (not DBMS_XDB.existsResource(V_DTD_TRANSITIONAL)) then
    15      V_RESULT := DBMS_XDB.createResource(V_DTD_TRANSITIONAL,bfilename('XMLDI
    R','xhtml1-transitional.dtd'));
    16    end if;
    17    if (not DBMS_XDB.existsResource(V_DTD_STRICT)) then
    18      V_RESULT := DBMS_XDB.createResource(V_DTD_STRICT,bfilename('XMLDIR','xh
    tml1-strict.dtd'));
    19    end if;
    20    if (not DBMS_XDB.existsResource(V_DTD_STRICT_REG)) then
    21      V_RESULT := DBMS_XDB.createResource(V_DTD_STRICT_REG,bfilename('XMLDIR'
    ,'xhtml1-strict+reg.dtd'));
    22    end if;
    23    if (not DBMS_XDB.existsResource(V_ENT_LAT1)) then
    24      V_RESULT := DBMS_XDB.createResource(V_ENT_LAT1,bfilename('XMLDIR','xhtm
    l-lat1.ent'));
    25    end if;
    26    if (not DBMS_XDB.existsResource(V_ENT_SYMBOL)) then
    27      V_RESULT := DBMS_XDB.createResource(V_ENT_SYMBOL,bfilename('XMLDIR','xh
    tml-symbol.ent'));
    28    end if;
    29    if (not DBMS_XDB.existsResource(V_ENT_SPECIAL)) then
    30      V_RESULT := DBMS_XDB.createResource(V_ENT_SPECIAL,bfilename('XMLDIR','x
    html-special.ent'));
    31    end if;
    32    commit;
    33  end;
    34  /
    PL/SQL procedure successfully completed.
    SQL> select ANY_PATH
      2    from RESOURCE_VIEW
      3   where under_path(RES,'/sys/DTD') = 1
      4  /
    ANY_PATH
    /sys/DTD/xhtml-lat1.ent
    /sys/DTD/xhtml-special.ent
    /sys/DTD/xhtml-symbol.ent
    /sys/DTD/xhtml1-special.ent
    /sys/DTD/xhtml1-strict+reg.dtd
    /sys/DTD/xhtml1-strict.dtd
    /sys/DTD/xhtml1-symbol.ent
    /sys/DTD/xhtml1-transitional.dtd
    8 rows selected.
    SQL> quit
    Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64
    bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    C:\xdb\examples\DTD>However even after adding the references to the XML document
    SQL> select XMLTYPE(
      2  '<?xml version="1.0" ?>
      3  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
      4          "/sys/DTD/xhtml1-strict+reg.dtd">
      5  <html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.xsd">
      6    <head>
      7      <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
      8      <meta http-equiv="Content-Style-Type" content="text/css" />
      9      <meta http-equiv="Content-Script-Type" content="text/javascript" />
    10    </head>
    11
    12  <!-- class="header" -->
    13    <body>
    14      Hi all. Register symbol should be displayed now &reg;
    15     </body>
    16  </html>') from dual
    17  /
    ERROR:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00217: invalid character 402 (U+0192)
    Error at line 3
    Error at line 34
    Error at line 25
    ORA-06512: at "SYS.XMLTYPE", line 310
    ORA-06512: at line 1
    no rows selected
    SQL>

  • RELAX NG or Schematron schemas for Pages XML file format?

    Hey, I have been following with interest for over a year - more like two years - the whole "where are the XML schemas" for Keynote 1, and then Pages and Keynote 2.
    Apparently there is some difficulty obtaining them and I would guess that means defining them. Because if Apple had their hands on them, they would be out - and up to date - by now.
    XML Schema (.xsd) files are pretty painful to generate. There is a much simpler and and yet even more powerful schema format called "Relax NG". Assuming someone knows what the grammar is that Pages will willingly/successfully slurp up - they could probably create a .rnc file from scratch pretty quickly. The learning curve is pretty short for basic stuff and the amount of typing required is at least 40% less than when you create a .xsd file.
    Some things do not lend themselves to grammar based schemas like XSD, RNG, or RNC.
    Instead, a rule based schema language works better. Schematron is very good for this. The suffix for this file type is ".sch". The web site is easy to get to - just type schematron in your web browser's address field and press enter. Specs are all there.
    There is a program called Examplotron that creates a Schematron schema for you, given an XML file that is a sample. Of course, making rules from one example is not the same as knowing all the rules. The more different kinds of stuff you have in the file though, the better your chances are of getting a decent start going. Examplotron lives on the web at examplotron.org in case you are curious.
    OxygenXML is a very, very good XML editor and schema development environment. I have used it and a bunch of others. It is my favorite, by far.
    Someone at Apple should get on this. If it is too hard to create an XML Schema file - then please, please - try to create an RNG, RNC, or SCH file.
    If Apple cannot do it, then perhaps the user community could take a crack at it. However, it is a little bit like trying to document the laws of a country by watching what the government people do, what people do who do not get arrested, and what people do who do get arrested.
    You are not certain to see an example of every law being broken - for starters, so you will miss some. (One hopes you will not see every law that exists broken!)
    You are also not going to be able to tell what laws have influenced behavior that is lawful.
    So, for both reasons, you might unwittingly "break the laws" of this hypothetical land. In that case, you might be executed, fined, imprisoned, or as is the case still in some countries - have your hand chopped off!
    In the case of feeding a file based on mistaken assuptions to Pages, it certainly will not do what you want it do do. In theory, it might even crash, lose some data, pop up an error - or worse maybe not pop up an error, or corrupt its internal structures and become unstable. Or seem to work but fail to write the whole file out again. Or write out something that it cannot read in again - or does not reconstitute into the document that you used to have.
    Granted, there is a brute force technique that can be employed. You can write an AppleScript that gets pages to create a document that exercises every possible style and feature and logical ordering and nesting of things.
    Then you can study the XML that generates, or even feed to to Examplotron or a DTD generator.
    Doing so would probably be a way to get a good start going.
    Without any schema, there is no way to know if a complex program-generated Pages document will work right with pages.
    Granted, such program-generated documents can be generated with Applescripts. But if one already has some XML that one wants to blend in, for example - then it would be better to do it with XSLT. Or Java. Or whatever.
    Unfortunately, you really have to know what XML is legal in pages - and you have to know the grammar or rules for what Pages expects.
    So, any XSD coming from Apple in the near future - or any interest at Apple in completing a .rnc or .rng schema if it gets mostly done by customer(s) and then handed off to Apple to finish?

    XML converter (an add on to Inbound Refinery) could be used to display the contents with your XSLT choices but analyzing the file to prevent checkin would take data validation that would be custom. The CS does not care the file format or file type for checkin. Others have looked for analysis of file extension to stop checkin of certain extensions. This has been custom. I think there may be enhancement requests from customers for this kind of validation for the CS but it does not exist in the core yet.

  • XML Web Service as data source

    We are researching the option of using a web service as the data source of a Crystal report. There are a couple of points that I would like your input.
    1) How are report parameters passed to the web service?
    2) Are there any known performance issues? I created a simple XML file that had 200,000 rows (3 columns) and there was a delay of 2 min for Crystal displaying all of the report. We have reports of this size, I just wanted to get a feeling of Crystal processing and rendering of the XML file.
    3) Are there any restrictions on the XML schema definition for Crystal?  We are using Crystal 11.5 and 2008.
    I appreciate your input and any ideas.
    Many Thanks,

    For database connectivity issues post in the Database Forum

  • How to indicate the Schema path for a XML file when parsing?

    I have to validate a XML file. At the header line of this file, I need to specificate only the name of the schema but not the full path:
    <DATAMODULES xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Datamodules.xsd">
    When validating, there is any way to specify to the parser the correct location of the XSD file?
    I know I could copy the XSD file to the XML file directory or vice versa, but I cannot do that and I need a software solution.
    Could someone help me?

    An External Parsed Entity could be used to reference a schema.
    In your DTD:
    <!ENTITY datamodules SYSTEM "file:///c:/Datamodules/Datamodules.xsd">
    Refer the external entity in xml document:
    <datamodules>&datamodules;</datamodules>

  • Load Multiple Tables (schemas) from same XML file

    Hi,
    This is first time i am working XML files.
    I have one XML file with two tables (schema). I need to load those two tables into two different Target tables.
    This is the startegy to choose tables.
    <Entry type="full"> --Table 1
    <Entry type="short">--Table 2
    I am try to find the tables like this using condition split (Type == "Full" ) but tables are not splitting as expected, is am i going with wrong approach??
    Can anyone suggest me to process multiples tables from same XML file??

    Hi Naveen,
    After the issue in my environment, the package works well that the data in the XML file load to two destination tables based on one column values. The screenshot is for your reference:
    To troubleshoot this issue, could you please check the values in the type column? Verify the values have exactly the same characters, case sensitivity. It seems that you haven’t write correct values in the Conditional Split Transformation. They should be like
    below:
    If there are any other questions, please feel free to ask.
    Thanks,
    Katherine Xiong
     If you have any feedback on our support, please click
    here.
    Katherine Xiong
    TechNet Community Support

  • XML publisher report not generating output for huge XML files

    Changed Depreciation Projections Report output type to XML.
    Defined a Data Definition and a new Data Template (RTF) for this report.
    Ran the Depreciation Projection Report to generate the XML output.
    Ran the XML Report Publisher report to generate teh PDF/Excel output of the above report.
    Output generated for smaller XML files. When XML size is big, the program is running for hours without generating the output.
    Teh RTF template is basically a matrix report in which the number of columns in the report is based on the number of periods the report is run for.
    The same is not working in the Desktop version also. The system is hanging when i try to view the preview pdf.
    The XML file size is approximately 33 MB.
    Please let me know if there is any way we can increase the memory size to see the output.
    Thanks,
    Ram.

    for publisher use Category: E-Business Suite

  • How can i write also to xml file the settings of the Tag property to identify if it's "file" or "directory" ?

    The first thing i'm doing is to get from my ftp server all the ftp content information and i tag it so i can identify later if it's a file or a directory:
    private int total_dirs;
    private int searched_until_now_dirs;
    private int max_percentage;
    private TreeNode directories_real_time;
    private string SummaryText;
    private TreeNode CreateDirectoryNode(string path, string name , int recursive_levl )
    var directoryNode = new TreeNode(name);
    var directoryListing = GetDirectoryListing(path);
    var directories = directoryListing.Where(d => d.IsDirectory);
    var files = directoryListing.Where(d => !d.IsDirectory);
    total_dirs += directories.Count<FTPListDetail>();
    searched_until_now_dirs++;
    int percentage = 0;
    foreach (var dir in directories)
    directoryNode.Nodes.Add(CreateDirectoryNode(dir.FullPath, dir.Name, recursive_levl+1));
    if (recursive_levl == 1)
    TreeNode temp_tn = (TreeNode)directoryNode.Clone();
    this.BeginInvoke(new MethodInvoker( delegate
    UpdateList(temp_tn);
    percentage = (searched_until_now_dirs * 100) / total_dirs;
    if (percentage > max_percentage)
    SummaryText = String.Format("Searched dirs {0} / Total dirs {1}", searched_until_now_dirs, total_dirs);
    max_percentage = percentage;
    backgroundWorker1.ReportProgress(percentage, SummaryText);
    percentage = (searched_until_now_dirs * 100) / total_dirs;
    if (percentage > max_percentage)
    SummaryText = String.Format("Searched dirs {0} / Total dirs {1}", searched_until_now_dirs, total_dirs);
    max_percentage = percentage;
    backgroundWorker1.ReportProgress(percentage, SummaryText);
    foreach (var file in files)
    TreeNode file_tree_node = new TreeNode(file.Name);
    file_tree_node.Tag = "file";
    directoryNode.Nodes.Add(file_tree_node);
    numberOfFiles.Add(file.FullPath);
    return directoryNode;
    The line i'm using to Tag is:
    file_tree_node.Tag = "file";
    So i know what is "file" then i make a simple check if the Tag is not null then i know it's a "file" if it's null then it's directory.
    For example this is how i'm checking if it's file or directory after getting all the content from my ftp server:
    if (treeViewMS1.SelectedNode.Tag != null)
    string s = (string)treeViewMS1.SelectedNode.Tag;
    if (s == "file")
    file = false;
    DeleteFile(treeViewMS1.SelectedNode.FullPath, file);
    else
    RemoveDirectoriesRecursive(treeViewMS1.SelectedNode, treeViewMS1.SelectedNode.FullPath);
    I also update in real time when getting the content of the ftp server xml file on my hard disk with the treeView structure information so when i'm running the program each time it will load the treeView structure with all directories and files.
    This is the class of the xml file:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Xml;
    using System.Windows.Forms;
    namespace FTP_ProgressBar
    class TreeViewXmlPopulation
    // Xml tag for node, e.g. 'node' in case of <node></node>
    private const string XmlNodeTag = "node";
    // Xml attributes for node e.g. <node text="Asia" tag=""
    // imageindex="1"></node>
    private const string XmlNodeTextAtt = "text";
    private const string XmlNodeTagAtt = "tag";
    private const string XmlNodeImageIndexAtt = "imageindex";
    public static void DeserializeTreeView(TreeView treeView, string fileName)
    XmlTextReader reader = null;
    try
    // disabling re-drawing of treeview till all nodes are added
    treeView.BeginUpdate();
    reader = new XmlTextReader(fileName);
    TreeNode parentNode = null;
    while (reader.Read())
    if (reader.NodeType == XmlNodeType.Element)
    if (reader.Name == XmlNodeTag)
    TreeNode newNode = new TreeNode();
    bool isEmptyElement = reader.IsEmptyElement;
    // loading node attributes
    int attributeCount = reader.AttributeCount;
    if (attributeCount > 0)
    for (int i = 0; i < attributeCount; i++)
    reader.MoveToAttribute(i);
    SetAttributeValue(newNode,
    reader.Name, reader.Value);
    // add new node to Parent Node or TreeView
    if (parentNode != null)
    parentNode.Nodes.Add(newNode);
    else
    treeView.Nodes.Add(newNode);
    // making current node 'ParentNode' if its not empty
    if (!isEmptyElement)
    parentNode = newNode;
    // moving up to in TreeView if end tag is encountered
    else if (reader.NodeType == XmlNodeType.EndElement)
    if (reader.Name == XmlNodeTag)
    parentNode = parentNode.Parent;
    else if (reader.NodeType == XmlNodeType.XmlDeclaration)
    //Ignore Xml Declaration
    else if (reader.NodeType == XmlNodeType.None)
    return;
    else if (reader.NodeType == XmlNodeType.Text)
    parentNode.Nodes.Add(reader.Value);
    finally
    // enabling redrawing of treeview after all nodes are added
    treeView.EndUpdate();
    reader.Close();
    /// <span class="code-SummaryComment"><summary>
    /// Used by Deserialize method for setting properties of
    /// TreeNode from xml node attributes
    /// <span class="code-SummaryComment"></summary>
    private static void SetAttributeValue(TreeNode node,
    string propertyName, string value)
    if (propertyName == XmlNodeTextAtt)
    node.Text = value;
    else if (propertyName == XmlNodeImageIndexAtt)
    node.ImageIndex = int.Parse(value);
    else if (propertyName == XmlNodeTagAtt)
    node.Tag = value;
    public static void SerializeTreeView(TreeView treeView, string fileName)
    XmlTextWriter textWriter = new XmlTextWriter(fileName,
    System.Text.Encoding.ASCII);
    // writing the xml declaration tag
    textWriter.WriteStartDocument();
    //textWriter.WriteRaw("\r\n");
    // writing the main tag that encloses all node tags
    textWriter.WriteStartElement("TreeView");
    // save the nodes, recursive method
    SaveNodes(treeView.Nodes, textWriter);
    textWriter.WriteEndElement();
    textWriter.Close();
    private static void SaveNodes(TreeNodeCollection nodesCollection,
    XmlTextWriter textWriter)
    for (int i = 0; i < nodesCollection.Count; i++)
    TreeNode node = nodesCollection[i];
    textWriter.WriteStartElement(XmlNodeTag);
    textWriter.WriteAttributeString(XmlNodeTextAtt,
    node.Text);
    textWriter.WriteAttributeString(
    XmlNodeImageIndexAtt, node.ImageIndex.ToString());
    if (node.Tag != null)
    textWriter.WriteAttributeString(XmlNodeTagAtt,
    node.Tag.ToString());
    // add other node properties to serialize here
    if (node.Nodes.Count > 0)
    SaveNodes(node.Nodes, textWriter);
    textWriter.WriteEndElement();
    And this is how i'm using the class this method i'm calling it inside the CreateDirectoryNode and i'm updating the treeView in real time when getting the ftp content from the server i build the treeView structure in real time.
    DateTime last_update;
    private void UpdateList(TreeNode tn_rt)
    TimeSpan ts = DateTime.Now - last_update;
    if (ts.TotalMilliseconds > 200)
    last_update = DateTime.Now;
    treeViewMS1.BeginUpdate();
    treeViewMS1.Nodes.Clear();
    treeViewMS1.Nodes.Add(tn_rt);
    TreeViewXmlPopulation.SerializeTreeView(treeViewMS1, @"c:\XmlFile\Original.xml");
    ExpandToLevel(treeViewMS1.Nodes, 1);
    treeViewMS1.EndUpdate();
    And when i'm running the program again in the constructor i'm doing:
    if (File.Exists(@"c:\XmlFile\Original.xml"))
    TreeViewXmlPopulation.DeserializeTreeView(treeViewMS1, @"c:\XmlFile\Original.xml");
    My question is how can i update the xml file in real time like i'm doing now but also with the Tag property so next time i will run the program and will not get the content from the ftp i will know in the treeView what is file and what is directory.
    The problem is that now if i will run the program the Tag property is null. I must get the ftp content from the server each time.
    But i want that withoutout getting the ftp content from server to Tag each file as file in the treeView structure.
    So what i need is somehow where i;m Tagging "file" or maybe when updating the treeView also to add something to the xml file so when i will run the progrma again and read back the xml file it will also Tag the files in the treeView.

    Hi
    Chocolade1972,
    Your case related to Winform Data Controls, So i will move your thread to Windows Forms> Windows
    Forms Data Controls and Databinding  forum for better support.
    Best regards,
    Kristin
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • How can we get  tag of XML file using SAX

    Hi ,
    I'm parsing one SAX parser , I'have almost done this parsing. i have faced problem for one case, i'e how can we get tag from XML file using SAX parser?
    XML file is
    <DFProperties>
    <AccessType>
    <Get/>
    </AccessType> <Description>
    gdhhd
    </Description>
    <DFFormat>
    <chr/>
    </DFFormat>
    <Scope>
    <Permanent/>
    </Scope>
    <DFTitle>gsgd</DFTitle>
    <DFType>
    <MIME>text/plain</MIME>
    </DFType>
    </DFProperties>
    I want out like GET and Permanent... means this one tag which is present inside of another tag.
    Handler class like
    public void startElement(String namespaceURI, String localName,
                   String qName, Attributes atts) throws SAXException {
    if(_ACCESSTYPE.equals(localName)){
                   accessTypeElement=ACCESSTYPE;
    public void characters(char[] ch, int start, int length)
                   throws SAXException {
    if (_ACCESSTYPE.equals(_accessTypeElement)) {
                   String strValue = new String(ch, start, length);
                   System.out.println("Accestype-----------------------------> " + strValue);
                   //System.out.println(" " + strValue);
    public void endElement(String namespaceURI, String localName, String qName)
                   throws SAXException {
    if (_ACCESSTYPE.equals(localName)) {
                   _accessTypeElement = "";
    . please any body help me

    Hi ,
    I have one problem,Please help me.
    1. How can I'll identify where exactly my Node is ended,means how how can we find corresponding nodename? in partcular place
    <Node> .............starttag1
    <NodeName>Test</NodeName>
    <Node>................starttag2
    <nodeName>test1</NodeName>
    </Node>..................endtag2
    <Node>.....................starttag3
    <NodeName><NodeName>
    <Node> .........................starttag4
    <NodeName>test4</NodeName>
    </Node>.......enddtag4
    </Node>...........end tag3
    </Node>............endtag1
    my code is below
    private final String _NODENAME = "NodeName";
    private final String _NODE = "Node";
    private String _nodeElement = "";
         private String _NodeNameElement = "";
    public void startElement(String namespaceURI, String localName,
                   String qName, Attributes atts) throws SAXException {
    if (_NODENAME.equals(localName)) {
                   NodeNameElement = NODENAME;
    if(_NODE.equals(localName)){
         System.out.println("start");
         if (_NODENAME.equals(localName)) {
                   NodeNameElement = NODENAME;
    public void characters(char[] ch, int start, int length)
                   throws SAXException {
    if (_NODENAME.equals(_NodeNameElement)) {
                   String strValue = new String(ch, start, length);
                   String sttt=strValue;
                   System.out.println("NODENAME: ************* " + strValue);
    if(_NODE.equals(_nodeElement)){
                   if (_NODENAME.equals(_NodeNameElement)) {
                        String strValue = new String(ch, start, length);
                        String sttt=strValue;
                        System.out.println("nodevalue********** " + strValue);
    public void endElement(String namespaceURI, String localName, String qName)
                   throws SAXException {
    if (_NODENAME.equals(localName)) {
                   _NodeNameElement = "";
    if(_NODE.equals(localName)){
                   System.out.println("NODENAME: %%%%%%%%%");
    please help me. How can I figure node ending for particular nodename

  • How to obtain the encoding scheme for an XML document

    How do you go about reading the encoding scheme for an XML document??
    More specifically how do I read the line:
    <?xml version="1.0" encoding="UTF-8"?>
    (Using Win32 C++ XML Parser 2.0.3 as SAX).
    null

    I work mostly with the Java versions of the parser so you'll have to make the translation to C++. As far as I know, you can't use the SAX API to access to the encoding.
    You need to use the DOM along with Oracle's extension to the basic DOM functionality. Oracle's package, oracle.xml.parser.v2 defines a class which implements the Document interface called XMLDocument. This class has a method, getEncoding(), which returns the encoding. You would use the method in getDocument() in the Parser base class inherited by DOMParser to retrive the XMLDocument.
    Jeff

  • Sax Parser for loading XML file

    We have a requirment by which we need to load huge XMl file in our DB everyday.
    THe XML file format is like --
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <emp>
    <ename>aaa</ename>
    <sal>3000</sal>
    </emp>
    <emp>
    <ename>bbb</ename>
    <sal>5000</sal>
    </emp>
    <dept>
    <name>productiong</name>
    <location>USA</location>
    <dept>
    I have written XMl SAX parser to load this file into DB -
    import org.xml.sax.helpers.DefaultHandler;
    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;
    import org.xml.sax.XMLReader;
    import org.xml.sax.InputSource;
    import org.xml.sax.SAXException;
    import org.xml.sax.Attributes;
    import java.io.*;
    import java.sql.*;
    import oracle.jdbc.driver.*;
    import oracle.xml.sql.*;
    import oracle.sql.*;
    import oracle.jdbc.*;
    import oracle.jdbc.pool.OracleDataSource;
    import java.util.*;
    public class test extends DefaultHandler
    String thisElement="";
    String table_name="";
    String table_name_2="";
    String sql="";
    String value_clause="";
    StringBuffer value_clauseBuffer;
    String Insert_sql="";
    int flag;
    String columnNames="";
    String questionmarks="";
    static String conStr = "jdbc:oracle:thin:@abcd1234:1521:dss501";
    static Connection conn;
    String arrayValues[] = new String[30];
    int j = 0;
    int emptyElementFlag = 0;
    public SurveyReader() throws SQLException, FileNotFoundException, IOException{
    DBConnect("username", "password");
    public static void DBConnect(String username, String password)
    throws SQLException, FileNotFoundException, IOException {
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    conn = DriverManager.getConnection(conStr, username, password);
    conn.setAutoCommit(true);
    public void startElement(String namespaceURI, String localName,
    String qName, Attributes atts) throws SAXException {
    thisElement = qName;
    if (thisElement!=table_name){
    columnNames = columnNames + ", " + qName;
    questionmarks = questionmarks +", " + "?";
    emptyElementFlag =0;
    public void characters(char[] ch, int start, int length)
    throws SAXException {
    if (thisElement !="root"){     
    if ((length == 0) && (thisElement !="") ){
    table_name = thisElement;
    sql = " Insert into "+ table_name +"(";
    value_clause="";
    value_clauseBuffer =null;
    columnNames = "";
    questionmarks ="";
    j =0;
    if ((length != 0) && (thisElement!="") && (thisElement!=table_name)){
    emptyElementFlag = 1;
    String s = new String(ch, start, length);
    String newString = s.replaceAll("'", "''");
    // String newString = s;
    if (value_clauseBuffer== null){
    value_clauseBuffer = new StringBuffer(newString);
    else{
    value_clauseBuffer.append(newString);
    public void endElement(String namespaceURI, String localName, String qName)
    throws SAXException {
    if (thisElement !="root"){
    if ((!(value_clauseBuffer == null))||((emptyElementFlag ==0) && (qName !=table_name))) {
    try{
    //value_clauseBuffer.append("', '");
    if (value_clauseBuffer == null){
    arrayValues[j]="";
    else{
    arrayValues[j]=""+value_clauseBuffer;
    j = j+1;
    value_clauseBuffer = null;
    emptyElementFlag =0;
    }catch(Exception e){
    System.err.println(e);
    System.exit(2);
    if (qName == table_name){
    if (!(value_clauseBuffer == null)){
    value_clause = "'"+value_clauseBuffer;
    columnNames =columnNames.substring(1, columnNames.length());
    int paramNumber = j;
    questionmarks =questionmarks.substring(1, questionmarks.length());
    sql = sql + columnNames + " ) values (" + questionmarks +"); ";
    Insert_sql=Insert_sql + sql;
    sql = "Begin "+sql + " End; ";
         try{
         PreparedStatement pstat = conn.prepareStatement(sql);
    for (int i=0; i<=j-1; i++ ){
    int k = i+1;
    pstat.setObject(k, arrayValues);
         ResultSet rset = pstat.executeQuery();
         rset.close();
         pstat.close();
    catch (Exception e) {
    System.err.println(e);
    System.out.print("sql " + sql);
    System.exit(1);
    table_name_2 = table_name;
    thisElement = "";
    public static void main (String args[]) {
    XMLReader xmlReader = null;
    System.out.println("Time " + new java.util.Date());
    try {
    SAXParserFactory spfactory = SAXParserFactory.newInstance();
    spfactory.setValidating(false);
    SAXParser saxParser = spfactory.newSAXParser();
    xmlReader = saxParser.getXMLReader();
    xmlReader.setContentHandler(new SurveyReader());
    xmlReader.setErrorHandler(new SurveyReader());
    InputSource source = new InputSource("short.xml");
    xmlReader.parse(source);
    conn.close();
    } catch (Exception e) {
    System.err.println(e);
    System.exit(1);
    This parser takes 2 hours to laod file of size around 8MB.
    ANy suggestions on improving performance of the parser.
    ANy other approach I should be taking to load this file into DB.
    We are using ORacle 9i DB with Character set UTF 8.
    Thanks!

    String buf = (new String(ch, start, length)).trim();
    if (thisElement != "root"){   
    if ((buf.length() == 0) && (thisElement !="") ){
    It run ok!
    Thanks 58871!
    Now, i want to export oracle table to xml file like :
    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <emp>
    <ename>aaa</ename>
    <sal>3000</sal>
    </emp>
    <emp>
    <ename>bbb</ename>
    <sal>5000</sal>
    </emp>
    </root>
    Can SAX export to xml format?
    Pham Thanh Tung

  • Can't import Final Cut XML file into Premiere Pro CS4 MAC

    Hello,  I'm traying to import FCP Studio 2 XML file into Adobe Premiere Pro CS4for the purpose of then color correcting the project in Adobe After Effects.
    I followed all the rules of exporting XML files from my Final Cut Studio 2 timeline, then closed FCP, opened Adobe Premiere CS4 and when I go to Import option XML file is greyed out.  I can't select the XML file...
    Could  someone tell me what I'm doing wrong?  Thank you so much

    I'll just say that the high end AE users list I frequent suggests that the more common workflow is to bring AE to FCP for color correction.  Isn't that one of FCP's strengths?
    Also, to the extent that you want to process an FCP project in AE, look for the best way to bring it directly, not through Premiere.  Ask in the AE forum what opinions people have.  Mac and PC types use AE, but my impression is that only a small proportion of those users use Premiere.

Maybe you are looking for

  • Excise Invoice:difference in duty calculation while calculating ECS& SECS

    Hi All, There is a difference in duty calculations in excise Invoice, (1) which is generated automatically while creating billing doc manually ) &  (2) generating billing doc & excise invoice in PRG.In PRG Billing doc is getting generated by BAPI 'BA

  • Can someone please settle an argument?

    I'm in the UK using an iPhone 4 on O2 PAYG. Since last week, I have had NO service from O2. A number of phone calls to O2 (8 intotal so far), indicated that there was a issue with the transmitter in my local area. This was told to me by 3 differant O

  • Safari closes down everytime i try to open additional tab.

    Everytime i try to open a additional tab in safari, the app shuts down and im back at my homescreen. I can only have one tab open. Ive tried to restart, and uppdate the ipad. Ive even reset to its factory settings. But the problem remains. Any soluti

  • VB code for connecting to SAP,using some standard bapi to get data to VB

    Do not use capital letters in the subject line, please see rules of engagement before you post any thread in the forum Hi , Can anyone plz give code of VB to connect with SAP and Getting data from SAP table using RFC . Thks in Advance. Subject line e

  • International net access iPad 2

    What's the best and cheapest way to surf the net using my iPad 2 in the Philippines? Can I prepay something in the US or is it best to inquire in the Philippines? Can I use a sim?