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
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
- Stylus Studio Technical Forum (14621)
-> + Specifying EDI Delimiters (2)
-> + Defining 'connection string' f... (9)
-> + Help Programatically Convertin... (2)
-> + Using adapter URL in pipeline. (7)
-> + How to enable EDI functionalit... (2)
-> + Unable to open file with '%2F'... (2)
-> + How to create a dependency gra... (2)
-> + If block (2)
-> + Mapping multiple files within ... (7)
-> + StylusStudio vs Altova vs BizT... (4)
-> + Command line execution (7)
-> + CSS and Styling in X15 (2)
-> + Ignores debug breakpoints in X... (5)
-> + Cursor dissapearing in Text vi... (5)
-> + compile error xquery java styl... (3)
-> + Stylus Studio Setup: Applicati... (10)
-> + Stylus StudioX15 Crashing whe... (4)
-> + Upgrade Stylus 14 to 15 (2)
-> + ACE Broker Download v2.5 (2)
-> + Help creating custom convertor (7)
-> + Problem saving Documentation (5)
-> + Registry keys for Stylus x15 (8)
-> + How to add a value when conver... (10)
-> + Stylus Studio Pro & Ent X15r1 ... (2)
-> + You need to install Java 2 SDK... (4)
-> - How to disable automatic and m... (1)
-> + Does Stylus Studio / DataDirec... (4)
-> + Stylus Studio fails with 'The ... (12)
-> + Struzzo.exe side by side confi... (7)
-> + unable to use converter (5)
-> + How to enable XSD 1.1 for Saxo... (3)
-> + XSD v.1.1 validation and Xerce... (8)
-> + FATAL ERROR: unsupported XML v... (2)
-> + Java Runtime Environment boot ... (2)
-> + Associate XML with Schema (3)
-> + JVM not found in stylus studio... (2)
-> + Change newline to Linux (on Wi... (4)
-> + Indent XML Tags only partially... (2)
-> + dealing with invalid character... (2)
-> + Unable to call Webservice thro... (2)
-> + XML to CSV Video create csv te... (5)
-> + Try to test this product, (2)
-> + How to migrate license? (3)
-> - kepp your settings on X15 upda... (1)
-> + No Topic (2)
-> + XSD validation scalability iss... (2)
-> + Installing documentation in ai... (4)
-> + Stylus Studio is currently una... (2)
-> + Change from SS Pro 2011 to SS ... (2)
-> + Problem with pipeline function... (2)
-> + Min and Max Occurs for Choices... (2)
-> + XSLT without Preview window ou... (3)
-> + How to achieve this transforma... (2)
-> + Licence Authentication Failed (2)
-> - using Oracle V2 for validation... (1)
-> + Steps needed to execute standa... (2)
-> + xsi:noNamespaceSchemaLocation ... (8)
-> + Using Saxon 9.4 and integrated... (4)
-> + "net XML Parser (5)
-> + How to undo in Stylus Studio X... (2)
-> + .RENAME section not loaded cor... (3)
-> + Stylus StudioŽ X14 Release 2 X... (2)
-> + The JVM initialization failed ... (2)
-> + XML schema to XML does not wor... (4)
-> + missing ExtraLines (3)
-> + EDI validation tool (2)
-> + Registering Custom Tool from c... (5)
-> + Setting Default XML Validation... (2)
-> + Project Directory in Custom Do... (3)
-> + Problem with Saxon 9.4.0.4 AVT... (5)
-> + XML To HL7 (3)
-> + Siblings not repeating when mi... (7)
-> + Nesting of records from fixed ... (5)
-> + Licensing (3)
-> + CSV set up to support predefin... (10)
-> + Scripting conversion (2)
-> + Edi/Euritmo automatic conversi... (4)
-> + Have new stylesheet automatica... (3)
-> + Text file to CSV to xml (9)
-> + EDIFACT to XML (4)
-> + About Stylus Studio... dialog ... (5)
-> + Set Stylus as default editor f... (3)
-> + CSV to XML (11)
-> + Indent XML tags no longer work... (9)
-> + XSL code completion moe like o... (3)
-> + xsl:fo - unable to use any fon... (5)
-> + Bug when calling a ms script f... (13)
-> - url schema (1)
-> + Quickbooks invoice to XML (4)
-> + X14 locks up, Unresponsive (4)
-> + Fields missing from middle of ... (2)
-> + Cannot install trial (2)
-> + Text File with Page breaks - H... (8)
-> + Complex transactional CSV mapp... (2)
-> + XML Report (2)
-> - Create an XML feed for videos (1)
-> + word doc (2)
-> + Saving to a UNC path (7)
-> + sharing violation (3)
-> + Convert XML to XML (6)
-- Previous [181-200] [201-220] [221-240] Next
+ Website Feedback (249)
+ XSLT Help and Discussion (7625)
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
Steve CoxSubject: Pulling in dynamic data from PHP for Xquery
Author: Steve Cox
Date: 25 Nov 2005 06:48 AM
Hi,

Just atarted playingw thi Stylus Studio - very impressed. I'm using XML and Xqueries to process old database tables into a new CRM system based on MYSQL. One thing I need it to do in the migration/transformation is to attach a guid record to each row element - effectively the new ID for each record going back into the final table.

Long story, but it's best to do it at this poaint as the IDs will be referecnes in other tables that will be gererated by various xqueries along the way.

The guid generator is a specific bit of PHP coding using the CRM systems included PHP libraries. I can generate the list either using a standard command line call ("c:\php\php.exe -f c:\test\guid.php") or I can generate it via a web page (eg. http;//localhost/guid.php). This latter php web page can either just present the guid code eg.

805021cb-b9df-1ba7-f269-4386f8c3e965

or I can format it to generate XML. eg:

<records>
<guid>805021cb-b9df-1ba7-f269-4386f8c3e965</guid>
</records>

One guid is generated with each call.

Because of the environments and data sources, I can't really tag the old database records with a guid, so they need to be tagged onto each new row for each new table when they are created. Obviously, it makes sense to do this in the xqueries transforming the data but I can't see how to do this.

I've tried setting up the source document in the xqueries mapper but it only ever generates one guid that is used for all records - it looks like the php page is only 'fired' once and the result kept statically. Is there a way to dynamically run the page and join the resultant guid for each row in an XML document?

Any thoughts on how to do this; if I'm approaching the whole thing incorrectly; alternative methods etc?

Thanks,
Steve

Postnext
(Deleted User) Subject: Pulling in dynamic data from PHP for Xquery
Author: (Deleted User)
Date: 28 Nov 2005 09:09 AM
Steve,
This is a large complicated post; please tell me if I understand the question correctly. I think you have set a default input URL in the xquery scenario (http://localhost/guid.php ???). In the xquery, you read from this input URL several times, but it only gets opened and read once, so you only get one guid.

If this is what you are doing, then it is behaving as designed. Stylus opens the default input URL exactly once, and builds some type of DOM (depending on which xquery processor is being used.) Then the xquery processor accesses that DOM as many times as needed.

You might try using the doc function: doc("http://localhost/guid.php"). Depending on which xquery processor you use, it MIGHT open and read the URL each time it us used.

Which processor are you using? Is this something which will always be run from inside Stylus Studio, or do you plan to deploy it and use a separate processor? Knowing the environment will make it easier to suggest an appropriate solution.

Clyde

Postnext
Steve CoxSubject: Pulling in dynamic data from PHP for Xquery
Author: Steve Cox
Date: 28 Nov 2005 09:26 AM
Hi,

Yes - that's pretty much the issue I have - what I'm effectivily after is my own xquery version of the xslt generate-id with my own id specification. As this spec is from a PHP script, the only option I see is to join it against the php page that generates this id.

As for the processor, I'm not sure yet. I was probably going to go for the one built into stylusstudio but can you recommend one that might achieve the above?

Postnext
(Deleted User) Subject: Pulling in dynamic data from PHP for Xquery
Author: (Deleted User)
Date: 28 Nov 2005 10:12 AM
Steve,

If you are planning to use our built-in processor, you could write a simple java extension function to generate the guid.

If, on the other hand, you want to investigate other processors, you have a couple of choices. Open the scenario dialog for your xquery and click on the Processor tab. Select the Saxon processor, and then see if it satisfied your needs. The non-validating version of that processor is available at no charge and would be a fine choice if it does what you need.

If you have other issues relating to optimized database access, you could consider the DDXQ xquery processor. See the video tutorial at:

http://www.stylusstudio.com/videos/ddxqdemo/datadirectxquery.html

Good luck,
Clyde

Postnext
(Deleted User) Subject: Pulling in dynamic data from PHP for Xquery
Author: (Deleted User)
Date: 29 Nov 2005 02:43 PM
Steve,

Let me add something to that last reply.

It seems that the doc(...) function is required to be stable, that is if you execute it 2 times with the same argument, it will always return the same nodeset, that is, you cant get your guid without doing something clever. Some possibilities:
1) each time you call doc, modify the url by adding something unique (the last guid?) as an unused parameter &unused=blah. This has the disadvantage of clogging your memory with an arbitrary number of (small) document trees.
2) If you are using the Stylus Studio builtin processor, it is pretty easy to write a java extension function in which you can do almost anything.
3) If you are using the Saxon processor, there is a function
discard-document(...) which does just what you want. Use it like this:

let $guid := saxon:discard-document(doc('http:...'))/records/guid

Each time you call it that way, it will fetch the http page anew.

Clyde

Posttop
Steve CoxSubject: Pulling in dynamic data from PHP for Xquery
Author: Steve Cox
Date: 01 Dec 2005 04:34 AM
Originally Posted: 01 Dec 2005 04:35 AM
Thanks,

I'll giver those a go

   
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.