Jump to content

DSO XML result "deprecated" in FM 7


Marcelo

This topic is 6996 days old. Please don't post here. Open a new topic instead.

Recommended Posts

I am just switching over to FM7, I tried exporting some fields using the DSO XML result, and I got the following error message:

"The XML page cannot be displayed

Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.

Reference to undeclared namespace prefix: 'S'. Error processing resource 'file:///T:/DIDO/Temporary/XMLExportFromFM7ExportF...

xml version="1.0" encoding="UTF-8" ?!-- This grammar has been deprecated - use FMPXMLRESULT instead --F..."

The XML result does not include the name of the fields, like the DSO result does, instead, it uses "Col" and "Data".

Am I doing something wrong or is the DSO result not supported by FM7 as it is by FM6? I am not using an XSL style sheet, I am doing a simple export.

Thanks!!!

Marcelo.

Link to comment
Share on other sites

I am just switching over to FM7, I tried exporting some fields using the DSO XML result, and I got the following error message:

"The XML page cannot be displayed

Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.

Reference to undeclared namespace prefix: 'S'. Error processing resource 'file:///T:/DIDO/Temporary/XMLExportFromFM7ExportF...

xml version="1.0" encoding="UTF-8" ?!-- This grammar has been deprecated - use FMPXMLRESULT instead --F..."

The XML result does not include the name of the fields, like the DSO result does, instead, it uses "Col" and "Data".

Am I doing something wrong or is the DSO result not supported by FM7 as it is by FM6? I am not using an XSL style sheet, I am doing a simple export.

Thanks!!!

Marcelo.

Link to comment
Share on other sites

I am just switching over to FM7, I tried exporting some fields using the DSO XML result, and I got the following error message:

"The XML page cannot be displayed

Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.

Reference to undeclared namespace prefix: 'S'. Error processing resource 'file:///T:/DIDO/Temporary/XMLExportFromFM7ExportF...

xml version="1.0" encoding="UTF-8" ?!-- This grammar has been deprecated - use FMPXMLRESULT instead --F..."

The XML result does not include the name of the fields, like the DSO result does, instead, it uses "Col" and "Data".

Am I doing something wrong or is the DSO result not supported by FM7 as it is by FM6? I am not using an XSL style sheet, I am doing a simple export.

Thanks!!!

Marcelo.

Link to comment
Share on other sites

Can you be more specific on "cannot be displayed"? Where are you trying to display this XML? The "click the Refresh button" suggests that you are using a browser. Are you trying to web publish?

Yes, you can EXPORT with FMPDSORESULT and you do get the comment telling you that the grammar is deprecated.

Your error suggests that you *are* using an XSL stylesheet. Check your export dialog.

Link to comment
Share on other sites

Can you be more specific on "cannot be displayed"? Where are you trying to display this XML? The "click the Refresh button" suggests that you are using a browser. Are you trying to web publish?

Yes, you can EXPORT with FMPDSORESULT and you do get the comment telling you that the grammar is deprecated.

Your error suggests that you *are* using an XSL stylesheet. Check your export dialog.

Link to comment
Share on other sites

Can you be more specific on "cannot be displayed"? Where are you trying to display this XML? The "click the Refresh button" suggests that you are using a browser. Are you trying to web publish?

Yes, you can EXPORT with FMPDSORESULT and you do get the comment telling you that the grammar is deprecated.

Your error suggests that you *are* using an XSL stylesheet. Check your export dialog.

Link to comment
Share on other sites

Yes, I am opening the XML file with a web browser. I am not trying to publish, I just wanted to see what it looked like because I need to export the data to someone else who needs it to be in xml format, such that that there is a "field name tag" tied to each line of data. No, I am not using an XSL sheet when I export.

The person that I export the data to was able to open the DSO result export file and this is what it looked like:

_?xml version="1.0" encoding="utf-8"?_

_!-- This grammar has been deprecated - use FMPXMLRESULT instead --_

_FMPDSORESULT xmlns="http://www.filemaker.com/fmpdsoresult"_

_ERRORCODE_0_/ERRORCODE_

_DATABASE_DIDOdemo BasicData Recovered.fp7_/DATABASE_

_LAYOUT_MOPED2 Find User Interactive_/LAYOUT_

_ROW MODID="19" RECORDID="228091"_

_FullLocationCode_IL2Ia.aa.50525_/FullLocationCode_

_LRU_

_DATA_103_/DATA_

_/LRU_

_SoilType_

_DATA_Silty Clay Loam_/DATA_

_/SoilType_

I replaced the "<" and ">" symbols with the underscore so the "text" would show in this message (I don't understand how the xml format interacts with the format supported in this message box).

Anyways, "FullLocationCode" is a field in the database from which I am exporting the data, "LRU" and "SoilType" are related fields. He can import FullLocationCode data allright into his system because the data has the field name tied to it in the same line, but he can't import the values for the related fields, given their different format in the XML export. How can I export related fields in the format that "native" fields are exported?

Link to comment
Share on other sites

FileMaker exports the data the best it can. The fact that a relational database (with related tables) can be represented by an xml text file is an amazing feat. It is an intelligent and flexible export. Unfortunately, that means it cannot automatically produce the output you expect. Everyone is disappointed that they can't just set it up like a comma-delimited export and have it work. Comma-delimited could not do this at all. It's not smart enough, and would trip over multiple related records.

So, if you want a certain output, you have to build an xsl stylesheet to transform the default xml into what you want. There's different ways to do this. But for something like this, it's not hard to just build the elements manually, then get the data to fill them.

I suppose it could be done with DSORESULT. But, I'm using XMLRESULT. In this case neither would be that difficult. As you've noticed, DSO doesn't really help with related data, 'cause it falls back on just putting it in <DATA> tags; so does XMLRESULT.

I'm afraid it would be impossible to explain how all this works in even several pages (even if I could). If this is part of your business (which it apparently is, and will become more so in the future) you should get Beverly's book. It's main emphasis is on how to use XML with FileMaker, mostly for export & import.

You don't really specify exactly how the guy wants the xml data to look. I'm assuming he wants some kind of "container" around the transaction, the "location," the related records (you are supposed to have 1 "root" element). I simply added these in the right places in the xsl; but I didn't really know what to name them. It would help to see a sample of what exactly he wants; hopefully he knows :-]

Basic_XML_export.zip

Link to comment
Share on other sites

Regardless of using FMPXMLRESULT or FMPDSORESULT, your related fields will appear thus:

<fieldOrCOL>Name</fieldOrCOL>

<fieldOrCOL>

<DATA>phone</DATA>

<DATA>fax</DATA>

<DATA>email</DATA>

</fieldOrCOL>

EXAMPLE

--------------

This is a contact with 3 related Communication (portal) rows, made into a flat row:

Name, Comm::data (phone), Comm::data (fax), Comm::data (email) ...

You have to decide where the DATA fields (related) become fields in the flat row.

NOTICE that for every related PORTAL ROW, there is a DATA element. If you use more than one field from a related file, you'll get the same pattern for each field in the PORTAL ROW. That means, if you have 3 rows, you'll get 3 DATA elements everytime, even if not all the fields have content.

IF you want these related ROWs to appear as separate filelds, then you can use an XSLT to transform them. I do have examples in my book for various exports/imports. There may not be an example that directly works for you. You can download all the example files http://www.moonbow.com/xml/ for FREE!

Link to comment
Share on other sites

This topic is 6996 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.