Processing instruction constructors: problem with output
Thursday, 22 August 2019 · 9 messages
CG
Hi Tim,
I have just tested your endpoint code (with the latest version of BaseX), and I receive processing instructions as expected:
<?xml-stylesheet type="text/xsl"
href="static/xphoneforms/build/xsl/xsltforms.xsl"?>
...Which version of BaseX are you using? Are you also getting comments in your response when calling the function from the browser or via other tools (such as curl), and could it have to do with the way how XSLTForms processes the result?
Best,
Christian
Quoted text · Tim Thompson · 49 lines
On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> wrote: > > Hello, > > I'm trying to output an XForms (XSLTForms) document from a RESTXQ endpoint, but the necessary processing instructions are being serialized in XML comments in the output, e.g.: > > <!--?xml-stylesheet type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> > > Am I missing something? > > XQuery: > > xquery version "3.1"; > > module namespace test = "test"; > > declare > %rest:path("/test") > %rest:GET > %output:method("xhtml") > function test:home() as document-node() { > > document { > processing-instruction { "xml-stylesheet" } { > 'type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"' > }, > processing-instruction { "xsltforms-options" } { 'debug="no"' }, > processing-instruction { "css-conversion" } { 'no' } > , > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms="http://www.w3.org/2002/xforms" > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > > <head> > <title>Test</title> > </head> > <body> > <h1>Placeholder</h1> > </body> > </html> > } > }; > > > -- > Tim A. Thompson > Discovery Metadata Librarian > Yale University Library >
CG
Hm… You could check the Response panel in the Network View of your browser. The latest version of Chrome, Firefox, Opera, Edge and IE should give you the correct result (those are the ones that I have tried).
Quoted text · Tim Thompson · 78 lines
> I'm getting the comments in the browser (web console). When I dereference the endpoint with curl, the processing instructions are correct. > > In the browser, the XForms instructions are not being processed. I don't think XSLTForms would be the culprit, because the stylesheet is not being called. > > -- > Tim A. Thompson > Discovery Metadata Librarian > Yale University Library > > On Thu, Aug 22, 2019 at 10:37 AM Christian Grün <christian.gruen at gmail.com> wrote: >> >> Hi Tim, >> >> I have just tested your endpoint code (with the latest version of >> BaseX), and I receive processing instructions as expected: >> >> <?xml-stylesheet type="text/xsl" >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?> >> ... >> >> Which version of BaseX are you using? Are you also getting comments in >> your response when calling the function from the browser or via other >> tools (such as curl), and could it have to do with the way how >> XSLTForms processes the result? >> >> Best, >> Christian >> >> >> On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> wrote: >> > >> > Hello, >> > >> > I'm trying to output an XForms (XSLTForms) document from a RESTXQ endpoint, but the necessary processing instructions are being serialized in XML comments in the output, e.g.: >> > >> > <!--?xml-stylesheet type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> >> > >> > Am I missing something? >> > >> > XQuery: >> > >> > xquery version "3.1"; >> > >> > module namespace test = "test"; >> > >> > declare >> > %rest:path("/test") >> > %rest:GET >> > %output:method("xhtml") >> > function test:home() as document-node() { >> > >> > document { >> > processing-instruction { "xml-stylesheet" } { >> > 'type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"' >> > }, >> > processing-instruction { "xsltforms-options" } { 'debug="no"' }, >> > processing-instruction { "css-conversion" } { 'no' } >> > , >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms="http://www.w3.org/2002/xforms" >> > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >> > >> > <head> >> > <title>Test</title> >> > </head> >> > <body> >> > <h1>Placeholder</h1> >> > </body> >> > </html> >> > } >> > }; >> > >> > >> > -- >> > Tim A. Thompson >> > Discovery Metadata Librarian >> > Yale University Library >> >
CG
I can’t promise if I can further dive into this. Maybe Alain has some hints?
Quoted text · Tim Thompson · 145 lines
On Thu, Aug 22, 2019 at 5:09 PM Tim Thompson <timathom at gmail.com> wrote: > > Okay, so the response panel shows the correct output, but for some reason the stylesheet is not being called. If it's not too much trouble, would you be able to try this with XSLTForms (https://github.com/AlainCouthures/xphoneforms.git) placed in the BaseX webapp static dir? > > Here is an expanded demo query: > > > xquery version "3.1"; > > module namespace test = "test"; > > declare > %rest:path("/test") > %rest:GET > %output:method("xhtml") > function test:home( > > ) as document-node() { > > document { > processing-instruction { "xml-stylesheet" } { > 'type="text/xsl" href="/static/xphoneforms/build/xsl/xsltforms.xsl"' > }, > processing-instruction { "xsltforms-options" } { 'debug="no"' }, > processing-instruction { "css-conversion" } { 'no' } > , > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/xforms" > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > > <head> > <title>TALLER BIBFRAME</title> > <model xmlns="http://www.w3.org/2002/xforms" id="main"> > <instance id="init"> > <data xmlns=""> > <test>Test</test> > </data> > </instance> > </model> > > > </head> > <body> > <h1>Placeholder</h1> > <img src="/static/xphoneforms/build/img/ball.png"/> > <h2> > <xf:output value="1 + 2"/> > </h2> > </body> > </html> > } > > }; > > -- > Tim A. Thompson > Discovery Metadata Librarian > Yale University Library > > On Thu, Aug 22, 2019 at 10:57 AM Christian Grün <christian.gruen at gmail.com> wrote: >> >> Hm… You could check the Response panel in the Network View of your >> browser. The latest version of Chrome, Firefox, Opera, Edge and IE >> should give you the correct result (those are the ones that I have >> tried). >> >> >> > I'm getting the comments in the browser (web console). When I dereference the endpoint with curl, the processing instructions are correct. >> > >> > In the browser, the XForms instructions are not being processed. I don't think XSLTForms would be the culprit, because the stylesheet is not being called. >> > >> > -- >> > Tim A. Thompson >> > Discovery Metadata Librarian >> > Yale University Library >> > >> > On Thu, Aug 22, 2019 at 10:37 AM Christian Grün <christian.gruen at gmail.com> wrote: >> >> >> >> Hi Tim, >> >> >> >> I have just tested your endpoint code (with the latest version of >> >> BaseX), and I receive processing instructions as expected: >> >> >> >> <?xml-stylesheet type="text/xsl" >> >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?> >> >> ... >> >> >> >> Which version of BaseX are you using? Are you also getting comments in >> >> your response when calling the function from the browser or via other >> >> tools (such as curl), and could it have to do with the way how >> >> XSLTForms processes the result? >> >> >> >> Best, >> >> Christian >> >> >> >> >> >> On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> wrote: >> >> > >> >> > Hello, >> >> > >> >> > I'm trying to output an XForms (XSLTForms) document from a RESTXQ endpoint, but the necessary processing instructions are being serialized in XML comments in the output, e.g.: >> >> > >> >> > <!--?xml-stylesheet type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> >> >> > >> >> > Am I missing something? >> >> > >> >> > XQuery: >> >> > >> >> > xquery version "3.1"; >> >> > >> >> > module namespace test = "test"; >> >> > >> >> > declare >> >> > %rest:path("/test") >> >> > %rest:GET >> >> > %output:method("xhtml") >> >> > function test:home() as document-node() { >> >> > >> >> > document { >> >> > processing-instruction { "xml-stylesheet" } { >> >> > 'type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"' >> >> > }, >> >> > processing-instruction { "xsltforms-options" } { 'debug="no"' }, >> >> > processing-instruction { "css-conversion" } { 'no' } >> >> > , >> >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms="http://www.w3.org/2002/xforms" >> >> > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" >> >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >> >> > >> >> > <head> >> >> > <title>Test</title> >> >> > </head> >> >> > <body> >> >> > <h1>Placeholder</h1> >> >> > </body> >> >> > </html> >> >> > } >> >> > }; >> >> > >> >> > >> >> > -- >> >> > Tim A. Thompson >> >> > Discovery Metadata Librarian >> >> > Yale University Library >> >> >
AB
Reminds me of a similar issue I had with inline script blocks containing < characters..
xhtml sets the serialization but the content type will stay as text/html unless you explicitly set it.
%output:media-type('application/xhtml+xml')
/Andy
Quoted text · Tim Thompson · 211 lines
On Thu, 22 Aug 2019 at 16:47, Tim Thompson <timathom at gmail.com> wrote: > Thanks for testing, Bridger! You should see the "3" if XSLTForms is > working. I got this to work correctly by changing the BaseX output > serialization method to "xml" instead of "xhtml". I'm not sure why "xhtml" > doesn't work, but XSLTForms converts the document to HTML in the browser > anyway, so this should be okay. > > Best, > Tim > > -- > Tim A. Thompson > Discovery Metadata Librarian > Yale University Library > > On Thu, Aug 22, 2019 at 11:35 AM Bridger Dyson-Smith < > bdysonsmith at gmail.com> wrote: > >> Hi Tim - >> A quick test and this is working correctly(?) for me; >> 1. I cloned Alain's repo to `.../webapp/static/` >> 2. I copy-pasta'd your example into `.../webapp/test.xqm` >> 3. After starting the BaseX HTTP server, I hit `localhost:8984` and >> `localhost:8984/test` and had good responses from both; i.e. at `/test`, >> I'm seeing a "Test", a "Placeholder", and a fun little gray-ish ball (but >> no "3" in either browser). >> >> This was with Firefox 60.8.0esr and Chromium 76.0.3809.87. >> >> Is there anything specific I can try to tell you? I'm not very familiar >> with XSLTforms. >> Best, >> Bridger >> >> On Thu, Aug 22, 2019 at 11:16 AM Christian Grün < >> christian.gruen at gmail.com> wrote: >> >>> I can’t promise if I can further dive into this. Maybe Alain has some >>> hints? >>> >>> >>> On Thu, Aug 22, 2019 at 5:09 PM Tim Thompson <timathom at gmail.com> wrote: >>> > >>> > Okay, so the response panel shows the correct output, but for some >>> reason the stylesheet is not being called. If it's not too much trouble, >>> would you be able to try this with XSLTForms ( >>> https://github.com/AlainCouthures/xphoneforms.git) placed in the BaseX >>> webapp static dir? >>> > >>> > Here is an expanded demo query: >>> > >>> > >>> > xquery version "3.1"; >>> > >>> > module namespace test = "test"; >>> > >>> > declare >>> > %rest:path("/test") >>> > %rest:GET >>> > %output:method("xhtml") >>> > function test:home( >>> > >>> > ) as document-node() { >>> > >>> > document { >>> > processing-instruction { "xml-stylesheet" } { >>> > 'type="text/xsl" >>> href="/static/xphoneforms/build/xsl/xsltforms.xsl"' >>> > }, >>> > processing-instruction { "xsltforms-options" } { 'debug="no"' }, >>> > processing-instruction { "css-conversion" } { 'no' } >>> > , >>> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf=" >>> http://www.w3.org/2002/xforms" >>> > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" >>> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >>> > >>> > <head> >>> > <title>TALLER BIBFRAME</title> >>> > <model xmlns="http://www.w3.org/2002/xforms" id="main"> >>> > <instance id="init"> >>> > <data xmlns=""> >>> > <test>Test</test> >>> > </data> >>> > </instance> >>> > </model> >>> > >>> > >>> > </head> >>> > <body> >>> > <h1>Placeholder</h1> >>> > <img src="/static/xphoneforms/build/img/ball.png"/> >>> > <h2> >>> > <xf:output value="1 + 2"/> >>> > </h2> >>> > </body> >>> > </html> >>> > } >>> > >>> > }; >>> > >>> > -- >>> > Tim A. Thompson >>> > Discovery Metadata Librarian >>> > Yale University Library >>> > >>> > On Thu, Aug 22, 2019 at 10:57 AM Christian Grün < >>> christian.gruen at gmail.com> wrote: >>> >> >>> >> Hm… You could check the Response panel in the Network View of your >>> >> browser. The latest version of Chrome, Firefox, Opera, Edge and IE >>> >> should give you the correct result (those are the ones that I have >>> >> tried). >>> >> >>> >> >>> >> > I'm getting the comments in the browser (web console). When I >>> dereference the endpoint with curl, the processing instructions are correct. >>> >> > >>> >> > In the browser, the XForms instructions are not being processed. I >>> don't think XSLTForms would be the culprit, because the stylesheet is not >>> being called. >>> >> > >>> >> > -- >>> >> > Tim A. Thompson >>> >> > Discovery Metadata Librarian >>> >> > Yale University Library >>> >> > >>> >> > On Thu, Aug 22, 2019 at 10:37 AM Christian Grün < >>> christian.gruen at gmail.com> wrote: >>> >> >> >>> >> >> Hi Tim, >>> >> >> >>> >> >> I have just tested your endpoint code (with the latest version of >>> >> >> BaseX), and I receive processing instructions as expected: >>> >> >> >>> >> >> <?xml-stylesheet type="text/xsl" >>> >> >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?> >>> >> >> ... >>> >> >> >>> >> >> Which version of BaseX are you using? Are you also getting >>> comments in >>> >> >> your response when calling the function from the browser or via >>> other >>> >> >> tools (such as curl), and could it have to do with the way how >>> >> >> XSLTForms processes the result? >>> >> >> >>> >> >> Best, >>> >> >> Christian >>> >> >> >>> >> >> >>> >> >> On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> >>> wrote: >>> >> >> > >>> >> >> > Hello, >>> >> >> > >>> >> >> > I'm trying to output an XForms (XSLTForms) document from a >>> RESTXQ endpoint, but the necessary processing instructions are being >>> serialized in XML comments in the output, e.g.: >>> >> >> > >>> >> >> > <!--?xml-stylesheet type="text/xsl" >>> href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> >>> >> >> > >>> >> >> > Am I missing something? >>> >> >> > >>> >> >> > XQuery: >>> >> >> > >>> >> >> > xquery version "3.1"; >>> >> >> > >>> >> >> > module namespace test = "test"; >>> >> >> > >>> >> >> > declare >>> >> >> > %rest:path("/test") >>> >> >> > %rest:GET >>> >> >> > %output:method("xhtml") >>> >> >> > function test:home() as document-node() { >>> >> >> > >>> >> >> > document { >>> >> >> > processing-instruction { "xml-stylesheet" } { >>> >> >> > 'type="text/xsl" >>> href="static/xphoneforms/build/xsl/xsltforms.xsl"' >>> >> >> > }, >>> >> >> > processing-instruction { "xsltforms-options" } { >>> 'debug="no"' }, >>> >> >> > processing-instruction { "css-conversion" } { 'no' } >>> >> >> > , >>> >> >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms=" >>> http://www.w3.org/2002/xforms" >>> >> >> > xmlns:ev="http://www.w3.org/2001/xml-events" >>> xmlns:my="test" >>> >> >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >>> >> >> > >>> >> >> > <head> >>> >> >> > <title>Test</title> >>> >> >> > </head> >>> >> >> > <body> >>> >> >> > <h1>Placeholder</h1> >>> >> >> > </body> >>> >> >> > </html> >>> >> >> > } >>> >> >> > }; >>> >> >> > >>> >> >> > >>> >> >> > -- >>> >> >> > Tim A. Thompson >>> >> >> > Discovery Metadata Librarian >>> >> >> > Yale University Library >>> >> >> > >>> >>
TT
Tim Thompson22 Aug 2019 18:31 #
Hello,
I'm trying to output an XForms (XSLTForms) document from a RESTXQ endpoint, but the necessary processing instructions are being serialized in XML comments in the output, e.g.:
<!--?xml-stylesheet type="text/xsl"
href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> Am I missing something?
XQuery:
xquery version "3.1";
module namespace test = "test";
declare
%rest:path("/test")
%rest:GET
%output:method("xhtml")
function test:home() as document-node() {
document {
processing-instruction { "xml-stylesheet" } {
'type="text/xsl" href="static/xphoneforms/build/xsl/xsltforms.xsl"' },
processing-instruction { "xsltforms-options" } { 'debug="no"' }, processing-instruction { "css-conversion" } { 'no' }
,
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms=" http://www.w3.org/2002/xforms"
xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd=" http://www.w3.org/2001/XMLSchema">
<head>
<title>Test</title>
</head>
<body>
<h1>Placeholder</h1>
</body>
</html>
}
};--
Tim A. Thompson
Discovery Metadata Librarian
Yale University Library
TT
Thanks for your quick response, Christian. I'm running BaseX 9.2.4.
I'm getting the comments in the browser (web console). When I dereference the endpoint with curl, the processing instructions are correct.
In the browser, the XForms instructions are not being processed. I don't think XSLTForms would be the culprit, because the stylesheet is not being called.
--
Tim A. Thompson
Discovery Metadata Librarian
Yale University Library
Quoted text · Christian Grün · 76 lines
On Thu, Aug 22, 2019 at 10:37 AM Christian Grün <christian.gruen at gmail.com> wrote: > Hi Tim, > > I have just tested your endpoint code (with the latest version of > BaseX), and I receive processing instructions as expected: > > <?xml-stylesheet type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"?> > ... > > Which version of BaseX are you using? Are you also getting comments in > your response when calling the function from the browser or via other > tools (such as curl), and could it have to do with the way how > XSLTForms processes the result? > > Best, > Christian > > > On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> wrote: > > > > Hello, > > > > I'm trying to output an XForms (XSLTForms) document from a RESTXQ > endpoint, but the necessary processing instructions are being serialized in > XML comments in the output, e.g.: > > > > <!--?xml-stylesheet type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> > > > > Am I missing something? > > > > XQuery: > > > > xquery version "3.1"; > > > > module namespace test = "test"; > > > > declare > > %rest:path("/test") > > %rest:GET > > %output:method("xhtml") > > function test:home() as document-node() { > > > > document { > > processing-instruction { "xml-stylesheet" } { > > 'type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"' > > }, > > processing-instruction { "xsltforms-options" } { 'debug="no"' }, > > processing-instruction { "css-conversion" } { 'no' } > > , > > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms=" > http://www.w3.org/2002/xforms" > > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > > > > <head> > > <title>Test</title> > > </head> > > <body> > > <h1>Placeholder</h1> > > </body> > > </html> > > } > > }; > > > > > > -- > > Tim A. Thompson > > Discovery Metadata Librarian > > Yale University Library > > >
TT
Okay, so the response panel shows the correct output, but for some reason the stylesheet is not being called. If it's not too much trouble, would you be able to try this with XSLTForms (
https://github.com/AlainCouthures/xphoneforms.git) placed in the BaseX webapp static dir?
Here is an expanded demo query:
xquery version "3.1";
module namespace test = "test";
declare
%rest:path("/test")
%rest:GET
%output:method("xhtml")
function test:home(
) as document-node() { document {
processing-instruction { "xml-stylesheet" } {
'type="text/xsl" href="/static/xphoneforms/build/xsl/xsltforms.xsl"' },
processing-instruction { "xsltforms-options" } { 'debug="no"' }, processing-instruction { "css-conversion" } { 'no' }
,
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="
http://www.w3.org/2002/xforms"
xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd=" http://www.w3.org/2001/XMLSchema">
<head>
<title>TALLER BIBFRAME</title>
<model xmlns="http://www.w3.org/2002/xforms" id="main">
<instance id="init">
<data xmlns="">
<test>Test</test>
</data>
</instance>
</model>
</head>
<body>
<h1>Placeholder</h1>
<img src="/static/xphoneforms/build/img/ball.png"/>
<h2>
<xf:output value="1 + 2"/>
</h2>
</body>
</html>
}};
--
Tim A. Thompson
Discovery Metadata Librarian
Yale University Library
Quoted text · Christian Grün · 99 lines
On Thu, Aug 22, 2019 at 10:57 AM Christian Grün <christian.gruen at gmail.com> wrote: > Hm… You could check the Response panel in the Network View of your > browser. The latest version of Chrome, Firefox, Opera, Edge and IE > should give you the correct result (those are the ones that I have > tried). > > > > I'm getting the comments in the browser (web console). When I > dereference the endpoint with curl, the processing instructions are correct. > > > > In the browser, the XForms instructions are not being processed. I don't > think XSLTForms would be the culprit, because the stylesheet is not being > called. > > > > -- > > Tim A. Thompson > > Discovery Metadata Librarian > > Yale University Library > > > > On Thu, Aug 22, 2019 at 10:37 AM Christian Grün < > christian.gruen at gmail.com> wrote: > >> > >> Hi Tim, > >> > >> I have just tested your endpoint code (with the latest version of > >> BaseX), and I receive processing instructions as expected: > >> > >> <?xml-stylesheet type="text/xsl" > >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?> > >> ... > >> > >> Which version of BaseX are you using? Are you also getting comments in > >> your response when calling the function from the browser or via other > >> tools (such as curl), and could it have to do with the way how > >> XSLTForms processes the result? > >> > >> Best, > >> Christian > >> > >> > >> On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> > wrote: > >> > > >> > Hello, > >> > > >> > I'm trying to output an XForms (XSLTForms) document from a RESTXQ > endpoint, but the necessary processing instructions are being serialized in > XML comments in the output, e.g.: > >> > > >> > <!--?xml-stylesheet type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> > >> > > >> > Am I missing something? > >> > > >> > XQuery: > >> > > >> > xquery version "3.1"; > >> > > >> > module namespace test = "test"; > >> > > >> > declare > >> > %rest:path("/test") > >> > %rest:GET > >> > %output:method("xhtml") > >> > function test:home() as document-node() { > >> > > >> > document { > >> > processing-instruction { "xml-stylesheet" } { > >> > 'type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"' > >> > }, > >> > processing-instruction { "xsltforms-options" } { 'debug="no"' }, > >> > processing-instruction { "css-conversion" } { 'no' } > >> > , > >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms=" > http://www.w3.org/2002/xforms" > >> > xmlns:ev="http://www.w3.org/2001/xml-events" > xmlns:my="test" > >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > >> > > >> > <head> > >> > <title>Test</title> > >> > </head> > >> > <body> > >> > <h1>Placeholder</h1> > >> > </body> > >> > </html> > >> > } > >> > }; > >> > > >> > > >> > -- > >> > Tim A. Thompson > >> > Discovery Metadata Librarian > >> > Yale University Library > >> > >
BD
Hi Tim -
A quick test and this is working correctly(?) for me;
1. I cloned Alain's repo to
.../webapp/static/
2. I copy-pasta'd your example into .../webapp/test.xqm
3. After starting the BaseX HTTP server, I hit localhost:8984 and localhost:8984/test and had good responses from both; i.e. at /test, I'm seeing a "Test", a "Placeholder", and a fun little gray-ish ball (but no "3" in either browser).
This was with Firefox 60.8.0esr and Chromium 76.0.3809.87.
Is there anything specific I can try to tell you? I'm not very familiar with XSLTforms.
Best,
BridgerQuoted text · Christian Grün · 174 lines
On Thu, Aug 22, 2019 at 11:16 AM Christian Grün <christian.gruen at gmail.com> wrote: > I can’t promise if I can further dive into this. Maybe Alain has some > hints? > > > On Thu, Aug 22, 2019 at 5:09 PM Tim Thompson <timathom at gmail.com> wrote: > > > > Okay, so the response panel shows the correct output, but for some > reason the stylesheet is not being called. If it's not too much trouble, > would you be able to try this with XSLTForms ( > https://github.com/AlainCouthures/xphoneforms.git) placed in the BaseX > webapp static dir? > > > > Here is an expanded demo query: > > > > > > xquery version "3.1"; > > > > module namespace test = "test"; > > > > declare > > %rest:path("/test") > > %rest:GET > > %output:method("xhtml") > > function test:home( > > > > ) as document-node() { > > > > document { > > processing-instruction { "xml-stylesheet" } { > > 'type="text/xsl" > href="/static/xphoneforms/build/xsl/xsltforms.xsl"' > > }, > > processing-instruction { "xsltforms-options" } { 'debug="no"' }, > > processing-instruction { "css-conversion" } { 'no' } > > , > > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf=" > http://www.w3.org/2002/xforms" > > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" > > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > > > > <head> > > <title>TALLER BIBFRAME</title> > > <model xmlns="http://www.w3.org/2002/xforms" id="main"> > > <instance id="init"> > > <data xmlns=""> > > <test>Test</test> > > </data> > > </instance> > > </model> > > > > > > </head> > > <body> > > <h1>Placeholder</h1> > > <img src="/static/xphoneforms/build/img/ball.png"/> > > <h2> > > <xf:output value="1 + 2"/> > > </h2> > > </body> > > </html> > > } > > > > }; > > > > -- > > Tim A. Thompson > > Discovery Metadata Librarian > > Yale University Library > > > > On Thu, Aug 22, 2019 at 10:57 AM Christian Grün < > christian.gruen at gmail.com> wrote: > >> > >> Hm… You could check the Response panel in the Network View of your > >> browser. The latest version of Chrome, Firefox, Opera, Edge and IE > >> should give you the correct result (those are the ones that I have > >> tried). > >> > >> > >> > I'm getting the comments in the browser (web console). When I > dereference the endpoint with curl, the processing instructions are correct. > >> > > >> > In the browser, the XForms instructions are not being processed. I > don't think XSLTForms would be the culprit, because the stylesheet is not > being called. > >> > > >> > -- > >> > Tim A. Thompson > >> > Discovery Metadata Librarian > >> > Yale University Library > >> > > >> > On Thu, Aug 22, 2019 at 10:37 AM Christian Grün < > christian.gruen at gmail.com> wrote: > >> >> > >> >> Hi Tim, > >> >> > >> >> I have just tested your endpoint code (with the latest version of > >> >> BaseX), and I receive processing instructions as expected: > >> >> > >> >> <?xml-stylesheet type="text/xsl" > >> >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?> > >> >> ... > >> >> > >> >> Which version of BaseX are you using? Are you also getting comments > in > >> >> your response when calling the function from the browser or via other > >> >> tools (such as curl), and could it have to do with the way how > >> >> XSLTForms processes the result? > >> >> > >> >> Best, > >> >> Christian > >> >> > >> >> > >> >> On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> > wrote: > >> >> > > >> >> > Hello, > >> >> > > >> >> > I'm trying to output an XForms (XSLTForms) document from a RESTXQ > endpoint, but the necessary processing instructions are being serialized in > XML comments in the output, e.g.: > >> >> > > >> >> > <!--?xml-stylesheet type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> > >> >> > > >> >> > Am I missing something? > >> >> > > >> >> > XQuery: > >> >> > > >> >> > xquery version "3.1"; > >> >> > > >> >> > module namespace test = "test"; > >> >> > > >> >> > declare > >> >> > %rest:path("/test") > >> >> > %rest:GET > >> >> > %output:method("xhtml") > >> >> > function test:home() as document-node() { > >> >> > > >> >> > document { > >> >> > processing-instruction { "xml-stylesheet" } { > >> >> > 'type="text/xsl" > href="static/xphoneforms/build/xsl/xsltforms.xsl"' > >> >> > }, > >> >> > processing-instruction { "xsltforms-options" } { 'debug="no"' > }, > >> >> > processing-instruction { "css-conversion" } { 'no' } > >> >> > , > >> >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms=" > http://www.w3.org/2002/xforms" > >> >> > xmlns:ev="http://www.w3.org/2001/xml-events" > xmlns:my="test" > >> >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > >> >> > > >> >> > <head> > >> >> > <title>Test</title> > >> >> > </head> > >> >> > <body> > >> >> > <h1>Placeholder</h1> > >> >> > </body> > >> >> > </html> > >> >> > } > >> >> > }; > >> >> > > >> >> > > >> >> > -- > >> >> > Tim A. Thompson > >> >> > Discovery Metadata Librarian > >> >> > Yale University Library > >> >> > >
TT
Tim Thompson22 Aug 2019 19:47 #
Thanks for testing, Bridger! You should see the "3" if XSLTForms is working. I got this to work correctly by changing the BaseX output serialization method to "xml" instead of "xhtml". I'm not sure why "xhtml" doesn't work, but XSLTForms converts the document to HTML in the browser anyway, so this should be okay.
Best,
Tim
--
Tim A. Thompson
Discovery Metadata Librarian
Yale University Library
Quoted text · Bridger Dyson-Smith · 195 lines
On Thu, Aug 22, 2019 at 11:35 AM Bridger Dyson-Smith <bdysonsmith at gmail.com> wrote: > Hi Tim - > A quick test and this is working correctly(?) for me; > 1. I cloned Alain's repo to `.../webapp/static/` > 2. I copy-pasta'd your example into `.../webapp/test.xqm` > 3. After starting the BaseX HTTP server, I hit `localhost:8984` and > `localhost:8984/test` and had good responses from both; i.e. at `/test`, > I'm seeing a "Test", a "Placeholder", and a fun little gray-ish ball (but > no "3" in either browser). > > This was with Firefox 60.8.0esr and Chromium 76.0.3809.87. > > Is there anything specific I can try to tell you? I'm not very familiar > with XSLTforms. > Best, > Bridger > > On Thu, Aug 22, 2019 at 11:16 AM Christian Grün <christian.gruen at gmail.com> > wrote: > >> I can’t promise if I can further dive into this. Maybe Alain has some >> hints? >> >> >> On Thu, Aug 22, 2019 at 5:09 PM Tim Thompson <timathom at gmail.com> wrote: >> > >> > Okay, so the response panel shows the correct output, but for some >> reason the stylesheet is not being called. If it's not too much trouble, >> would you be able to try this with XSLTForms ( >> https://github.com/AlainCouthures/xphoneforms.git) placed in the BaseX >> webapp static dir? >> > >> > Here is an expanded demo query: >> > >> > >> > xquery version "3.1"; >> > >> > module namespace test = "test"; >> > >> > declare >> > %rest:path("/test") >> > %rest:GET >> > %output:method("xhtml") >> > function test:home( >> > >> > ) as document-node() { >> > >> > document { >> > processing-instruction { "xml-stylesheet" } { >> > 'type="text/xsl" >> href="/static/xphoneforms/build/xsl/xsltforms.xsl"' >> > }, >> > processing-instruction { "xsltforms-options" } { 'debug="no"' }, >> > processing-instruction { "css-conversion" } { 'no' } >> > , >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf=" >> http://www.w3.org/2002/xforms" >> > xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:my="test" >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >> > >> > <head> >> > <title>TALLER BIBFRAME</title> >> > <model xmlns="http://www.w3.org/2002/xforms" id="main"> >> > <instance id="init"> >> > <data xmlns=""> >> > <test>Test</test> >> > </data> >> > </instance> >> > </model> >> > >> > >> > </head> >> > <body> >> > <h1>Placeholder</h1> >> > <img src="/static/xphoneforms/build/img/ball.png"/> >> > <h2> >> > <xf:output value="1 + 2"/> >> > </h2> >> > </body> >> > </html> >> > } >> > >> > }; >> > >> > -- >> > Tim A. Thompson >> > Discovery Metadata Librarian >> > Yale University Library >> > >> > On Thu, Aug 22, 2019 at 10:57 AM Christian Grün < >> christian.gruen at gmail.com> wrote: >> >> >> >> Hm… You could check the Response panel in the Network View of your >> >> browser. The latest version of Chrome, Firefox, Opera, Edge and IE >> >> should give you the correct result (those are the ones that I have >> >> tried). >> >> >> >> >> >> > I'm getting the comments in the browser (web console). When I >> dereference the endpoint with curl, the processing instructions are correct. >> >> > >> >> > In the browser, the XForms instructions are not being processed. I >> don't think XSLTForms would be the culprit, because the stylesheet is not >> being called. >> >> > >> >> > -- >> >> > Tim A. Thompson >> >> > Discovery Metadata Librarian >> >> > Yale University Library >> >> > >> >> > On Thu, Aug 22, 2019 at 10:37 AM Christian Grün < >> christian.gruen at gmail.com> wrote: >> >> >> >> >> >> Hi Tim, >> >> >> >> >> >> I have just tested your endpoint code (with the latest version of >> >> >> BaseX), and I receive processing instructions as expected: >> >> >> >> >> >> <?xml-stylesheet type="text/xsl" >> >> >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?> >> >> >> ... >> >> >> >> >> >> Which version of BaseX are you using? Are you also getting comments >> in >> >> >> your response when calling the function from the browser or via >> other >> >> >> tools (such as curl), and could it have to do with the way how >> >> >> XSLTForms processes the result? >> >> >> >> >> >> Best, >> >> >> Christian >> >> >> >> >> >> >> >> >> On Thu, Aug 22, 2019 at 4:31 PM Tim Thompson <timathom at gmail.com> >> wrote: >> >> >> > >> >> >> > Hello, >> >> >> > >> >> >> > I'm trying to output an XForms (XSLTForms) document from a RESTXQ >> endpoint, but the necessary processing instructions are being serialized in >> XML comments in the output, e.g.: >> >> >> > >> >> >> > <!--?xml-stylesheet type="text/xsl" >> href="static/xphoneforms/build/xsl/xsltforms.xsl"?--> >> >> >> > >> >> >> > Am I missing something? >> >> >> > >> >> >> > XQuery: >> >> >> > >> >> >> > xquery version "3.1"; >> >> >> > >> >> >> > module namespace test = "test"; >> >> >> > >> >> >> > declare >> >> >> > %rest:path("/test") >> >> >> > %rest:GET >> >> >> > %output:method("xhtml") >> >> >> > function test:home() as document-node() { >> >> >> > >> >> >> > document { >> >> >> > processing-instruction { "xml-stylesheet" } { >> >> >> > 'type="text/xsl" >> href="static/xphoneforms/build/xsl/xsltforms.xsl"' >> >> >> > }, >> >> >> > processing-instruction { "xsltforms-options" } { 'debug="no"' >> }, >> >> >> > processing-instruction { "css-conversion" } { 'no' } >> >> >> > , >> >> >> > <html xmlns="http://www.w3.org/1999/xhtml" xmlns:xforms=" >> http://www.w3.org/2002/xforms" >> >> >> > xmlns:ev="http://www.w3.org/2001/xml-events" >> xmlns:my="test" >> >> >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xmlns:xsd="http://www.w3.org/2001/XMLSchema"> >> >> >> > >> >> >> > <head> >> >> >> > <title>Test</title> >> >> >> > </head> >> >> >> > <body> >> >> >> > <h1>Placeholder</h1> >> >> >> > </body> >> >> >> > </html> >> >> >> > } >> >> >> > }; >> >> >> > >> >> >> > >> >> >> > -- >> >> >> > Tim A. Thompson >> >> >> > Discovery Metadata Librarian >> >> >> > Yale University Library >> >> >> > >> >
Written for BaseX 9.2. BaseX may have changed since: please check the current documentation.
⚡Generated with XQuery