[xml-dev] Re: XML Entity Catalogue

Jesse Glick <[email protected]> Thu, 24 Apr 2003 12:28:26 -0400
Newsgroups gmane.comp.java.netbeans.modules.xml.devel
Organization Sun Microsystems / NetBeans
Message-ID <[email protected]>
[moved from dev@openide]

Petr Kuzel wrote:
> Starting with NB 3.5 each module can define
> and mount catalogs. Web module automatically mounts deployment
> descriptors DTDs, apisupport module would automatically mount the 
> Netbeans system catalog, .... XML Catalog module itself is not
> the right place for defining automatically mounted catalogs.
> 
> See <http://xml.netbeans.org/issues/show_bug.cgi?id=22848>.

I still disagree with the design of the new API, as I think I mentioned 
in issue #22848, with a suggested alternative in issue #26243. Don't 
care so much whether Lookup is used to find the catalogs rather than 
e.g. a direct FolderInstance, though that would be most proper given the 
current architecture of NetBeans; more critical is that the defining 
folder for the catalogs should be beneath Services/ and that user-added 
catalogs should be stored in the same place as the module extension 
area. Some problems I can see with the current approach:

1. Inconsistency with usage of e.g. Mount/ folder, and almost everything 
else in NetBeans that consists of a set of services that can be added by 
modules and/or users.

2. User-added catalogs are serialized to 
Services/Hidden/org-netbeans-modules-xml-catalog-settings-CatalogSettings.settings 
in unreadable form when they could be added as individual service files 
to e.g. Services/XMLCatalogs/.

3. Nonstandard UI (Runtime tab rather than Options, Unmount rather than 
Delete, no Change Order action, etc.) is encouraged by the nonstandard 
design.

4. No ability to make a catalog project-specific or revert a catalog 
change from default settings.

5. Storage of user-added catalogs will need to be changed to work with 
the Registry API or whatever in 4.0, so the work has just been deferred.

-Jesse

-- 
Jesse Glick <mailto:[email protected]> x22801
NetBeans, Open APIs  <http://www.netbeans.org/>