Document type & framework: external storage

Hi, In the Document Type dialog, if you choose external storage, oXygen still requires to have the framework file as being a descendant of the oXygen's frmework dir (see enclosed screenshot). Is it really the intended behaviour? Regards, -- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/

Hi, Yes, that is the intended behaviour. There are no explicit references in the Oxygen options to any of the .framework files. The files have to be located somewhere in the designated frameworks directory because that's where Oxygen looks for them at startup. If you place them elsewhere they will be ignored. Simply create a subdirectory in your Oxygen frameworks directory and place the .framework file there. If you want to relocate the frameworks directory to a different location, go to Options > Preferences, Global, enable the option "Use a custom frameworks directory" and browse for the new directory. Note that if you still want to use some of the built-in frameworks that Oxygen provides you will have to manually copy them to this new directory from the original frameworks directory(Oxygen/frameworks). Regards, Adrian Adrian Buza oXygen XML Editor and Author Support Tel: +1-650-352-1250 ext.202 Fax: +40-251-461482 support@oxygenxml.com http://www.oxygenxml.com Florent Georges wrote:
Hi,
In the Document Type dialog, if you choose external storage, oXygen still requires to have the framework file as being a descendant of the oXygen's frmework dir (see enclosed screenshot). Is it really the intended behaviour?
Regards,
------------------------------------------------------------------------
------------------------------------------------------------------------
_______________________________________________ oXygen-user mailing list oXygen-user@oxygenxml.com http://www.oxygenxml.com/mailman/listinfo/oxygen-user

Adrian Buza wrote: Thanks, Adrian.
If you want to relocate the frameworks directory to a different location, go to Options > Preferences, Global, enable the option "Use a custom frameworks directory" and browse for the new directory. Note that if you still want to use some of the built-in frameworks that Oxygen provides you will have to manually copy them to this new directory from the original frameworks directory(Oxygen/frameworks).
The problem with that approach is every time I upgrade oXygen. In that case, I'd like 1/ the built-in framework to be upgraded (or replaced if you prefer) and 2/ the framework I create or install from third-parties to be kept... I guess that could be easily solved by having an "additional framework dir" (as opposed to "another location for the framework dir"). Thanks for the explanation! Regards, -- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/

Hi, I see your point. However, implementing an "additional framework dir" isn't that simple right now. All the frameworks depend on an editor variable that points to the frameworks directory: ${frameworksDir}. This assumes the frameworks directory is unique. ${frameworksDir} would have to be resolved to a different location when the framework is located in the "additional framework dir" instead of the default framework directory. This complicates things to some degree. There are a few possible solutions, one being to replace the references to ${frameworksDir}\<frameworkName> with a new editor variable. e.g. ${currentFramework}. This is still open for debate. I've logged your suggestion on our issue tracking tool. Regards, Adrian Adrian Buza oXygen XML Editor and Author Support Florent Georges wrote:
Adrian Buza wrote:
Thanks, Adrian.
If you want to relocate the frameworks directory to a different location, go to Options > Preferences, Global, enable the option "Use a custom frameworks directory" and browse for the new directory. Note that if you still want to use some of the built-in frameworks that Oxygen provides you will have to manually copy them to this new directory from the original frameworks directory(Oxygen/frameworks).
The problem with that approach is every time I upgrade oXygen. In that case, I'd like 1/ the built-in framework to be upgraded (or replaced if you prefer) and 2/ the framework I create or install from third-parties to be kept... I guess that could be easily solved by having an "additional framework dir" (as opposed to "another location for the framework dir").
Thanks for the explanation! Regards,
-- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/

Adrian Buza wrote Thanks, Adrian.
There are a few possible solutions, one being to replace the references to ${frameworksDir}\<frameworkName> with a new editor variable. e.g. ${currentFramework}. This is still open for debate.
That would impose one to know where the framework is installed (either in the "main" or "additional" framework dir), which IMHO would make the feature less useful. What about something like that: ${framework(xspec)} It would look for a subdir "xspec" in either framework dir, with one taking precedence over the other (not 100% sure which one should have precedence though). Regards, -- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/

