org.netbeans.modules.xml.catalog

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » IDE Netbeans » xml » org.netbeans.modules.xml.catalog 
org.netbeans.modules.xml.catalog

Catalogs Package

Maintainer: Petr Kuzel

Updated on: 6th feb 2001

Introduction

What is catalog?

In order to use a variety of XML tools in a variety of computer environments, the problem of addressing resources that are inaccessible using their explicit system identifiers must be solved.

The short term solution to this problem is to define an entity catalog that handles the simple cases of mapping an external entity's public identifier and/or system identifier to an alternate URI. This solution allows for a probably system-dependent but application-independent catalog. Though it does not handle all issues that a combination of a complete entity manager and storage manager addresses, it simplifies both the use of multiple products in a great majority of cases and the task of processing documents on different systems.

What is Entity Resolution?

Entity resolution is the process that an XML processor goes through when it has been requested to find another file[1] in the course of processing the file it's working on. The XML processor knows labelling information about the file such as its system identifier and possibly a name, public identifier, and so forth. These identifiers can be used to determine the actual location of the desired external file. This determination process (which "maps" the known labelling information into an actual location) is called an entity resolution, and the file that contains the specific mapping information is called the entity resolution catalog.

[1] file is used here for simplicity, but could be any other resource consisting of such things as declarations, a parsed entity, an unparsed entity, etc.


Requirements

  • Catalog can define public ID to system ID mappings.
  • Catalog must allow to mount user's catalogs
  • Mounted catalog's should be persistent
  • Catalog must provide mappings to OpenIDE APIs
  • Visualize build-in catalog
  • Define catalog SPI

    Dependencies

    OpenIDE should allow to add custom EntityResolvers.

    Developer's View

    OpenIDE Support

    XMLDataObject allows registering custom catalogs by two methods.

    XMLDataObject API

    @deprecated

    I call it Entity Resolving API. It consists of registerCatalogEntry() methods.

    Two new methods have been introduced into it to support users catalogs:

  • addEntityResolver(EntityResolver resolver)
  • removeEntityResolver(EntityResolver resolver)

    The mapping registered by registerCatalogEntry() must stay of

  • the highest priority
  • transient among IDE restarts
  • must use latter registered mapping prevails previous mapping strategy.

    Declarative way

    XMLDataObject recognize well known folder named XML/catalog containing EntityResolver's implemetations registrations.

    The Catalog package put there its implementation of EntityResolver.

    User's Persistent Catalogs

    A user can have its own catalog on some place following some DTD or other format (SOCAT). This feature supports integration of such catalogs into IDE mappings. Every catalog must provide a CatalogReader interface implementation. See SPI interface for details.

    The catalog implementation provides a EntityResolver implementation based upon mounted catalogs. The resolver is registered into the IDE resolver chain. See JavaDoc.


    User's View

    A user will browse and manage catalog using a node structure.
     + XML Catalog Browser ~-------------------------{root}
       + System Catalog [ro] ~--------------------{catalog}
       | + -//Netbeans Toolbars DTD//EN ~---{catalog entry}
       | + -//Other system DTD//EN
       | + -//X Catalog//EN
       + My SOCAT [ro]
       + My XCatalog [rw]
         + +//WML 1.1//EN
    

    Catalog Root

    Root of all catalogs used in system. It always contains a system catalog as a child.

    Actions:

      New -> some catalog provider: creates a new catalog provider bean

    Catalog

    A catalog must be mounted by New action at Catalog Root. One mounted then all actions in XML module use mappings defined by the catalog. Depending on catalog type the mounting is persistent in per project basis.

    Actions:

      Delete: remove it if user confirms

      Refresh: refreshes a catalog content

    Catalog Entry

    It may be read-only depending on catalog provider type.

    Actions:

      View: try to open the entity in read-only editor

    Properties:

      Public ID: a mapping key

      System ID: a mapped value

  • Java Source File NameTypeComment
    AddCatalogEntryAction.javaClass
    CatalogAction.javaClass
    CatalogEntityResolver.javaClass An entity resolver that can resolve all registrations in catalogs mounted by a user. This is not exposed catalog package API.
    CatalogEntry.javaClass Represents catalog entry keyed by a public ID.
    CatalogEntryBeanInfo.javaClass
    CatalogEntryNode.javaClass Node representing single catalog entry.
    CatalogEntryPanel.javaClass
    CatalogMounterModel.javaClass Data holder driving CatalogMounterPanel.
    CatalogMounterPanel.javaClass Panel for selecting catalog providers showing customizer for selected one.
    CatalogNode.javaClass Node representing a catalog.
    CatalogPanel.javaClass
    CatalogRootNode.javaClass Node representing catalog root in the Runtime tab.
    Refreshable.javaInterface Interface implemented by refreshable nodes.
    RefreshAction.javaClass Action sensitive to the node selection that refreshs children.
    www.java2java.com | Contact Us
    Copyright 2009 - 12 Demo Source and Support. All rights reserved.
    All other trademarks are property of their respective owners.