Re: [svg-developers] Re: XForms in standalone SVG
That is very helpful thanks Jim, I had not realised that I could do that with ASV and IE...pretty cool. Unfortunately I only saw your email this morning and I have already taken what I learnt from the Text boxes done by Jan Klaas Kollhof and Holger Will and fixed the problems I was having with the Strayley form library. I will certainly be using your example in my next upgarde if the XForms/XBL/SVG option is still not mature. I am in the process of figuring out a way of showing the svg-developers what I have done to piece together my web app, but it may take a few weeks before I have completed all my testing, delivered it to the client and finalised things. Thanks again Steve - Original Message - From: Jim Ley [EMAIL PROTECTED] To: svg-developers@yahoogroups.com Sent: Saturday, June 11, 2005 8:09 PM Subject: [svg-developers] Re: XForms in standalone SVG Steve Harwin [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I have had a look at XForms in a standalone SVG 1.2 doc and finally got a simple test to work, the problem I face is that the rendering of the XForms components in a standalone SVG is controlled via SVG elements, ie you have to build the SVG equivalent of the input box and then use the new editable attribute on the text element to allow a user to modify the text and then in turn modify the XForms component via a prototype binding and JS. Mark Birbeck has already set up you a good example of how to use XForms and SVG in a player today, however there are other ways of doing forms if you're happy to go down the route of a single player, and those routes are using more mature technologies than XForms and the players are completely free, indeed they're likely to be already deployed - Internet Explorer and ASV. I've written up a quick way of how to do it at http://jibbering.com/discussion/svg-forms-explorer.1 complete with examples that use html forms: http://jibbering.com/discussion/example-svg-ie-forms.svg or even using the MS common controls: http://jibbering.com/discussion/example-svg-ie-common.svg . It's not an alternative to XForms, but native controls and mature technologies may well be better for now than being an early adopter of XForms, and having to learn all the new issues with it yourself, rather than the trusty google. Cheers, Jim. - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[svg-developers] Re: XForms in standalone SVG
Steve Harwin [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I have had a look at XForms in a standalone SVG 1.2 doc and finally got a simple test to work, the problem I face is that the rendering of the XForms components in a standalone SVG is controlled via SVG elements, ie you have to build the SVG equivalent of the input box and then use the new editable attribute on the text element to allow a user to modify the text and then in turn modify the XForms component via a prototype binding and JS. Mark Birbeck has already set up you a good example of how to use XForms and SVG in a player today, however there are other ways of doing forms if you're happy to go down the route of a single player, and those routes are using more mature technologies than XForms and the players are completely free, indeed they're likely to be already deployed - Internet Explorer and ASV. I've written up a quick way of how to do it at http://jibbering.com/discussion/svg-forms-explorer.1 complete with examples that use html forms: http://jibbering.com/discussion/example-svg-ie-forms.svg or even using the MS common controls: http://jibbering.com/discussion/example-svg-ie-common.svg . It's not an alternative to XForms, but native controls and mature technologies may well be better for now than being an early adopter of XForms, and having to learn all the new issues with it yourself, rather than the trusty google. Cheers, Jim. - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [svg-developers] Re: XForms in standalone SVG
Alastair schrieb: plus maybe you dont know the spark project allready, there is supposed to be a nice textbox there: http://spark.sourceforge.net/ Hi Holger, Haven't had a chance to release my text input yet. Its a 1 line text input with that conforms to the SPARK framework, sitting at 90% complete - just need to find some time to finish that extra 10%. I also do have a multi-line textbox in the works that conforms to the framework as well. Hopefully I'll have time to finish it before the svg open for Chris Lewis to show off. Cheers, Alastair to bad, i was sure i have seen a textbox in one of the spark examples... anyways, i hope you ll find the time. spark is a great project, i hope to find the time to investigate deeper into the framework. keep up the great work cheers Holger - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [svg-developers] Re: XForms in standalone SVG
Hi Steve I had seen your simple XSLT based input box but not your others, the ASV6 one is great, I can not wait for ASV6 to be in production release (whenever that happens!?!!??!) i guess we have to wait for 1.2 full to become a recomendation... i would be happy if mozilla gets better text support, so i could get the textbox to run there. so I can implement it in my app, until then I will look into using your ASV3 version I think, I had a look on your site but found no links to those textboxes...is that on purpose? just click on the history 01 link on the main page: http://www.treebuilder.de/default.asp?file=history01.xmltype=html ok i know my site really needs a rebuild, i ve some prototypes for my new pages, but its all not done yet, though everything is better then the current version. I had seen Jan's before, but had not tried to integrate it, perhaps I will make a more concerted effort as it seems to have the functionality I need with respect to hightlighting text and keyboard interaction (similar to your ASV6 text box), the reason I did not persue it last time I saw it is because I could not get my head around the complexities of how he handles his classes, modules prototypes, handles exceptions etc... it all seemed very complicated, but as I said, perhaps I just need to nut it out. well if you are not afraid of some scripting, you could as well just write your own textbox. the key to text selection is: http://www.w3.org/TR/SVG/text.html#InterfaceSVGTextContentElement cheers Holger - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [svg-developers] Re: XForms in standalone SVG
Steve Harwin schrieb: Thanks Guys, Whilst I will certainly investigate how I can completely rearchitecture my web app to fit into the XHTML/XForms/XBL approach as I can see that this is how it probably should have been done, I need a solution similar to the one that Dave suggests. I have combined my javascipt libraries with Kevin Linsey's and Carto.net's to create an interactive drawing tool entirely within an svg document (using the Javascript to handle the interaction with the svg elements). I began this project a few year ago when SVG first appearred and have therefore built and rebuilt it a number of times as technology has improved. It is now at a stage where it is complete (obviously I will continue to improve it, but version 1 is just about there)... My final problem to solve is input boxes. I have been using the Strayley (sp?) form library that he released a couple of years back, but as I said in my first post that lacks most of the complexities (I have added some but not all) needed for proper keyboard interaction. This a common problem with all the other textbox objects I have seen written in JS and SVG... so all I need now is a simple simple text box object that can allow my users to interact with the text properly to adjust coordinates of handles (see kevlindevs shape library), edit text for text elements, adjust circle radius etc... Other than that it is all there. The input boxes are just another way to adjust the drawn elements, the user can drag handles, but somtimes that is not accurate enough, they may need to type a coordinate from a GPS or some such. Hence my frustration, I am trying to build it for IE and ASV as that is my clients default set up, so I was hoping to just plonk a text input box (from XForms) into the svg and use it... unfortunately for the sake of a simple text input is looks like I will have to rebuild my app... Thanks for feedback. I will begin the daunting process of rebuilding now. Steve Hi Steve i got a few textboxes on my page... a textbox for ASV6 and Batik : http://www.treebuilder.de/svg/textbox/textbox2.svg a textbox for ASV3 : http://www.treebuilder.de/svg/textbox/textbox.svg a very very simple texbox, that works in ASV3, ASV6, Batik, MozSVG ... http://www.treebuilder.de/svg/extentSVG/output/textbox.svg the last textbox is created with xslt, see http://www.treebuilder.de/svg/extentSVG/documentation.html#textbox.xml also Jan Klaas Kollhof has got a nice multiline textbox here: http://jan.kollhof.net/projects/svg/examples/index.xhtml you also might want to look here: http://pilat.free.fr/english/index.htm for some textboxes ( i just cant find them right now ) plus maybe you dont know the spark project allready, there is supposed to be a nice textbox there: http://spark.sourceforge.net/ i guess you will find a texbox among these, that suites your needs! cheers Holger - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [svg-developers] Re: XForms in standalone SVG
Thanks Holger, I have had a look at most of those before, but I will revisit them in case they have improved their selected text handling. Steve - Original Message - From: Holger Will [EMAIL PROTECTED] To: svg-developers@yahoogroups.com Sent: Thursday, June 09, 2005 3:17 PM Subject: Re: [svg-developers] Re: XForms in standalone SVG Steve Harwin schrieb: Thanks Guys, Whilst I will certainly investigate how I can completely rearchitecture my web app to fit into the XHTML/XForms/XBL approach as I can see that this is how it probably should have been done, I need a solution similar to the one that Dave suggests. I have combined my javascipt libraries with Kevin Linsey's and Carto.net's to create an interactive drawing tool entirely within an svg document (using the Javascript to handle the interaction with the svg elements). I began this project a few year ago when SVG first appearred and have therefore built and rebuilt it a number of times as technology has improved. It is now at a stage where it is complete (obviously I will continue to improve it, but version 1 is just about there)... My final problem to solve is input boxes. I have been using the Strayley (sp?) form library that he released a couple of years back, but as I said in my first post that lacks most of the complexities (I have added some but not all) needed for proper keyboard interaction. This a common problem with all the other textbox objects I have seen written in JS and SVG... so all I need now is a simple simple text box object that can allow my users to interact with the text properly to adjust coordinates of handles (see kevlindevs shape library), edit text for text elements, adjust circle radius etc... Other than that it is all there. The input boxes are just another way to adjust the drawn elements, the user can drag handles, but somtimes that is not accurate enough, they may need to type a coordinate from a GPS or some such. Hence my frustration, I am trying to build it for IE and ASV as that is my clients default set up, so I was hoping to just plonk a text input box (from XForms) into the svg and use it... unfortunately for the sake of a simple text input is looks like I will have to rebuild my app... Thanks for feedback. I will begin the daunting process of rebuilding now. Steve Hi Steve i got a few textboxes on my page... a textbox for ASV6 and Batik : http://www.treebuilder.de/svg/textbox/textbox2.svg a textbox for ASV3 : http://www.treebuilder.de/svg/textbox/textbox.svg a very very simple texbox, that works in ASV3, ASV6, Batik, MozSVG ... http://www.treebuilder.de/svg/extentSVG/output/textbox.svg the last textbox is created with xslt, see http://www.treebuilder.de/svg/extentSVG/documentation.html#textbox.xml also Jan Klaas Kollhof has got a nice multiline textbox here: http://jan.kollhof.net/projects/svg/examples/index.xhtml you also might want to look here: http://pilat.free.fr/english/index.htm for some textboxes ( i just cant find them right now ) plus maybe you dont know the spark project allready, there is supposed to be a nice textbox there: http://spark.sourceforge.net/ i guess you will find a texbox among these, that suites your needs! cheers Holger - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[svg-developers] Re: XForms in standalone SVG
plus maybe you dont know the spark project allready, there is supposed to be a nice textbox there: http://spark.sourceforge.net/ Hi Holger, Haven't had a chance to release my text input yet. Its a 1 line text input with that conforms to the SPARK framework, sitting at 90% complete - just need to find some time to finish that extra 10%. I also do have a multi-line textbox in the works that conforms to the framework as well. Hopefully I'll have time to finish it before the svg open for Chris Lewis to show off. Cheers, Alastair - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [svg-developers] Re: XForms in standalone SVG
Thanks Holger, I had seen your simple XSLT based input box but not your others, the ASV6 one is great, I can not wait for ASV6 to be in production release (whenever that happens!?!!??!) so I can implement it in my app, until then I will look into using your ASV3 version I think, I had a look on your site but found no links to those textboxes...is that on purpose? I had seen Jan's before, but had not tried to integrate it, perhaps I will make a more concerted effort as it seems to have the functionality I need with respect to hightlighting text and keyboard interaction (similar to your ASV6 text box), the reason I did not persue it last time I saw it is because I could not get my head around the complexities of how he handles his classes, modules prototypes, handles exceptions etc... it all seemed very complicated, but as I said, perhaps I just need to nut it out. Thanks again Steve - Original Message - From: Holger Will [EMAIL PROTECTED] To: svg-developers@yahoogroups.com Sent: Thursday, June 09, 2005 3:17 PM Subject: Re: [svg-developers] Re: XForms in standalone SVG Steve Harwin schrieb: Thanks Guys, Whilst I will certainly investigate how I can completely rearchitecture my web app to fit into the XHTML/XForms/XBL approach as I can see that this is how it probably should have been done, I need a solution similar to the one that Dave suggests. I have combined my javascipt libraries with Kevin Linsey's and Carto.net's to create an interactive drawing tool entirely within an svg document (using the Javascript to handle the interaction with the svg elements). I began this project a few year ago when SVG first appearred and have therefore built and rebuilt it a number of times as technology has improved. It is now at a stage where it is complete (obviously I will continue to improve it, but version 1 is just about there)... My final problem to solve is input boxes. I have been using the Strayley (sp?) form library that he released a couple of years back, but as I said in my first post that lacks most of the complexities (I have added some but not all) needed for proper keyboard interaction. This a common problem with all the other textbox objects I have seen written in JS and SVG... so all I need now is a simple simple text box object that can allow my users to interact with the text properly to adjust coordinates of handles (see kevlindevs shape library), edit text for text elements, adjust circle radius etc... Other than that it is all there. The input boxes are just another way to adjust the drawn elements, the user can drag handles, but somtimes that is not accurate enough, they may need to type a coordinate from a GPS or some such. Hence my frustration, I am trying to build it for IE and ASV as that is my clients default set up, so I was hoping to just plonk a text input box (from XForms) into the svg and use it... unfortunately for the sake of a simple text input is looks like I will have to rebuild my app... Thanks for feedback. I will begin the daunting process of rebuilding now. Steve Hi Steve i got a few textboxes on my page... a textbox for ASV6 and Batik : http://www.treebuilder.de/svg/textbox/textbox2.svg a textbox for ASV3 : http://www.treebuilder.de/svg/textbox/textbox.svg a very very simple texbox, that works in ASV3, ASV6, Batik, MozSVG ... http://www.treebuilder.de/svg/extentSVG/output/textbox.svg the last textbox is created with xslt, see http://www.treebuilder.de/svg/extentSVG/documentation.html#textbox.xml also Jan Klaas Kollhof has got a nice multiline textbox here: http://jan.kollhof.net/projects/svg/examples/index.xhtml you also might want to look here: http://pilat.free.fr/english/index.htm for some textboxes ( i just cant find them right now ) plus maybe you dont know the spark project allready, there is supposed to be a nice textbox there: http://spark.sourceforge.net/ i guess you will find a texbox among these, that suites your needs! cheers Holger - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links - To unsubscribe send a message to: [EMAIL PROTECTED] -or- visit http://groups.yahoo.com/group/svg-developers and click edit my membership Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/svg-developers/ * To unsubscribe from this group, send an email to: [EMAIL PROTECTED] * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
[svg-developers] Re: XForms in standalone SVG
Isn't it just as effective to build JS objects to manage the SVG-DOM nodes (their properties, any animation and any other needed functionally)? This gives us the freedom of not being locked into XHTML and still allows us to provide a dynamic UI - to truely become a one-page web application within the browser. I assume that a JS manager object could also interface with XFORMS; haven't attempted this yet. Using JS allows us to use any browser that supports XML, SVG, XFORMS, XBL, etc If I'm missing something important in my approach, please let me know as I'm already well into the project I'm working on concerning RAD for SVG. Dave --- In svg-developers@yahoogroups.com, Mark Birbeck [EMAIL PROTECTED] wrote: Hi Steve, Although I've said this before, I believe that architecting *first and foremost* in SVG is not sustainable. I know that people will reply by saying that they have successfully created applications that have hundreds of thousands of lines of SVG, but it seems to me that the 'mountain bike demo' discussion a week or so ago made it plain that--despite the incredibly impressive results--for most developers and projects this approach is not an option. I'll describe the architecture I am working towards, and then follow with an example that adds dynamic SVG buttons to an existing application by 'skinning' it, rather than changing the application. The SVG buttons will: * use filters to give a rounded effect; * obtain their captions from the XForms engine, and be updated if the data changes; * use the applications's CSS to obtain colours which will be used for the captions and the background; * use SMIL to 'fly' the button's label in, but use *CSS* properties to determine *when* to fly the text. This last point is I believe a very important development, in that we are not binding to specific events like mouse-over, but to CSS clasees. In other words, the functionality in the SVG button is *truly* independent, encapsulated and re-usable. ARCHITECTURE The archtitecture I would recommend to you is one in which the foundation of an application is an XHTML document. For now that's XHTML 1.1, but soon it will be XHTML 2. This foundation provides us with a simple framework into which we can put metadata about the document, links to stylesheets, and so on. Once we have a basic document, what goes inside it depends on what you are trying to do, but in general I would say that we want it to be as abstract as possible. We want to specify *what* we want to do, not how it will be done. If we want to collect an integer from a user, we just use the XForms input control, and bind it to a node of type xsd:integer. If we want to show an error message we should use the XForms message element. And so on. What we *don't* want to do--at this level at least--is start defining our application in terms of scripts that are non-portable, and don't capture the *intent* of our application. Although we have enabled our Sidewinder Viewer to cope with XForms, SVG, XHTML and MathML, I would suggest that of these, SVG is not an 'abstract' language but a rendering one. MathML is abstract, as is XForms, whilst XHTML has a foot in both camps! SKINNING So where does SVG come in? Well, once we have created our application at an abstract level--step 1 enter a number, step 2 request a customer, step 3 allocate the invoice, and so on--we are then ready to 'skin' it, and present it to our users. Ideal for this is XBL, and inside XBL modules is where we should put our SVG, VoiceXML, X3D or whatever rendering language we care to use. We can keep it hidden, and keep it manageable. We can share objects, replace them with others, or even let the user choose to 'skin' our application in a different way to the one that we intended. AN EXAMPLE If you have looked at our Sidewinder Viewer (available at http://www.formsplayer.com/download/swviewer-install.html) you might have seen that the latest version comes with a full-featured application that interacts with Google Desktop Search (GDS). The application is built using standard XForms techniques, with a few clever bits to make configuration easy. The UI is pretty 'traditional' but on the XForms Wiki we have an example that shows how to add an SVG widget to replace the normal buttons. See: http://www.xforms-wiki.com/bin/view/Main/XformsAndSkinning This topic has all the files needed to add animated buttons to the Google Search application, and takes you step-by-step through what is needed. There is also a small Flash video if you just want to see the results. CONCLUSION Note that the only changes needed to the actual application are a link in the header to indicate what binding rules should be used; the actual code to achieve the 'animated label widget' is kept in the XBL module. This makes testing and auto-generation of
Re: [svg-developers] Re: XForms in standalone SVG
Thanks Guys, Whilst I will certainly investigate how I can completely rearchitecture my web app to fit into the XHTML/XForms/XBL approach as I can see that this is how it probably should have been done, I need a solution similar to the one that Dave suggests. I have combined my javascipt libraries with Kevin Linsey's and Carto.net's to create an interactive drawing tool entirely within an svg document (using the Javascript to handle the interaction with the svg elements). I began this project a few year ago when SVG first appearred and have therefore built and rebuilt it a number of times as technology has improved. It is now at a stage where it is complete (obviously I will continue to improve it, but version 1 is just about there)... My final problem to solve is input boxes. I have been using the Strayley (sp?) form library that he released a couple of years back, but as I said in my first post that lacks most of the complexities (I have added some but not all) needed for proper keyboard interaction. This a common problem with all the other textbox objects I have seen written in JS and SVG... so all I need now is a simple simple text box object that can allow my users to interact with the text properly to adjust coordinates of handles (see kevlindevs shape library), edit text for text elements, adjust circle radius etc... Other than that it is all there. The input boxes are just another way to adjust the drawn elements, the user can drag handles, but somtimes that is not accurate enough, they may need to type a coordinate from a GPS or some such. Hence my frustration, I am trying to build it for IE and ASV as that is my clients default set up, so I was hoping to just plonk a text input box (from XForms) into the svg and use it... unfortunately for the sake of a simple text input is looks like I will have to rebuild my app... Thanks for feedback. I will begin the daunting process of rebuilding now. Steve - Original Message - From: Richard D. Spencer [EMAIL PROTECTED] To: svg-developers@yahoogroups.com Sent: Thursday, June 09, 2005 4:12 AM Subject: [svg-developers] Re: XForms in standalone SVG Isn't it just as effective to build JS objects to manage the SVG-DOM nodes (their properties, any animation and any other needed functionally)? This gives us the freedom of not being locked into XHTML and still allows us to provide a dynamic UI - to truely become a one-page web application within the browser. I assume that a JS manager object could also interface with XFORMS; haven't attempted this yet. Using JS allows us to use any browser that supports XML, SVG, XFORMS, XBL, etc If I'm missing something important in my approach, please let me know as I'm already well into the project I'm working on concerning RAD for SVG. Dave --- In svg-developers@yahoogroups.com, Mark Birbeck [EMAIL PROTECTED] wrote: Hi Steve, Although I've said this before, I believe that architecting *first and foremost* in SVG is not sustainable. I know that people will reply by saying that they have successfully created applications that have hundreds of thousands of lines of SVG, but it seems to me that the 'mountain bike demo' discussion a week or so ago made it plain that--despite the incredibly impressive results--for most developers and projects this approach is not an option. I'll describe the architecture I am working towards, and then follow with an example that adds dynamic SVG buttons to an existing application by 'skinning' it, rather than changing the application. The SVG buttons will: * use filters to give a rounded effect; * obtain their captions from the XForms engine, and be updated if the data changes; * use the applications's CSS to obtain colours which will be used for the captions and the background; * use SMIL to 'fly' the button's label in, but use *CSS* properties to determine *when* to fly the text. This last point is I believe a very important development, in that we are not binding to specific events like mouse-over, but to CSS clasees. In other words, the functionality in the SVG button is *truly* independent, encapsulated and re-usable. ARCHITECTURE The archtitecture I would recommend to you is one in which the foundation of an application is an XHTML document. For now that's XHTML 1.1, but soon it will be XHTML 2. This foundation provides us with a simple framework into which we can put metadata about the document, links to stylesheets, and so on. Once we have a basic document, what goes inside it depends on what you are trying to do, but in general I would say that we want it to be as abstract as possible. We want to specify *what* we want to do, not how it will be done. If we want to collect an integer from a user, we just use the XForms input control, and bind it to a node of type xsd:integer. If we want to show an error message we should use the XForms message