|
[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message] Re: How do different XQuery products implement modules?Dan Muresan danmbox at gmail.comFri Oct 17 18:38:09 PDT 2008
Hi, here are the answers for Zorba (http://www.zorba-xquery.com/): >> 1. Is the module URI just an arbitrary character string, or does it >> have any semantics? It is an arbitrary character string. >> 1a. In particular, is it the location of a resource on the web? This is not required; however, users can supply module URI resolvers that may choose to attach arbitrary meaning to the module URI (this is work in progress). >> 2. Do you allow several different modules in the same query to have >> the same module URI? Yes, but all modules sharing the same module URI must be imported from a single "import module" declaration (by specifying multiple location hints). >> 2a. if so, can different "import module" declarations import different >> subsets of these? No. >> 3. Can users import a module without specifying a location URI? If so, how >> is the module located? Not by default. However, a user-supplied module URI resolver can process the module namespace and location hints arbitrarily to generate one (or more) final locations. >> 4. If import module specifies a location URI, is it used, and if so how? It is used to locate a local file or a web location. >> 5. If import module specifies more than one location URI, how are they >> used? By default, each location hint URI is processed separately to yield a separate LibraryModule. Custom module URI resolvers can do whatever the user wants (possibly yielding fewer or more LibraryModule's than the supplied hints). >> 5b. If multiple location URIs are allowed, what happens if >> import module specifies the same location URI more than once? By default, redundant hints are ignored. >> 6. What happens when two modules A and B both import module URI M >> >> 6a. specifying the same location URI A single instance of the module M is created. >> 6b. specifying different location URIs If the two location URIs are equivalent up to relative URI resolution, same as above. If not, then two distinct modules are imported. >> 6c. without specifying a location URI This can only happened with a user-supplied module URI resolver, and the result then depends on the user's code. >> 7. Is it possible (by means of multiple imports) to create two different >> "instances" of the same module in a query, with distinct values of global >> variables, or do all imports get the same instance with a common set of >> variables? A single instance of a module is ever created. If a module is addressable by two distinct URI's (e.g. in Unix, if file mod2.xq is a symlink to mod1.xq), then these behave as two separate modules with identical source code. -- Dan Muresan
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






