xml

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 
License:
URL:
Description:
Package NameComment
org.netbeans.api.xml.lexer
org.netbeans.jellytools.modules.css.actions
org.netbeans.jellytools.modules.xml
org.netbeans.jellytools.modules.xml.actions
org.netbeans.jellytools.modules.xml.catalog
org.netbeans.jellytools.modules.xml.catalog.actions
org.netbeans.jellytools.modules.xml.catalog.nodes
org.netbeans.jellytools.modules.xml.catalog.operators
org.netbeans.jellytools.modules.xml.saxwizard
org.netbeans.jellytools.modules.xsl.actions
org.netbeans.lib.xml.lexer
org.netbeans.modules.xml
org.netbeans.modules.xml.actions
org.netbeans.modules.xml.api
org.netbeans.modules.xml.api.model XML Code Completion

XML Model SPIs

The SPI defines an interface of GrammarQuery provider. Once registered (the registration methods depends on particular client) it can reply to queries that can be resolved with a grammar knowledge. It reuses DOM interfaces for context definition however their semantics can be slightly changed. Most notably the DOM is read-only and may throw DOMException.UNSUPPORTED_OPERATION from more methods than defined by DOM IDLs.

How to Register a Provider

Default GrammarQuery registration mechanism uses Lookup. Modules providing an implementation can register {@link org.netbeans.modules.xml.api.model.GrammarQueryManager} at default filesystem. Such registration can be than located by clients using {@link org.netbeans.modules.xml.api.model.GrammarQueryManager#getDefault} which returns an implementation proxing to registered ones.

XML Code Completion ("XCC") SPI Requirements

XML Phenomens to be Completed

  • pairing end tag (must be solved by a client)
  • element name and content
  • attribute name and value (enumerated, ...)
  • namespace prefix (namespaces declared)
  • general reference name
  • parameter reference name
  • prolog content (must be solved by a client)

XCC Context

All bellow can be described by read-only DOM Node context.
  • Current namespace (possibly derived from parents)
  • Parents
  • Siblings
  • Attributes (what about default ones)
Document content that is not described by DOM Node that must be extra handled by a client:
Entity Prolog
extra handling is easy no grammar required
DTD Stuff
what about it? exclude this support in GrammarQuery
Document DTD if any (note it is a responsibility of a binder)

XCC Interface

XCC behaviour should be pluggable, XML module should provide a default implementation for:
well formed document
document history based completion (at least pairing tags)
DTD grammar based completion
content is forced by a DTD grammar
Schema grammar based completion
must be namespace aware
Particular XCC plugins can add some well-known global attributes at element content or can provide information that is not provided by grammar (Ant task names and content) or can handle new type of grammar.

Integration with Text Editor

Text editor must provide its context as virtual read-only Node representing just edited phenomenon (therefore itself invalid).

Narrowing Context

Node context can be narrowed by knowledge of characters precending caret.
whitespace in content
complete element name, the first option is pairing end tag
<ns:prefix
complete element name starting with the prefix defined in given ns (detect that document use : for ordinary naming)
</prefix
complete pairing end tag starting with prefix
<prefix
complete element name or namespace starting with the prefix
[prefix after] whitespace in element start tag markup
complete namespace prefix of attribute name (global)
&prefix
list all declared general entities starting with prefix
pseudo attribute name in prolog
complete one of: version, standalone, encoding
pseudo attribute value in prolog
complete from list of known values (encodings)

Integration with Tree Editor

Narrowing Context

All particular text field values may be used as prefix, but in this mode all other values can be hidden. http://xml.netbeans.org/issues/show_bug.cgi?id=14296
org.netbeans.modules.xml.axi
org.netbeans.modules.xml.axi.datatype
org.netbeans.modules.xml.axi.impl
org.netbeans.modules.xml.axi.sync
org.netbeans.modules.xml.axi.util
org.netbeans.modules.xml.axi.visitor
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

  • org.netbeans.modules.xml.catalog.impl Catalog providers implementations

    Catalog providers package

    Maintainer: Petr Kuzel

    Updated on: 6th feb 2001

  • SystemCatalogReader provides access to Netbeans build in catalog
  • XCatalogReader provides acess to catalogs following this DTD
    
    
    <!ELEMENT XMLCatalog (Map | Remap | Delegate | Extend | Base)+>
    
    <!ELEMENT Map EMPTY>
    <!ATTLIST Map
      PublicId CDATA #REQUIRED
      HRef CDATA #REQUIRED>
    
    <!ELEMENT Remap EMPTY>
    <!ATTLIST Remap
      SystemId CDATA #REQUIRED
      HRef CDATA #REQUIRED>
    
    <!ELEMENT Delegate EMPTY>
    <!ATTLIST Delegate
      PublicId CDATA #REQUIRED
      HRef CDATA #REQUIRED>
    
    <!ELEMENT Extend EMPTY>
    <!ATTLIST Extend
      HRef CDATA #REQUIRED>
    
    <!ELEMENT Base EMPTY>
    <!ATTLIST Base
      HRef CDATA #REQUIRED>
    
    
    It will move towards specs
  • org.netbeans.modules.xml.catalog.impl.sun This package represents a bridge to Sun's Entity and URI resolvers 1.1 that implements various catalog standards: OASIS, OASIS XML, TR9401 and XML Catalog v0.4.
    org.netbeans.modules.xml.catalog.lib
    org.netbeans.modules.xml.catalog.settings
    org.netbeans.modules.xml.catalog.spi

    XML Entity Catalog SPI

    Maintainer: Petr Kuzel

    Updated on: 31st June 2001

    SPI Overview

    The SPI is very simple, there is only one mandatory interface to be implemented. Then the implementation must be integrated with IDE.

    SPI Implementator Guide

    Every SPI implementation must implement interface {@link org.netbeans.modules.xml.catalog.spi.CatalogReader CatalogReader} allowing quering catalog for entries, refreshing its content and optionaly listening on its content.

    An SPI implementation should implement following interfaces:

    • {@link org.netbeans.modules.xml.catalog.spi.CatalogDescriptor CatalogDescriptor} describing catalog instance
    • {@link org.netbeans.modules.xml.catalog.spi.CatalogWriter CatalogWriter} allowing to modify catalog entries
    • SAX's org.xml.sax.EntityResolver if it can resolve more complicated cases than public => system ID mappings

    NetBeans IDE Platform Integration

    An SPI implementation can register its availability using NetBeans Lookup. A module providing a new SPI implementation registers its avaiability using {@link org.netbeans.modules.xml.catalog.spi.CatalogProvider CatalogProvider} instance (declared at its XML Layer):
      <folder name="Services">
        <folder name="Hidden">
          <file name="my-company-netbeans-catalog-impl-MyProvider.instance" />
        </filder>
      </folder>
    
    Where my.company.netbeans.catalog.impl.MyProvider public no-arg constructor class implements the CatalogProvider interface.

    Using CatalogProvider just provides a kind of factory, so that the user can add one or more instances of the catalog at will. You may instead register a CatalogReader instance directly in your layer in the folder Plugins/XML/UserCatalogs/; such catalogs will be preinstalled and not deletable.

    Forte for Java 3.0 Specifics Feature

    If a catalog implements Serializable interface then its mounting point is persistent among IDE restarts. In such case it is highly recommended to explicitly declare serialVersionUID field.
    org.netbeans.modules.xml.catalog.user
    org.netbeans.modules.xml.catalogsupport
    org.netbeans.modules.xml.catalogsupport.ui.customizer
    org.netbeans.modules.xml.catalogsupport.util
    org.netbeans.modules.xml.cookies

    XML Cookies

    XML DataObject allows plugin cookies. Most of this package is implementation of plugin cookies framework.
    org.netbeans.modules.xml.core
    org.netbeans.modules.xml.core.lib
    org.netbeans.modules.xml.dtd.grammar Simple DTD completion grammar

    Simple DTD based Completion Grammar Package

    This package implements simple DTD grammar. It means that the grammar can resolve queries by using no document context. It means that if a content model declaration prescribes a sequence and a document already contains starting sequence members the grammar will provide these also because it does not support document context.

    This simplification is same as for HTML grammar provided by editor module.

    On the other hand there it prepared class {@link ContentModel} that handles it. It is ready to be integrated.

    org.netbeans.modules.xml.jaxb
    org.netbeans.modules.xml.jaxb.actions
    org.netbeans.modules.xml.jaxb.api.model
    org.netbeans.modules.xml.jaxb.api.model.events
    org.netbeans.modules.xml.jaxb.cfg.schema
    org.netbeans.modules.xml.jaxb.model
    org.netbeans.modules.xml.jaxb.model.events
    org.netbeans.modules.xml.jaxb.ui
    org.netbeans.modules.xml.jaxb.util
    org.netbeans.modules.xml.lib
    org.netbeans.modules.xml.multiview
    org.netbeans.modules.xml.multiview.cookies
    org.netbeans.modules.xml.multiview.test
    org.netbeans.modules.xml.multiview.test.bookmodel
    org.netbeans.modules.xml.multiview.test.util
    org.netbeans.modules.xml.multiview.ui
    org.netbeans.modules.xml.nbprefuse
    org.netbeans.modules.xml.nbprefuse.layout
    org.netbeans.modules.xml.nbprefuse.render
    org.netbeans.modules.xml.nbprefuse.util
    org.netbeans.modules.xml.refactoring
    org.netbeans.modules.xml.refactoring.impl
    org.netbeans.modules.xml.refactoring.spi
    org.netbeans.modules.xml.refactoring.ui
    org.netbeans.modules.xml.refactoring.ui.views
    org.netbeans.modules.xml.retriever
    org.netbeans.modules.xml.retriever.catalog
    org.netbeans.modules.xml.retriever.catalog.impl
    org.netbeans.modules.xml.retriever.catalog.model
    org.netbeans.modules.xml.retriever.catalog.model.impl
    org.netbeans.modules.xml.retriever.catalog.test
    org.netbeans.modules.xml.retriever.impl
    org.netbeans.modules.xml.schema XML Schema Support It may constitute separate module in future, therefore placing into expected package to avoid typical de/serialization problems.
    org.netbeans.modules.xml.schema.abe
    org.netbeans.modules.xml.schema.abe.action
    org.netbeans.modules.xml.schema.abe.navigator
    org.netbeans.modules.xml.schema.abe.nodes
    org.netbeans.modules.xml.schema.abe.nodes.properties
    org.netbeans.modules.xml.schema.abe.palette
    org.netbeans.modules.xml.schema.abe.visitors
    org.netbeans.modules.xml.schema.abe.wizard
    org.netbeans.modules.xml.schema.actions
    org.netbeans.modules.xml.schema.completion
    org.netbeans.modules.xml.schema.completion.spi
    org.netbeans.modules.xml.schema.completion.util
    org.netbeans.modules.xml.schema.cookies
    org.netbeans.modules.xml.schema.model
    org.netbeans.modules.xml.schema.model.impl
    org.netbeans.modules.xml.schema.model.impl.xdm
    org.netbeans.modules.xml.schema.model.readwrite
    org.netbeans.modules.xml.schema.model.validation
    org.netbeans.modules.xml.schema.model.visitor
    org.netbeans.modules.xml.schema.multiview
    org.netbeans.modules.xml.schema.refactoring
    org.netbeans.modules.xml.schema.refactoring.query
    org.netbeans.modules.xml.schema.refactoring.query.actions
    org.netbeans.modules.xml.schema.refactoring.query.readers
    org.netbeans.modules.xml.schema.refactoring.query.views
    org.netbeans.modules.xml.schema.refactoring.ui
    org.netbeans.modules.xml.schema.refactoring.ui.tree
    org.netbeans.modules.xml.schema.ui.basic
    org.netbeans.modules.xml.schema.ui.basic.editors
    org.netbeans.modules.xml.schema.ui.basic.navigator
    org.netbeans.modules.xml.schema.ui.basic.search
    org.netbeans.modules.xml.schema.ui.basic.spi
    org.netbeans.modules.xml.schema.ui.nodes
    org.netbeans.modules.xml.schema.ui.nodes.categorized
    org.netbeans.modules.xml.schema.ui.nodes.categorized.customizer
    org.netbeans.modules.xml.schema.ui.nodes.categorized.newtype
    org.netbeans.modules.xml.schema.ui.nodes.schema
    org.netbeans.modules.xml.schema.ui.nodes.schema.properties
    org.netbeans.modules.xml.schema.undo
    org.netbeans.modules.xml.schema.wizard
    org.netbeans.modules.xml.spi.dom Model SPI

    Model SPI Description

    The package supports DOM level 1. It can be utilized by {@link org.netbeans.modules.xml.api.model} providers or various DOM wrappers.

    Contributors please keep dependencies as small as possible. Generally DOM and Java Core APIs are permitted.

    org.netbeans.modules.xml.sync
    org.netbeans.modules.xml.tax
    org.netbeans.modules.xml.tax.beans
    org.netbeans.modules.xml.tax.beans.customizer

    TODO

    • Add possibility to set TreeFactory e.g. protected AbstractTreeCustomizer.getFactory()
    org.netbeans.modules.xml.tax.beans.editor
    org.netbeans.modules.xml.tax.cookies
    org.netbeans.modules.xml.tax.parser
    org.netbeans.modules.xml.tax.traversal
    org.netbeans.modules.xml.tax.util
    org.netbeans.modules.xml.text
    org.netbeans.modules.xml.text.api
    org.netbeans.modules.xml.text.completion
    org.netbeans.modules.xml.text.folding
    org.netbeans.modules.xml.text.indent
    org.netbeans.modules.xml.text.navigator
    org.netbeans.modules.xml.text.navigator.base
    org.netbeans.modules.xml.text.structure
    org.netbeans.modules.xml.text.syntax
    org.netbeans.modules.xml.text.syntax.dom Document based DOM

    Document Based DOM

    The package contains DOM level 1 Core and XML module implemetation. The implementation is read-only and is on the fly constructed from Document token chain.

    Open Issues

    Entity references cannot be properly resolved as DTD part and all external stuff is completelly ignored. A callback interface can be established for this purpose:

    public interface EntityReferenceResolver {
        NodeList resolveEntityReference(EntityReference ref) throws IOException;
    }
    

    Attribute values should report DTD defined defaults as it cannot be also retrieved from token chain. In this case can be also introduced a callback or does not stay fully with DOM spec. But is it violation of spec? We are contruction DOM without DTD knowledge so there are not default attributes declared.

    org.netbeans.modules.xml.text.syntax.javacc

    How to use this package

    All Java code in this package is generated using JavaCC tool from .jj files. It used to exist at Metamata WWW pages.

    Developer needs to postprocess generated files by erasing all generated *Stream classes and sources. All .jj grammars import lib subpackage which contains proper implementation of these interfaces/classes.

    This solution is not clean but current JavaCC and editor module does not support better solution. Look for lexer.netbeans.org that should provide stream based lexical analysis for editor that is more suitable for JavaCC generated code.

    XMLSyntax uses more general state stack than DTDSyntax integer array. (It can be easily copy pasted to DTDSyntax shared text section.)

    org.netbeans.modules.xml.text.syntax.javacc.lib
    org.netbeans.modules.xml.text.test
    org.netbeans.modules.xml.tools.actions
    org.netbeans.modules.xml.tools.doclet
    org.netbeans.modules.xml.tools.generator

    XML Generators Package

    Maintainer: Petr Kuzel and Libor Kramolis

    Updated on: 11th Jun 2001

    Introduction

    Generators in this package eliminates writing complex but routine code.

    To do

    What about sample implementation generate attributes switch
    

    Requirements

    Provide Java and XML code generators:
    1. Java code generator creating SAX parser of documents following given DTD.
    2. Java code generator creating DOM scanner (a visitor) of DOM following given DTD.
    3. DTD generator guessing it from an XML document.
    4. All Java generators produces a JAXP compliant code to achieve parser neutrality.

    User's View

    SAX Document Handler Wizard

    This wizard is useful for generating XML content parsers. As typical example can be taken a configuration file or incoming XML message. The wizard generates callback interface that a user implements. Implementing this interface is believed to be simpler and more versionable that implementing pure SAX intefaces directly. The higher level generated handler interface is well defined, type safe and is compatible for compatible DTDs. The concept also saves the user from writing complex dispatch code.

    The generated code depends on DTD availability and therefore does not support namespaces.

    Term: Parslet stay for a set of data convertors.

    Input

    • DTD representing static vocabulary to be recognized
    • DTD mapping allowing to define mapping between the vocabulary and a code. Mapping key is and element name.
    • JAXP version - version of JAXP to be used in generated methods
    • SAX version - version of SAX parser to be used (depends on JAXP version)
    • Output file names where generated code will be placed. There are 1-2 interfaces, 1 recognizer file and empty implementations files.
    A user will customize all above using several steps wizard. The logical steps are provided bellow.

    DTD to Method Mapping Step

    Four types of element declarations are recognized:
    • Data element representing (#PCDATA). It represents a data holder.
    • Empty element representing EMPTY. It represents a data holder.
    • Mixed element representing mixed content. It represents a data holder or a container or both.
    • Container element allowing just another elements. It represents a container.

    A data holder can be mapped into a handling method taking actual data and meta-data where the actual data can be a result of parsing by a parslet. It can be also ignored.

    A container can be mapped into delimiter methods taking meta-data. It can be also ignored.

    The generator detects all DTD declarations and fills a mapping table.

    It maps data holders into handle_elementname(Object data, Attributes meta) event methods using no parslet.

    It maps containers into start_elementname(Attributes meta) and end_elementname(Attributes meta).

    Data Holders to Parslet Mapping Step

    It could constitute next optional step, possibly let a user disable the parslet support at all (e.g. for Schema compatible parsers in future). A parslet accepts names on Java method names that will perform the conversion. Derending on return type the generator tries to guess an implementation. Every parslet is generated as returnTYpe parsetMethodName(String data) throws SAXException method.

    Versions Step

    JAXP and SAX versions compatibility is stated in following matrix.
    SAX\JAXP1.01.1
    1.0OKOK
    2.0not possibleOK

    Output Destination Step

    Generated files are placed into current package. Suggested file names can be modified by a user. Generator left intact users implemetation files if they exist. It replaces content of generated files leaving a backup copy of originals.

    Output

    A code generated according the input. Files to be implemented are opened in editor.

    Generator generates output files overwriting files that are not supposed to be modified by user. Anyway it keep a backup copy of rewritten files. Files to be automatically overwritten are parser, handler interface and parslet interface, these content is driven by the DTD file.

    Wizard Reentrance

    Generator stores last customization done by user to a well known file. The file name is derived from DTD file name. On subsequent start is tries to locate this file and reuse it as much as possible (it depends on level od DTD changes). This mechanism also allows a user to design mappings by creating the settings file by hand. It is an XML document following "-//XML Module//DTD SAX Bindings 1.0//EN" DTD. On other hand by deleting this file user can simply remove wrong settings and let the generator generate defaults.

    DOM Scanner

    It generates a DOM implematation independent visitor (a pattern) of passed DTD.
    org.netbeans.modules.xml.tools.java.actions
    org.netbeans.modules.xml.tools.java.generator
    org.netbeans.modules.xml.tree

    Parser Package

    Maintainer: Petr Kuzel and Libor Kramolis

    Updated on: 6th feb 2001

    The package provides a parser suitable for XML editing tasks. There are two parsers provided.

    1. A cloned implementation of Sun's JAXP 1.0 reference implementation parser. Entity resolution is patched so it is suitable for tools purposes (allows two-way). Rejected
    2. ParserLoader represents a izolator implemented as filtering class loader for particular Xerces implementation. It will replace almost whole package in future.
    org.netbeans.modules.xml.validation
    org.netbeans.modules.xml.validation.ui
    org.netbeans.modules.xml.wizard
    org.netbeans.modules.xml.wsdl.bindingsupport.spi
    org.netbeans.modules.xml.wsdl.bindingsupport.template
    org.netbeans.modules.xml.wsdl.bindingsupport.template.localized
    org.netbeans.modules.xml.wsdl.model
    org.netbeans.modules.xml.wsdl.model.extensions
    org.netbeans.modules.xml.wsdl.model.extensions.bpel
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.impl
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation.deprecation
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation.schema
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation.schema.resources
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation.semantic
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation.staticanalysis
    org.netbeans.modules.xml.wsdl.model.extensions.bpel.validation.xpath
    org.netbeans.modules.xml.wsdl.model.extensions.http
    org.netbeans.modules.xml.wsdl.model.extensions.http.impl
    org.netbeans.modules.xml.wsdl.model.extensions.http.validation
    org.netbeans.modules.xml.wsdl.model.extensions.i18n
    org.netbeans.modules.xml.wsdl.model.extensions.soap
    org.netbeans.modules.xml.wsdl.model.extensions.soap.impl
    org.netbeans.modules.xml.wsdl.model.extensions.soap.validation
    org.netbeans.modules.xml.wsdl.model.extensions.xsd
    org.netbeans.modules.xml.wsdl.model.extensions.xsd.impl
    org.netbeans.modules.xml.wsdl.model.impl
    org.netbeans.modules.xml.wsdl.model.readwrite
    org.netbeans.modules.xml.wsdl.model.spi
    org.netbeans.modules.xml.wsdl.model.visitor
    org.netbeans.modules.xml.wsdl.refactoring
    org.netbeans.modules.xml.wsdl.refactoring.ui.tree
    org.netbeans.modules.xml.wsdl.refactoring.xsd
    org.netbeans.modules.xml.wsdl.ui
    org.netbeans.modules.xml.wsdl.ui.actions
    org.netbeans.modules.xml.wsdl.ui.actions.extensibility
    org.netbeans.modules.xml.wsdl.ui.actions.schema
    org.netbeans.modules.xml.wsdl.ui.api.property
    org.netbeans.modules.xml.wsdl.ui.commands
    org.netbeans.modules.xml.wsdl.ui.common
    org.netbeans.modules.xml.wsdl.ui.completion
    org.netbeans.modules.xml.wsdl.ui.cookies
    org.netbeans.modules.xml.wsdl.ui.extensibility.model
    org.netbeans.modules.xml.wsdl.ui.extensibility.model.impl
    org.netbeans.modules.xml.wsdl.ui.fastmodel
    org.netbeans.modules.xml.wsdl.ui.fastmodel.impl
    org.netbeans.modules.xml.wsdl.ui.model
    org.netbeans.modules.xml.wsdl.ui.navigator
    org.netbeans.modules.xml.wsdl.ui.netbeans.module
    org.netbeans.modules.xml.wsdl.ui.property.model
    org.netbeans.modules.xml.wsdl.ui.property.model.impl
    org.netbeans.modules.xml.wsdl.ui.property.view
    org.netbeans.modules.xml.wsdl.ui.property.view.impl
    org.netbeans.modules.xml.wsdl.ui.schema.visitor
    org.netbeans.modules.xml.wsdl.ui.search
    org.netbeans.modules.xml.wsdl.ui.spi
    org.netbeans.modules.xml.wsdl.ui.validation
    org.netbeans.modules.xml.wsdl.ui.view
    org.netbeans.modules.xml.wsdl.ui.view.common
    org.netbeans.modules.xml.wsdl.ui.view.grapheditor
    org.netbeans.modules.xml.wsdl.ui.view.grapheditor.actions
    org.netbeans.modules.xml.wsdl.ui.view.grapheditor.border
    org.netbeans.modules.xml.wsdl.ui.view.grapheditor.layout
    org.netbeans.modules.xml.wsdl.ui.view.grapheditor.palette
    org.netbeans.modules.xml.wsdl.ui.view.grapheditor.widget
    org.netbeans.modules.xml.wsdl.ui.view.property
    org.netbeans.modules.xml.wsdl.ui.view.treeeditor
    org.netbeans.modules.xml.wsdl.ui.view.treeeditor.extension.bpel
    org.netbeans.modules.xml.wsdl.ui.view.treeeditor.newtype
    org.netbeans.modules.xml.wsdl.ui.view.treeeditor.pastetype
    org.netbeans.modules.xml.wsdl.ui.wizard
    org.netbeans.modules.xml.wsdl.ui.wsdl.nodes
    org.netbeans.modules.xml.wsdl.ui.wsdl.util
    org.netbeans.modules.xml.wsdl.validator
    org.netbeans.modules.xml.wsdl.validator.spi
    org.netbeans.modules.xml.wsdl.validator.visitor
    org.netbeans.modules.xml.wsdl.validator.visitor.schema
    org.netbeans.modules.xml.wsdlextui.property
    org.netbeans.modules.xml.wsdlextui.property.http
    org.netbeans.modules.xml.wsdlextui.template
    org.netbeans.modules.xml.wsdlextui.template.http
    org.netbeans.modules.xml.xam
    org.netbeans.modules.xml.xam.dom
    org.netbeans.modules.xml.xam.locator
    org.netbeans.modules.xml.xam.spi
    org.netbeans.modules.xml.xam.ui
    org.netbeans.modules.xml.xam.ui.actions
    org.netbeans.modules.xml.xam.ui.category
    org.netbeans.modules.xml.xam.ui.column
    org.netbeans.modules.xml.xam.ui.cookies
    org.netbeans.modules.xml.xam.ui.customizer
    org.netbeans.modules.xml.xam.ui.highlight
    org.netbeans.modules.xml.xam.ui.layout
    org.netbeans.modules.xml.xam.ui.multiview
    org.netbeans.modules.xml.xam.ui.search
    org.netbeans.modules.xml.xam.ui.undo
    org.netbeans.modules.xml.xdm
    org.netbeans.modules.xml.xdm.diff
    org.netbeans.modules.xml.xdm.nodes
    org.netbeans.modules.xml.xdm.perf
    org.netbeans.modules.xml.xdm.visitor
    org.netbeans.modules.xml.xdm.xam
    org.netbeans.modules.xml.xpath
    org.netbeans.modules.xml.xpath.common
    org.netbeans.modules.xml.xpath.ext
    org.netbeans.modules.xml.xpath.ext.impl
    org.netbeans.modules.xml.xpath.ext.metadata
    org.netbeans.modules.xml.xpath.ext.metadata.impl
    org.netbeans.modules.xml.xpath.ext.metadata.impl.images
    org.netbeans.modules.xml.xpath.ext.schema
    org.netbeans.modules.xml.xpath.ext.spi
    org.netbeans.modules.xml.xpath.ext.spi.validation
    org.netbeans.modules.xml.xpath.ext.visitor
    org.netbeans.modules.xml.xpath.ext.visitor.impl
    org.netbeans.modules.xml.xpath.function.core
    org.netbeans.modules.xml.xpath.function.core.visitor
    org.netbeans.modules.xml.xpath.function.extension
    org.netbeans.modules.xml.xpath.function.extension.impl
    org.netbeans.modules.xml.xpath.function.extension.visitor
    org.netbeans.modules.xml.xpath.impl
    org.netbeans.modules.xml.xpath.visitor
    org.netbeans.modules.xml.xpath.visitor.impl
    org.netbeans.modules.xml.xsd
    org.netbeans.modules.xsl
    org.netbeans.modules.xsl.action
    org.netbeans.modules.xsl.actions
    org.netbeans.modules.xsl.api
    org.netbeans.modules.xsl.cookies
    org.netbeans.modules.xsl.grammar
    org.netbeans.modules.xsl.settings
    org.netbeans.modules.xsl.transform
    org.netbeans.modules.xsl.ui
    org.netbeans.modules.xsl.utils
    org.netbeans.modules.xsl.wizard
    org.netbeans.modules.xslt.core
    org.netbeans.modules.xslt.core.context
    org.netbeans.modules.xslt.core.multiview
    org.netbeans.modules.xslt.core.multiview.mapper
    org.netbeans.modules.xslt.core.multiview.source
    org.netbeans.modules.xslt.core.multiview.spi
    org.netbeans.modules.xslt.core.util
    org.netbeans.modules.xslt.mapper
    org.netbeans.modules.xslt.mapper.methoid
    org.netbeans.modules.xslt.mapper.model
    org.netbeans.modules.xslt.mapper.model.nodes
    org.netbeans.modules.xslt.mapper.model.nodes.actions
    org.netbeans.modules.xslt.mapper.model.nodes.visitor
    org.netbeans.modules.xslt.mapper.model.targettree
    org.netbeans.modules.xslt.mapper.palette
    org.netbeans.modules.xslt.mapper.view
    org.netbeans.modules.xslt.mapper.xpatheditor
    org.netbeans.modules.xslt.model
    org.netbeans.modules.xslt.model.enums
    org.netbeans.modules.xslt.model.impl
    org.netbeans.modules.xslt.model.spi
    org.netbeans.modules.xslt.project
    org.netbeans.modules.xslt.project.anttasks
    org.netbeans.modules.xslt.project.anttasks.jbi
    org.netbeans.modules.xslt.project.nodes
    org.netbeans.modules.xslt.project.spi
    org.netbeans.modules.xslt.project.ui
    org.netbeans.modules.xslt.project.wizard
    org.netbeans.modules.xslt.project.wizard.element
    org.netbeans.modules.xslt.tmap
    org.netbeans.modules.xslt.tmap.model.api
    org.netbeans.modules.xslt.tmap.model.api.events
    org.netbeans.modules.xslt.tmap.model.impl
    org.netbeans.modules.xslt.tmap.model.spi
    org.netbeans.modules.xslt.tmap.model.validation
    org.netbeans.modules.xslt.tmap.model.xsltmap
    org.netbeans.modules.xslt.tmap.multiview
    org.netbeans.modules.xslt.tmap.multiview.designer
    org.netbeans.modules.xslt.tmap.multiview.source
    org.netbeans.modules.xslt.tmap.multiview.tree
    org.netbeans.modules.xslt.tmap.navigator
    org.netbeans.modules.xslt.tmap.nodes
    org.netbeans.modules.xslt.tmap.nodes.actions
    org.netbeans.modules.xslt.tmap.nodes.properties
    org.netbeans.modules.xslt.tmap.util
    org.netbeans.tax

    TODO

  • On request validation instead of Vetos and other setter constrains (see JAXB)
  • Use setPROP (checks WF and R/O and call impl) and setPROPImpl (just set and fire) pattern
  • mark checkXXX final ()

    Tree package

    It represent parser tree as tree of beans. The beans should form the tree using BeanContext.

    The tree is produced by TreeBuilder that is basically a SAX handler.

    Document and Declaration Nodes

    Basically two kinds of nodes exist:
    • declaratin nodes *.Decl[.]java
    • document nodes
    from any suitable document node can be obtained its declaration node by getDecl().

    Document Nodes

    Element nodes can be classified as:
    • nodes that allows subelements boolean allowElements()
    • nodes that allows text boolean allowText()

    Indentation

    The tree nodes implement method toXMLString(bool, Map) that is used while generating plain text from the tree. The second argument holds formatting arguments or null for no formating is applied at all.
  • org.netbeans.tax.decl
    org.netbeans.tax.decl.parser
    org.netbeans.tax.dom TAX DOM wrapper Readonly DOM level 1 implementation wraping TAX. Entry point is a set of {@link Wrapper.wrap} methods.

    Why Wrapper?

    Another alternative i.e. let TAX directly implement DOM intefaces would polute TAX API and cause schizofreny.

    Status

    Prototype that doe not handle refs, PIs, comments etc. It should prove concept only.

    Why so Many new

    Claim: Latest HotSpot has very optimalized new and authors suggest to leave classical pool approach.

    Consequence: This implementation uses very lightweight wrappers therefore only drawback it increased garbage production. It should be also handled in latest HotSpot implementations.

    org.netbeans.tax.event
    org.netbeans.tax.grammar
    org.netbeans.tax.io io package

    Overview

    The package contains classes used for building and writing down the tree structure (load/save).

    Class Structure

    
      TreeInputSource             TreeOutputResult
           |                           |
      TreeBuilder                 TreeWriter
           |                           |
           *---------> Tree -----------+
    
    
    TreeInputSource
    interface representing a source providing a builder available to build a tree instance from the source.
    TreeStreamSource
    TreeInputSource implemenation reading data from SAX's InputSource.
    TreeBuilder
    interface with buildDocument() returning a tree instance It returns XML or DTD tree depending on the source that provided it.
    TreeStreamBuilderXercesImpl
    TreeBuilder implementation provided by TreeStreamSource
    TreeOutputResult
    provides getWriter() returning writer writing to some output representation
    TreeStreamResult
    implementation of TreeOutputResult

    SAX EntityResolver Replacement

    TreeEntityResolver
    an interface
    TreeEntityManager
    the void implementation
    org.netbeans.tax.spec Spec package

    Creator Interfaces Purpose

    The intefaces allow to create minimal WF instance of given class.

    Writer Interface Purpose

    A visitor pattern for writing document down.

    Constrains Interface Purpose

    Every TreeObject is at all time well-formed. This interface allow to add some context-free customizations.
    org.netbeans.tax.test
    org.netbeans.tax.traversal
    org.netbeans.test.xml.schema
    org.netbeans.test.xml.schema.core
    org.netbeans.test.xml.schema.core.lib
    org.netbeans.test.xml.schema.core.lib.dom.parser
    org.netbeans.test.xml.schema.core.lib.sequential
    org.netbeans.test.xml.schema.core.lib.types
    org.netbeans.test.xml.schema.core.lib.util
    org.netbeans.test.xml.schema.core.sequential
    org.netbeans.test.xml.schema.lib
    org.netbeans.test.xml.schema.lib.dom.parser
    org.netbeans.test.xml.schema.lib.sequential
    org.netbeans.test.xml.schema.lib.types
    org.netbeans.test.xml.schema.lib.util
    org.netbeans.test.xml.schema.sequential
    org.netbeans.tests.xml
    org.netbeans.xml.test.actions
    org.netbeans.xml.test.catalog
    org.netbeans.xml.test.core
    org.netbeans.xml.test.core.wizardoperator
    www.java2java.com | Contact Us
    Copyright 2009 - 12 Demo Source and Support. All rights reserved.
    All other trademarks are property of their respective owners.