XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
chris dSubject: using the .conv file
Author: chris d
Date: 05 Sep 2005 06:23 AM
hi

i'm using the convert csv to xml from the file / the document wizard to convert a spreadsheet to an xml document. This allows me create an xml file which then has to be edited. This editing involves turning a couple of attributes to elements and putting in closing tags. How do i save the convert to xml map as a convert file - which would involve converting future xml files to the same elements / attributes and completing the same find / replace commands which i currently have to do to the converted xml file ? Is this possible ?

cheers

chris

Postnext
Ivan PedruzziSubject: using the .conv file
Author: Ivan Pedruzzi
Date: 05 Sep 2005 03:12 PM
Hi Chris,

Write a XSLT using the converter URL as input

Hope this helps
Ivan Pedruzzi
Stylus Studio Team

Postnext
chris dSubject: using the .conv file
Author: chris d
Date: 06 Sep 2005 06:09 AM
thanks ivan.

can you expand upon this ? what do you mean by the converter URL ? do you mean the location of the converter file ?

what function in xslt would i use to do this ?

cheers

chris

Postnext
Tony LavinioSubject: using the .conv file
Author: Tony Lavinio
Date: 06 Sep 2005 09:32 AM
Once you have saved the .conv file, you can use it's output as input
to XSLT which can then do the transformations.

To do this, use the following syntax:

adapter:whatever.conv?file:///original-source-file

So if your original file were http://myserver/myfile.csv, you would do
and your converter were saved as myfixer.conv, you'd use this as the
input to your XSLT or XQuery:

adapter:myfixer.conv?http://myserver/myfile.csv

You can then use this same .conv file to map any file that uses the
same structure as the original myfile.csv.

Postnext
chris dSubject: using the .conv file
Author: chris d
Date: 06 Sep 2005 12:16 PM
thanks, i think i get it.

also where is the file that the document wizard uses to convert the csv to xml ? is it an xslt file ?

is it possible to write a generic xslt that will access for example an odbc driver and convert dbase fields to xml ? is this covered in the ado to xml section ?

finally, i have been supplied with files which contain characters in utf-8 but wish to convert them to us-ascii, but when i use the conversion process as within stylus studio and specify us-ascii,the xml document it creates specifies utf-8. Is this because the conversion process recognises the characters as not being us-ascii compliant ? the problem then is the csv gives me parsing errors which are resolved when i strip out the offending characters.

thanks for the assistance

cheers

chris

Postnext
Tony LavinioSubject: using the .conv file
Author: Tony Lavinio
Date: 06 Sep 2005 05:14 PM
Q1: also where is the file that the document wizard uses to convert the csv to xml ? is it an xslt file ?

A1: To go from .csv to .xml, the definitions live in a .conv file which
you create with the Convert-to-XML tool. There is an engine inside of
Stylus (which also can be licensed to run outside of Stylus) which
takes the .csv (or whatever) and the .conv and produces the .xml.

For a video tutorial of this, see the first video on page
http://www.stylusstudio.com/learn_convert_to_xml.html#converttoxml

Q2: is it possible to write a generic xslt that will access for example an odbc driver and convert dbase fields to xml ? is this covered in the ado to xml section ?

A2: ODBC is a different beast; it returns data in response to SQL/XML queries. For that, use the File|New|DB to XML Data Source option.
Again, you can save that SQL/XML, and use it to connect from ODBC
or JDBC to XSLT to XQuery. Except instead of a .conv file, you've
got an .rdbxml file.

For video tutorials on this, see
http://www.stylusstudio.com/learn_sql_xml.html#db_to_xml_1
and http://www.stylusstudio.com/learn_sql_xml.html#db_to_xml_2

Q3: finally, i have been supplied with files which contain characters in utf-8 but wish to convert them to us-ascii, but when i use the conversion process as within stylus studio and specify us-ascii,the xml document it creates specifies utf-8. Is this because the conversion process recognises the characters as not being us-ascii compliant ? the problem then is the csv gives me parsing errors which are resolved when i strip out the offending characters.

A3: Where are you specifying this? With Convert-to-XML, you'd specify
the input encoding as UTF-8, and the output encoding as US-ASCII. That
should do what you want. It's possible the input documents aren't
really UTF-8, but to be sure we'd be happy to take a look at one for
you. Just attach it with the little "Attach File" checkbox on the
reply-to-forum form.

thanks for the assistance

cheers

chris

Postnext
chris dSubject: using the .conv file
Author: chris d
Date: 08 Sep 2005 06:41 AM
thanks i managed to get the utf-8 etc to work using the convert to xml option.

I have couple more questions though.

is it possible to automate replace commands - in the convert to xml ? for example i want the following elements to be replaced, under which properties would input this ?

replace <id> with id="
</id> with "
<action> with action="

how do i sepcify the column headings in the csv file to be attribute rather than field names ?

is it possible to represent random characters within an element when using the replace command ? wildcard doesnt seem to work. for example i wish to replace all email addresses - <email>j.doe@hot.com</email> with email="*"

thanks for the assistance

chris

Posttop
Tony LavinioSubject: using the .conv file
Author: Tony Lavinio
Date: 08 Sep 2005 09:00 AM
Q1: is it possible to automate replace commands - in the convert to xml ? for example i want the following elements to be replaced, under which properties would input this ?

replace <id> with id="
</id> with "
<action> with action="

A1: You can't replace directly in the Convert-to-XML module, but you
can use the output from C2XML as input to XSLT or XQuery, which can
then do anything you want. Convert-to-XML does just that -- it returns
the 'XML equivalent' of the input file. XSLT and XQuery are used for
where they are best suited, for the transformation step. How to do
that was discussed earlier in this thread.

Q2: how do i sepcify the column headings in the csv file to be attribute rather than field names ?

A2: One of the properties of a field is whether it is an element or
an attribute. Look closely, you will see a property entitled
"XML Output Form".

Q3: is it possible to represent random characters within an element when using the replace command ? wildcard doesnt seem to work. for example i wish to replace all email addresses - <email>j.doe@hot.com</email> with email="*"

A3: That would be done by the consumer of the .conv output, which
would be the XSLT or XQuery program. The idea is you set up the .conv
program to get close to what you want, and then the XSLT takes and
does the cleanup. And since you are supplying the input URL parameter
of the XSLT with the name of the .conv file plus the name of the
source file, just running the XSLT (or XQuery) will run the
Convert-to-XML .conv file you'd already prepared automatically.

 
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.