Hi Mike,
I am writing an article on DFDL. In my article I write that XML Schema is an
extensible language. XML Schema provides a scaffolding upon which new languages
can be created. Early in my article I talk generally about the properties used
to specify data formats, such as representation, encoding, separator, and so
forth. I do not talk about dfdl:representation or dfdl:encoding or
dfdl:separator. After that, I then go on to say, "To distinguish extensions
from the XML Schema items, I will add the prefix "x:" ("x" for eXtension)."
In my article I do not use or mention dfdl as a namespace prefix.
You might not think that is a good use case. But I think it is.
Analogously, when people write XSLT programs, some insist on using xslt as the
namespace prefix while others insist on using xsl. When writing an XSLT program
that generates another XSLT program some people use axslt as the prefix. The
XSLT processor doesn't care what prefix is used.
/Roger
From: Beckerle, Mike <[email protected]>
Sent: Wednesday, April 8, 2020 1:04 PM
To: [email protected]
Subject: [EXT] Re: Daffodil hardcoded the namespace prefix?
Yes if it is important enough.
But... in our defense, this is the first we've heard of it since 2013, which is
why it isn't fixed already.
The primary use case for this that I know of is when there are more versions of
DFDL around and people want to start using namespaces with different prefixes
like dfdl1 and dfdl2. Until then why not just use the "by convention" choice of
prefix: dfdl ?
I would point out that at least one of the IBM DFDL implementations also has
this problem with certain namespace prefixes including xsd and dfdl, being hard
coded. So it's not like you can use dafdfdl for daffodil and ibmdfdl for IBM's
variant.
I'm happy to increase the priority of this ticket. I just need a rationale.
________________________________
From: Costello, Roger L. <[email protected]<mailto:[email protected]>>
Sent: Wednesday, April 8, 2020 12:51 PM
To: [email protected]<mailto:[email protected]>
<[email protected]<mailto:[email protected]>>
Subject: Re: Daffodil hardcoded the namespace prefix?
Hi Mike,
Would it be possible to get this fixed by the next release of Daffodil?
/Roger
From: Beckerle, Mike <[email protected]<mailto:[email protected]>>
Sent: Tuesday, April 7, 2020 3:31 PM
To: [email protected]<mailto:[email protected]>
Subject: [EXT] Re: Daffodil hardcoded the namespace prefix?
Alas, it's a longstanding bug:
https://issues.apache.org/jira/browse/DAFFODIL-587
open since 2013, egad.
...mikeb
________________________________
From: Beckerle, Mike <[email protected]<mailto:[email protected]>>
Sent: Tuesday, April 7, 2020 3:25 PM
To: [email protected]<mailto:[email protected]>
<[email protected]<mailto:[email protected]>>
Subject: Re: Daffodil hardcoded the namespace prefix?
It's a bug if it does that. It's not supposed to be hard-coded, and isn't most
places.
We do have some tests that don't use "dfdl" as the prefix, but obviously there
is at least one rigidity where something isn't respecting namespace.
________________________________
From: Costello, Roger L. <[email protected]<mailto:[email protected]>>
Sent: Tuesday, April 7, 2020 3:11 PM
To: [email protected]<mailto:[email protected]>
<[email protected]<mailto:[email protected]>>
Subject: Daffodil hardcoded the namespace prefix?
Hi Folks,
Instead of using "dfdl" as the namespace prefix, I used "x"
xmlns:x="http://www.ogf.org/dfdl/dfdl-1.0/"
And I changed all namespace qualifiers from "dfdl:" to "x:"
Per the XML namespace specification this is perfectly legal. However, when I
ran my DFDL schema I got this error:
[error] Schema Definition Error: Invalid dfdl annotation found: x:format
Huh?
Did Daffodil hardcode the namespace prefix? That is, if any namespace prefix
other than "dfdl" is used in a DFDL schema, Daffodil fails?
/Roger