XAM (Extensible Abstract Model) was developed as part of an effort to create tools friendly schema model. This module was the extraction of useful patterns for undo/redo, simple write transactions (in this sense a transaction supports Isloation and Durability (to the extent possible) by allowing a single writer and deferring dispatching of events to the end of the transaction, lazy initialization, , inter/intra model references, and model creation. org.netbeans.modules.xml.xam Represents a domain independent model and associated artifacts such as a factory, source, and the concept of a reference. org.netbeans.modules.xml.xam.dom Provides entities for working on XML based models. This package depends on org.w3c packages and assumes a mapping between an xml tree and a strongly typed binding. This package also provides the ability to resolve other models A client will normally subclass the appropriate abstract model and component and thus have a starting point for a domain model (examples are the wsdl and schema models).
DocumentModelAccess2 to provide additional method
findEndPosition() to get the end position of the object representation in document. It's complimentary to existing
The modufication is necessary for fixing issue #166177.
The old method
is marked as deprecated and a new one
AbstractDocumentModel.prepareChangeInfo(List, List) is created.
The new one contains additional parameter
is necessary for correct calculation of namespace context after
deletion of namespace prefix. See the issue for details.
Two new methods are added:
They are intended to be used instead of getChildren() in cases when the children's list isn't required. It helps impove performance.
This module was developed from the bottom up (the api is not yet stable) and thus a friend declaration is required before the module can be used.
Read more about the implementation in the answers to architecture questions.