It looks like you're moving in the direction of, instead of $frameworksDir, having $frameworksPath. On Wed, Feb 15, 2012 at 5:49 AM, Florent Georges <lists@fgeorges.org> wrote:
Adrian Buza wrote
Thanks, Adrian.
There are a few possible solutions, one being to replace the references to ${frameworksDir}\<frameworkName> with a new editor variable. e.g. ${currentFramework}. This is still open for debate.
That would impose one to know where the framework is installed (either in the "main" or "additional" framework dir), which IMHO would make the feature less useful. What about something like that:
${framework(xspec)}
It would look for a subdir "xspec" in either framework dir, with one taking precedence over the other (not 100% sure which one should have precedence though).
Regards,
-- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/ _______________________________________________ oXygen-user mailing list oXygen-user@oxygenxml.com http://www.oxygenxml.com/mailman/listinfo/oxygen-user

Let me clarify with an example. ${frameworksDir} expands to the frameworks directory. By default that is: /path/to/oxygen/frameworks If you use a custom frameworks directory, then ${frameworksDir} points to that directory. The DocBook 4 framework file is now located in: /path/to/oxygen/frameworks/docbook/docbook4.framework Currently the references to any files from the DocBook 4 framework directory are like this: ${frameworksDir}/docbook/path/to/file These references are generally made from inside the framework file itself. ${framework(docbook)} would also work, but it still specifies the name of the framework subdir and we would like to avoid that as well. What we are planning is to use a generic editor variable ${currentFramework}(or ${framework}) that expands to the parent directory of the .framework file. So, for the DocBook 4 example above that would translate to : ${currentFramework} when used in the DocBook 4 framework context would expand to: /path/to/oxygen/frameworks/docbook So the references would be: ${currentFramework}/path/to/file This eliminates both the dependence on the common frameworks dir and the specific framework subdir will also resolves the problems that appear when you want to duplicate a framework. I've added your suggestion to the issue and we will also consider that possibility. Regards, Adrian Adrian Buza oXygen XML Editor and Author Support Florent Georges wrote:
Adrian Buza wrote
Thanks, Adrian.
There are a few possible solutions, one being to replace the references to ${frameworksDir}\<frameworkName> with a new editor variable. e.g. ${currentFramework}. This is still open for debate.
That would impose one to know where the framework is installed (either in the "main" or "additional" framework dir), which IMHO would make the feature less useful. What about something like that:
${framework(xspec)}
It would look for a subdir "xspec" in either framework dir, with one taking precedence over the other (not 100% sure which one should have precedence though).
Regards,
-- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/

Adrian Buza wrote: Hi, Thanks Adrian, and sorry for the late response.
${frameworksDir} expands to the frameworks directory. By default that is: /path/to/oxygen/frameworks If you use a custom frameworks directory, then ${frameworksDir} points to that directory.
So if I am right, the built-in frameworks won't be part of oXygen anymore when we use a custom frameworks dir, so they won't be updated when updating oXygen itself. Unless I missed something. This is not really a viable solution I think.
${frameworksDir}/docbook/path/to/file These references are generally made from inside the framework file itself.
Sounds weird to me. Why not using relative references in files from within the framework itself? I thought more about references in scenarios.
${framework(docbook)} would also work, but it still specifies the name of the framework subdir and we would like to avoid that as well.
But you need it with either techniques, don't you? Whether you say ${framework(docbook)} or ${frameworksDir}/docbook, you explicitely use the name of the framework.
${currentFramework}/path/to/file This eliminates both the dependence on the common frameworks dir and the specific framework subdir will also resolves the problems that appear when you want to duplicate a framework.
I am not sure to understand this paragraph. BTW, I like Chris's idea of a framework path ;-) Regards, -- Florent Georges http://fgeorges.org/ http://h2oconsulting.be/

Hi Florent, Just to clarify this: On 2/22/12 6:00 PM, Florent Georges wrote:
${currentFramework}/path/to/file
This eliminates both the dependence on the common frameworks dir and the specific framework subdir will also resolves the problems that appear when you want to duplicate a framework. I am not sure to understand this paragraph.
Let's say you have a framework that is stored in [oXygen]/frameworks/xproject/xproject.framework Then, Adrian proposed that the ${currentFramework} will be expanded to the folder containing your framework, in this case that will be [oXygen]/frameworks/xproject Thus, basically you should be able to use this variable to specify paths to resources needed for the framework configuration (of course, this will be equivalent with allowing relative locations that will be automatically expanded taken into account the .framework configuration file that contains them. Best Regards, George -- George Cristian Bina <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger http://www.oxygenxml.com
participants (4)
-
Adrian Buza
-
Chris Maloney
-
Florent Georges
-
George Cristian Bina