From joewiz at gmail.com Mon Jan 7 13:33:22 2013 From: joewiz at gmail.com (Joe Wicentowski) Date: Mon, 7 Jan 2013 16:33:22 -0500 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) Message-ID: Hi all, There is quite a profusion of file extensions for XQuery: .xq, .xqy, .xql, .xqm, and .xquery. Perhaps this profusion has happened the spec doesn't say anything about the file extensions. This has opened up the choice to each implementation and each community/project. I'd be interested to know which communities use which file naming conventions, and if there is any consensus? What do you use, and why? My experience: When I first started learning XQuery I used .xq for everything -- I guess because it's short. oXygen uses .xquery as its default file extension for XQuery files but recognizes all of the above as XQuery files. The MarkLogic community seems to use .xqy. When I started to write library modules I started to use .xqm, with the 'm' indicating module. I saw yet others in the eXist-db community using .xql, though it allows all of the above. Github doesn't currently recognize .xql or .xqm as XQuery [1]. Diversity is fine, but the downside is that newcomers are certainly confused, and anytime we share code there is no reliable way to know whether a file is a library or main module without opening it up. The spec does make a distinction that seems to apply to XQuery files. It states that there are two kinds of modules: *library* modules and *main* modules. The distinction is that library modules contain only functions, whereas main modules contain a single main routine (though can also contain function declarations). (See these two terms defined in the spec at http://www.w3.org/TR/xquery/#dt-library-module and http://www.w3.org/TR/xquery/#dt-main-module.) It seems to me that any good XQuery file naming convention should reflect this distinction between *library* and *main* modules. After thinking about this, I think .xql and .xqm make good candidates for a file naming convention, since they mnemonically reflect the distinction between library (L) and main (M). Where does that leave .xq, .xqy, or .xquery? I guess they're acceptable alternatives to .xq for main modules, but in my own new projects I think I'm going to go with .xql and .xqm. What practices do you use? What do you think? Does your implementation/community document your practice? Joe [1] https://github.com/github/linguist/blob/master/lib/linguist/languages.yml. I've submitted a pull request to add .xql and .xqm, https://github.com/github/linguist/pull/338. From dlee at calldei.com Mon Jan 7 13:43:19 2013 From: dlee at calldei.com (David Lee) Date: Mon, 7 Jan 2013 21:43:19 +0000 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: References: Message-ID: <220256FDE771B74FB662165BC562CF59595FBE62@CH1PRD0811MB418.namprd08.prod.outlook.com> My opinion. First, just like C and Java etc ... I dont see a need to seperate Libraries and Modules and Mains with extensions. The extension (should, IMHO) apply to the source language not to the use its applied. A single extension should do, and its main job is to load the right editor (for GUI systems ),and for non-gui systems is useful for simply telling apart languages like .xslt and .xquery Hey what do people use for .xslt ? .xsl ? .xs ? How about just .x and let the first line dictate !!!! Whenever I am by myself I use .xquery ... it just makes sense ! When I joined MarkLogic I adopted their convention for any code I write to be shipped with ML and use .xqy But for anything personal I still use .xquery I dont see the need for any more but hey, like standards the fun is that there are so many ! ---------------------------------------- David A. Lee dlee at calldei.com http://www.xmlsh.org -----Original Message----- From: talk-bounces at x-query.com [mailto:talk-bounces at x-query.com] On Behalf Of Joe Wicentowski Sent: Monday, January 07, 2013 4:33 PM To: XQuery Talk Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) Hi all, There is quite a profusion of file extensions for XQuery: .xq, .xqy, .xql, .xqm, and .xquery. Perhaps this profusion has happened the spec doesn't say anything about the file extensions. This has opened up the choice to each implementation and each community/project. I'd be interested to know which communities use which file naming conventions, and if there is any consensus? What do you use, and why? My experience: When I first started learning XQuery I used .xq for everything -- I guess because it's short. oXygen uses .xquery as its default file extension for XQuery files but recognizes all of the above as XQuery files. The MarkLogic community seems to use .xqy. When I started to write library modules I started to use .xqm, with the 'm' indicating module. I saw yet others in the eXist-db community using .xql, though it allows all of the above. Github doesn't currently recognize .xql or .xqm as XQuery [1]. Diversity is fine, but the downside is that newcomers are certainly confused, and anytime we share code there is no reliable way to know whether a file is a library or main module without opening it up. The spec does make a distinction that seems to apply to XQuery files. It states that there are two kinds of modules: *library* modules and *main* modules. The distinction is that library modules contain only functions, whereas main modules contain a single main routine (though can also contain function declarations). (See these two terms defined in the spec at http://www.w3.org/TR/xquery/#dt-library-module and http://www.w3.org/TR/xquery/#dt-main-module.) It seems to me that any good XQuery file naming convention should reflect this distinction between *library* and *main* modules. After thinking about this, I think .xql and .xqm make good candidates for a file naming convention, since they mnemonically reflect the distinction between library (L) and main (M). Where does that leave .xq, .xqy, or .xquery? I guess they're acceptable alternatives to .xq for main modules, but in my own new projects I think I'm going to go with .xql and .xqm. What practices do you use? What do you think? Does your implementation/community document your practice? Joe [1] https://github.com/github/linguist/blob/master/lib/linguist/languages.yml. I've submitted a pull request to add .xql and .xqm, https://github.com/github/linguist/pull/338. _______________________________________________ talk at x-query.com http://x-query.com/mailman/listinfo/talk From christian.gruen at gmail.com Mon Jan 7 13:49:44 2013 From: christian.gruen at gmail.com (=?ISO-8859-1?Q?Christian_Gr=FCn?=) Date: Mon, 7 Jan 2013 22:49:44 +0100 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: References: Message-ID: Hi Joe, in BaseX, .xq is used for main modules and .xqm for library modules (including RESTXQ modules). The main motivation for this was similar to yours: .xq is short, there was some need to distinguish between main and library modules, and there was no convention what would be the best choice. The current solution seems quite intuitive to most of our users, but I agree that your convention makes some sense, and is closer to the terminology of the XQuery spec. Best, Christian ___________________________ On Mon, Jan 7, 2013 at 10:33 PM, Joe Wicentowski wrote: > Hi all, > > There is quite a profusion of file extensions for XQuery: .xq, .xqy, > .xql, .xqm, and .xquery. Perhaps this profusion has happened the spec > doesn't say anything about the file extensions. This has opened up > the choice to each implementation and each community/project. I'd be > interested to know which communities use which file naming > conventions, and if there is any consensus? What do you use, and why? > > My experience: When I first started learning XQuery I used .xq for > everything -- I guess because it's short. oXygen uses .xquery as its > default file extension for XQuery files but recognizes all of the > above as XQuery files. The MarkLogic community seems to use .xqy. > When I started to write library modules I started to use .xqm, with > the 'm' indicating module. I saw yet others in the eXist-db community > using .xql, though it allows all of the above. Github doesn't > currently recognize .xql or .xqm as XQuery [1]. Diversity is fine, > but the downside is that newcomers are certainly confused, and anytime > we share code there is no reliable way to know whether a file is a > library or main module without opening it up. > > The spec does make a distinction that seems to apply to XQuery files. > It states that there are two kinds of modules: *library* modules and > *main* modules. The distinction is that library modules contain only > functions, whereas main modules contain a single main routine (though > can also contain function declarations). (See these two terms defined > in the spec at http://www.w3.org/TR/xquery/#dt-library-module and > http://www.w3.org/TR/xquery/#dt-main-module.) > > It seems to me that any good XQuery file naming convention should > reflect this distinction between *library* and *main* modules. > > After thinking about this, I think .xql and .xqm make good candidates > for a file naming convention, since they mnemonically reflect the > distinction between library (L) and main (M). Where does that leave > .xq, .xqy, or .xquery? I guess they're acceptable alternatives to .xq > for main modules, but in my own new projects I think I'm going to go > with .xql and .xqm. > > What practices do you use? What do you think? Does your > implementation/community document your practice? > > Joe > > [1] https://github.com/github/linguist/blob/master/lib/linguist/languages.yml. > I've submitted a pull request to add .xql and .xqm, > https://github.com/github/linguist/pull/338. > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From adam.retter at googlemail.com Tue Jan 8 01:19:49 2013 From: adam.retter at googlemail.com (Adam Retter) Date: Tue, 8 Jan 2013 09:19:49 +0000 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: References: Message-ID: Joe, I currently do the opposite to you, I adopted this because some eXist folks were doing it before me. i.e. .xql for main modules (XQuery Language) and .xqm for library modules (XQuery Module). However now I think about it, it does not make as much sense as your proposal of reversing it. I think as David says, we first have to think about whether there should be a distinction in the naming between main modules and library modules. However, I would note that David's suggestion to use .x could be problematic. As .x is already used for DirectX model files. On 7 January 2013 21:33, Joe Wicentowski wrote: > Hi all, > > There is quite a profusion of file extensions for XQuery: .xq, .xqy, > .xql, .xqm, and .xquery. Perhaps this profusion has happened the spec > doesn't say anything about the file extensions. This has opened up > the choice to each implementation and each community/project. I'd be > interested to know which communities use which file naming > conventions, and if there is any consensus? What do you use, and why? > > My experience: When I first started learning XQuery I used .xq for > everything -- I guess because it's short. oXygen uses .xquery as its > default file extension for XQuery files but recognizes all of the > above as XQuery files. The MarkLogic community seems to use .xqy. > When I started to write library modules I started to use .xqm, with > the 'm' indicating module. I saw yet others in the eXist-db community > using .xql, though it allows all of the above. Github doesn't > currently recognize .xql or .xqm as XQuery [1]. Diversity is fine, > but the downside is that newcomers are certainly confused, and anytime > we share code there is no reliable way to know whether a file is a > library or main module without opening it up. > > The spec does make a distinction that seems to apply to XQuery files. > It states that there are two kinds of modules: *library* modules and > *main* modules. The distinction is that library modules contain only > functions, whereas main modules contain a single main routine (though > can also contain function declarations). (See these two terms defined > in the spec at http://www.w3.org/TR/xquery/#dt-library-module and > http://www.w3.org/TR/xquery/#dt-main-module.) > > It seems to me that any good XQuery file naming convention should > reflect this distinction between *library* and *main* modules. > > After thinking about this, I think .xql and .xqm make good candidates > for a file naming convention, since they mnemonically reflect the > distinction between library (L) and main (M). Where does that leave > .xq, .xqy, or .xquery? I guess they're acceptable alternatives to .xq > for main modules, but in my own new projects I think I'm going to go > with .xql and .xqm. > > What practices do you use? What do you think? Does your > implementation/community document your practice? > > Joe > > [1] https://github.com/github/linguist/blob/master/lib/linguist/languages.yml. > I've submitted a pull request to add .xql and .xqm, > https://github.com/github/linguist/pull/338. > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk From dlee at calldei.com Tue Jan 8 04:29:59 2013 From: dlee at calldei.com (David Lee) Date: Tue, 8 Jan 2013 12:29:59 +0000 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: References: Message-ID: <220256FDE771B74FB662165BC562CF59595FDF67@CH1PRD0811MB418.namprd08.prod.outlook.com> >>However, I would note that David's suggestion to use .x could be >>problematic. As .x is already used for DirectX model files. FYI: this was a "Reductio ad Absurdum" joke ... Back in "The Old Days" on mainframe type systems files had actual "types" independent from their extension - if any. Unix in its ideal simplicity got rid of that. And instead used file extensions ... and magic numbers. "See no types up my sleeves ! " -David From joewiz at gmail.com Fri Jan 11 13:55:33 2013 From: joewiz at gmail.com (Joe Wicentowski) Date: Fri, 11 Jan 2013 16:55:33 -0500 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: <220256FDE771B74FB662165BC562CF59595FDF67@CH1PRD0811MB418.namprd08.prod.outlook.com> References: <220256FDE771B74FB662165BC562CF59595FDF67@CH1PRD0811MB418.namprd08.prod.outlook.com> Message-ID: Thanks to all for your responses! There's merit in all of the approaches that were shared. I'm sympathetic to the idea that we shouldn't have to use file extensions to distinguish between library and main modules. Maybe ".xq" (or ".xquery") across the board makes sense. One thing does bug me about the "module" terminology in the spec. If the spec distinguishes between "library" and "main" modules, why do *only* library modules begin with the "module namespace" construction? Shouldn't *all* modules begin with "module namespace ..."? Or if that's overkill, shouldn't it be "library module namespace ..." instead (as opposed to "main module namespace ...")? In retrospect, I think this "module namespace..." construction is responsible for many of us thinking that a module *is* a library module. I never thought of library vs. main modules. I always thought of "modules" vs. "scripts." If I'd been there on the committee, I think I would've advocated doing away with "module" altogether, and instead promoting "library" and "script". But we've got library and main module, and I guess that's okay. And using file extensions to distinguish between the two, or only using a single extension for all xquery files, are both okay too. Have a good weekend, all Joe From yoshiokamoto at yahoo.com Mon Jan 21 03:07:36 2013 From: yoshiokamoto at yahoo.com (Yoshi Okamoto) Date: Mon, 21 Jan 2013 11:07:36 +0000 (GMT) Subject: [xquery-talk] Conditional use of fn:error() ? In-Reply-To: <50FD01C5.8050004@saxonica.com> References: <50FC65EE.8050607@ifactory.com> <50FC8BCA.50603@saxonica.com> <220256FDE771B74FB662165BC562CF5959618DC7@CH1PRD0811MB418.namprd08.prod.outlook.com> <50FD01C5.8050004@saxonica.com> Message-ID: <1358766456.69194.YahooMailNeo@web172106.mail.ir2.yahoo.com> Dear list subscribers, I noticed that different XQuery processors (BaseX, Saxon, XMLPrime, Zorba) return different results for the following queries: Query A: ? fn:error()[false()] Query B: ? error(())[contains('http://....', 'details')]? Query C: ? let $url := ... ? where contains($url, 'details') ? return error(()) All except for XMLPrime return an empty sequence. Query D: ? let $url := ... ? return error(())[contains($url, 'details')]? All except for Zorba return an error. My original intention was to raise an error whenever a certain condition is true. My questions would be: - what are the correct results for Query A-D? - XMLPrime is the implementation that always raises an error. If this behavior should be correct, how would I proceed to only raise errors under a certain condition? Thank you for your attention and patience. Best regards Yoshi OKAMOTO From mike at saxonica.com Mon Jan 21 03:24:09 2013 From: mike at saxonica.com (Michael Kay) Date: Mon, 21 Jan 2013 11:24:09 +0000 Subject: [xquery-talk] Conditional use of fn:error() ? In-Reply-To: <1358766456.69194.YahooMailNeo@web172106.mail.ir2.yahoo.com> References: <50FC65EE.8050607@ifactory.com> <50FC8BCA.50603@saxonica.com> <220256FDE771B74FB662165BC562CF5959618DC7@CH1PRD0811MB418.namprd08.prod.outlook.com> <50FD01C5.8050004@saxonica.com> <1358766456.69194.YahooMailNeo@web172106.mail.ir2.yahoo.com> Message-ID: <50FD2559.8010704@saxonica.com> For all these queries, implementations have the option whether to evaluate the base expression (error()) before or after evaluating the predicate. If the value of a predicate doesn't depend on the focus, rewriting A[B] as "if (B) then A else ()" is a good thing to do, so many processors will do it. The only reliable way to generate an error conditionally is to use if/then/else (or typeswitch): if (contains('http:...', 'details')) then error() else ... There are specific rules for conditional expressions that prevent optimizers evaluating the then/else branch unless the condition is true/false. Michael Kay Saxonica On 21/01/2013 11:07, Yoshi Okamoto wrote: > Dear list subscribers, > > I noticed that different XQuery processors (BaseX, > Saxon, XMLPrime, Zorba) return different results for the following queries: > > Query A: > fn:error()[false()] > > > Query B: > error(())[contains('http://....', 'details')] > Query C: > let $url := ... > where contains($url, 'details') > return error(()) > > > All except for XMLPrime return an empty sequence. > > > Query D: > let $url := ... > return error(())[contains($url, 'details')] > > All except for Zorba return an error. > > > My original intention was to raise an error whenever a certain condition is true. My questions would be: > > - what are the correct results for Query A-D? > > - XMLPrime is the implementation that always raises an error. If this behavior should be correct, how would I proceed to only raise errors under a certain condition? > > > Thank you for your attention and patience. > > Best regards > Yoshi OKAMOTO > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > From yoshiokamoto at yahoo.com Mon Jan 21 03:45:56 2013 From: yoshiokamoto at yahoo.com (Yoshi Okamoto) Date: Mon, 21 Jan 2013 11:45:56 +0000 (GMT) Subject: [xquery-talk] Conditional use of fn:error() ? In-Reply-To: <50FD2559.8010704@saxonica.com> References: <50FC65EE.8050607@ifactory.com> <50FC8BCA.50603@saxonica.com> <220256FDE771B74FB662165BC562CF5959618DC7@CH1PRD0811MB418.namprd08.prod.outlook.com> <50FD01C5.8050004@saxonica.com> <1358766456.69194.YahooMailNeo@web172106.mail.ir2.yahoo.com> <50FD2559.8010704@saxonica.com> Message-ID: <1358768756.33922.YahooMailNeo@web172102.mail.ir2.yahoo.com> Dear Michael Kay, this was a quick and excellent reply, which answered all my open questions. Best regards Yoshi OKAMOTO ----- Original Message ----- From: Michael Kay To: talk at x-query.com Cc: Sent: Monday, January 21, 2013 12:24 PM Subject: Re: [xquery-talk] Conditional use of fn:error() ? For all these queries, implementations have the option whether to evaluate the base expression (error()) before or after evaluating the predicate. If the value of a predicate doesn't depend on the focus, rewriting A[B] as "if (B) then A else ()" is a good thing to do, so many processors will do it. The only reliable way to generate an error conditionally is to use if/then/else (or typeswitch): if (contains('http:...', 'details')) then error() else ... There are specific rules for conditional expressions that prevent optimizers evaluating the then/else branch unless the condition is true/false. Michael Kay Saxonica On 21/01/2013 11:07, Yoshi Okamoto wrote: > Dear list subscribers, > > I noticed that different XQuery processors (BaseX, > Saxon, XMLPrime, Zorba) return different results for the following queries: > > Query A: >? ? fn:error()[false()] > > > Query B: >? ? error(())[contains('http://....', 'details')] > Query C: >? ? let $url := ... >? ? where contains($url, 'details') >? ? return error(()) > > > All except for XMLPrime return an empty sequence. > > > Query D: >? ? let $url := ... >? ? return error(())[contains($url, 'details')] > > All except for Zorba return an error. > > > My original intention was to raise an error whenever a certain condition is true. My questions would be: > > - what are the correct results for Query A-D? > > - XMLPrime is the implementation that always raises an error. If this behavior should be correct, how would I proceed to only raise errors under a certain condition? > > > Thank you for your attention and patience. > > Best regards > Yoshi OKAMOTO > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > _______________________________________________ talk at x-query.com http://x-query.com/mailman/listinfo/talk From mike at saxonica.com Mon Jan 21 10:59:26 2013 From: mike at saxonica.com (Michael Kay) Date: Mon, 21 Jan 2013 18:59:26 +0000 Subject: [xquery-talk] treat as In-Reply-To: <50FD6FEF.4020201@ifactory.com> References: <50FC65EE.8050607@ifactory.com> <50FC8BCA.50603@saxonica.com> <220256FDE771B74FB662165BC562CF5959618DC7@CH1PRD0811MB418.namprd08.prod.outlook.com> <50FD01C5.8050004@saxonica.com> <220256FDE771B74FB662165BC562CF595961C0C5@CH1PRD0811MB418.namprd08.prod.outlook.com> <50FD6FEF.4020201@ifactory.com> Message-ID: <50FD900E.6090202@saxonica.com> David - I've run across them in a somewhat obscure context, I guess. I've written an XQuery processor that rewrites queries originally parsed by Saxon, basically serializing them in the process. All I can tell you is that Saxon generates an internal expression (ItemChecker) that is documented as corresponding to "treat as" in some cases where there was no "treat as" in the original supplied expression. > > I think this happens, eg, if you declare a variable with a certain > type (so the type will be checked dynamically when the assignment is > done), but later references to the variable's value can be wrapped in > a "treat as" so that the compiler can assume that the variable has the > declared type and perform suitable automatic type inferencing. But > that's just a guess :) > > -Mike "treat as" is basically a dynamic type check. Saxon does optimistic static typing, which basically means that it automatically inserts "treat as" expressions into the expression tree whenever it finds a construct that isn't statically type safe. So if you write $a/child::node() and the type of $a isn't statically known, Saxon rewrites it as ($a treat as node()*)/child::node() which is what you would have to write yourself in a system with pessimistic type checking (either that, or you would add a type declaration to the declaration of variable $a). Michael Kay Saxonica From joewiz at gmail.com Tue Jan 22 15:21:24 2013 From: joewiz at gmail.com (Joe Wicentowski) Date: Tue, 22 Jan 2013 18:21:24 -0500 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: References: <220256FDE771B74FB662165BC562CF59595FDF67@CH1PRD0811MB418.namprd08.prod.outlook.com> Message-ID: Hi all, I just noticed a new one: .xu. This extension appears in oXygen's File > Save dialog in Windows when you are saving an XQuery file: Save as type: XQUERY, XQ, XQL, XQM, XQY, XU Hadn't seen that one before. What could it mean? XUpdate? But XUpdate isn't XQuery... Maybe we should adopt it so that we can pronounce our files' extensions as "dot zoo"! Joe On Fri, Jan 11, 2013 at 4:55 PM, Joe Wicentowski wrote: > Thanks to all for your responses! There's merit in all of the > approaches that were shared. > > I'm sympathetic to the idea that we shouldn't have to use file > extensions to distinguish between library and main modules. Maybe > ".xq" (or ".xquery") across the board makes sense. > > One thing does bug me about the "module" terminology in the spec. If > the spec distinguishes between "library" and "main" modules, why do > *only* library modules begin with the "module namespace" construction? > Shouldn't *all* modules begin with "module namespace ..."? Or if > that's overkill, shouldn't it be "library module namespace ..." > instead (as opposed to "main module namespace ...")? > > In retrospect, I think this "module namespace..." construction is > responsible for many of us thinking that a module *is* a library > module. I never thought of library vs. main modules. I always > thought of "modules" vs. "scripts." If I'd been there on the > committee, I think I would've advocated doing away with "module" > altogether, and instead promoting "library" and "script". > > But we've got library and main module, and I guess that's okay. And > using file extensions to distinguish between the two, or only using a > single extension for all xquery files, are both okay too. > > Have a good weekend, all > Joe From adam.retter at googlemail.com Tue Jan 22 15:35:50 2013 From: adam.retter at googlemail.com (Adam Retter) Date: Tue, 22 Jan 2013 23:35:50 +0000 Subject: [xquery-talk] XQuery file naming conventions (xq, xqy, xql, xqm, xquery, etc.) In-Reply-To: References: <220256FDE771B74FB662165BC562CF59595FDF67@CH1PRD0811MB418.namprd08.prod.outlook.com> Message-ID: Maybe its Xquery Update... whatever that would mean standalone?!? On 22 January 2013 23:21, Joe Wicentowski wrote: > Hi all, > > I just noticed a new one: .xu. This extension appears in oXygen's > File > Save dialog in Windows when you are saving an XQuery file: > > Save as type: XQUERY, XQ, XQL, XQM, XQY, XU > > Hadn't seen that one before. What could it mean? XUpdate? But > XUpdate isn't XQuery... > > Maybe we should adopt it so that we can pronounce our files' > extensions as "dot zoo"! > > Joe > > On Fri, Jan 11, 2013 at 4:55 PM, Joe Wicentowski wrote: >> Thanks to all for your responses! There's merit in all of the >> approaches that were shared. >> >> I'm sympathetic to the idea that we shouldn't have to use file >> extensions to distinguish between library and main modules. Maybe >> ".xq" (or ".xquery") across the board makes sense. >> >> One thing does bug me about the "module" terminology in the spec. If >> the spec distinguishes between "library" and "main" modules, why do >> *only* library modules begin with the "module namespace" construction? >> Shouldn't *all* modules begin with "module namespace ..."? Or if >> that's overkill, shouldn't it be "library module namespace ..." >> instead (as opposed to "main module namespace ...")? >> >> In retrospect, I think this "module namespace..." construction is >> responsible for many of us thinking that a module *is* a library >> module. I never thought of library vs. main modules. I always >> thought of "modules" vs. "scripts." If I'd been there on the >> committee, I think I would've advocated doing away with "module" >> altogether, and instead promoting "library" and "script". >> >> But we've got library and main module, and I guess that's okay. And >> using file extensions to distinguish between the two, or only using a >> single extension for all xquery files, are both okay too. >> >> Have a good weekend, all >> Joe -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk