Hi!

I just started learning XForms a few days ago, and started doing so in
XSLTForms. So far, it's worked great!

But I have discovered that XSLTForms fails to work when I try to apply the
XForms namespace URI as the default namespace on <model/> and, say
<group/>. I built these examples to further understand my issues:

#1: Works great!

<html xmlns="http://www.w3.org/1999/xhtml"; xmlns:xf="
http://www.w3.org/2002/xforms";>
<head>
  <title>XSLTForms - Namespace test</title>
  <xf:model>
    <xf:instance xmlns="">
      <lyrics>
        <verse>La le-le la la</verse>
        <chorus>Boom, diddy cha!</chorus>
      </lyrics>
    </xf:instance>
  </xf:model>
</head>
<body>
  <h1>HTML Test Element</h1>
  <xf:group ref="/lyrics">
    <xf:label>Your New Hit Song!</xf:label>
    <xf:input ref="verse"><xf:label>Verse</xf:label></xf:input>
    <xf:input ref="chorus"><xf:label>Chorus</xf:label></xf:input>
    <xf:output ref="verse" /> / <xf:output ref="chorus" />
  </xf:group>
</body>
</html>

#2: Doesn't work

<html xmlns="http://www.w3.org/1999/xhtml";>
<head>
  <title>XSLTForms - Namespace test</title>
  <model xmlns="http://www.w3.org/2002/xforms";>
    <instance xmlns="">
      <lyrics>
        <verse>La le-le la la</verse>
        <chorus>Boom, diddy cha!</chorus>
      </lyrics>
    </instance>
  </model>
</head>
<body>
  <h1>HTML Test Element</h1>
  <group xmlns="http://www.w3.org/2002/xforms"; ref="/lyrics">
    <label>Your New Hit Song!</label>
    <input ref="verse"><label>Verse</label></input>
    <input ref="chorus"><label>Chorus</label></input>
    <output ref="verse" /> / <output ref="chorus" />
  </group>
</body>
</html>

Then I tried, instead of using <html/> to assign namespaces, using <head/>
and <body/>

#3: Works great!

<html xmlns="http://www.w3.org/1999/xhtml"; xmlns:xf="
http://www.w3.org/2002/xforms";>
<head>
  <title>XSLTForms - Namespace test</title>
  <xf:model>
    <xf:instance xmlns="">
      <lyrics>
        <verse>La le-le la la</verse>
        <chorus>Boom, diddy cha!</chorus>
      </lyrics>
    </xf:instance>
  </xf:model>
</head>
<body>
  <h1>HTML Test Element</h1>
  <xf:group ref="/lyrics">
    <xf:label>Your New Hit Song!</xf:label>
    <xf:input ref="verse"><xf:label>Verse</xf:label></xf:input>
    <xf:input ref="chorus"><xf:label>Chorus</xf:label></xf:input>
    <xf:output ref="verse" /> / <xf:output ref="chorus" />
  </xf:group>
</body>
</html>

Then I thought I'd get really kinky, and switch default and xhtml
namespaces!

#4: Doesn't work

<h:html xmlns="http://www.w3.org/2002/xforms"; xmlns:h="
http://www.w3.org/1999/xhtml";>
<h:head>
  <h:title>XSLTForms - Namespace test</h:title>
  <model>
    <instance xmlns="">
      <lyrics>
        <verse>La le-le la la</verse>
        <chorus>Boom, diddy cha!</chorus>
      </lyrics>
    </instance>
  </model>
</h:head>
<h:body xmlns:xf="http://www.w3.org/2002/xforms";>
  <h:h1>HTML Test Element</h:h1>
  <group ref="/lyrics">
    <label>Your New Hit Song!</label>
    <input ref="verse"><label>Verse</label></input>
    <input ref="chorus"><label>Chorus</label></input>
    <output ref="verse" /> / <output ref="chorus" />
  </group>
</h:body>
</h:html>

I tried in both chromium and firefox. I thought maybe it was browser
specific. I had the most cursory of pokes around xsltforms.js, and also in
dev tools, but it's complex.

Plus, I might be an idiot. So before I go moving more earth than my back
can bear, I thought I'd hit up the mailing list.

Thanks everyone, and thanks Alain for this great piece of software.

Be well,
Jay
_______________________________________________
Xsltforms-support mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xsltforms-support

Reply via email to