[XXE] XMLmind XML Editor V2.4
Hussein Shafie <[email protected]> Wed, 13 Aug 2003 17:04:19 +0200
| Newsgroups | gmane.editors.xxe.announce |
|---|---|
| Organization | Pixware |
| Message-ID | <[email protected]> |
XMLmind XML Editor V2.4 can be downloaded from
http://www.xmlmind.com/xmleditor/download.shtml
=========================================
XMLmind XML Editor V2.4 (August 13, 2003)
XMLmind XML Editor can now be used to author
modular documents. A modular document includes
elements contained in other documents. For
example, one can imagine a modular book document
which just contains a preface and which includes
all its chapters from external documents created
separately.
Using XXE, this modular book document appears like
any self-contained book document, except that
included chapters are not editable (non-editable
elements are displayed with a light gray
background -- this is specified in the CSS style
sheet). This allows to check cross-references, to
print the whole book or to convert it to other
formats such as HTML.
Two new tool bar buttons called "Edited Referenced
Document" and "Edit Referencing Document" allows
to quickly navigate from modular document to
included documents and the other way.
XXE uses two standard mechanisms to implement
modular documents: external entity references
and/or XIncludes (see
http://www.w3.org/TR/xinclude/). Note that for
now, XXE's XInclude processor only supports
XPointers using the element scheme.
Standard Edition can open existing modular
documents using both mechanisms but you are
restricted to using external entity references if
you need to compose new modular documents.
Professional Edition has no such restriction and
you can use external entity references and/or
XIncludes to compose modular documents.
Note that you do not need to declare xi:include
elements in the DTD or in the XML-Schema because
XInclude processing occurs before validation. That
is, xi:include elements are already replaced by
the included elements when validation starts.
Enhancements:
* XMLmind XML Editor can now be used to author
modular documents. See story above.
The tutorial now contains a section describing
how to author a modular document.
The online help (also included in the
distribution in HTML format) describes in
detail all commands and dialog boxes related
to modular documents.
The online help also details the limitations
of the XXE implementation. In a nutshell, XXE
can only manage references to external
entities containing only a single element
(that is, no text, no mix of text and
elements, no multiple elements, etc) and
xi:include elements pointing to a single
element (that is, no text XIncludes, no
document element plus sibling comments and
processing instructions, etc).
As usual with XXE, unmanaged references to
external entities and unmanaged xi:include
elements are replaced by their contents in the
opened document then their physical structures
is immediately forgotten. That is, the
document, if modified, is saved as a flat file
(which is, of course, not the case for
documents containing managed references to
external entities and managed xi:include
elements). User is clearly informed when such
situation occurs.
* Completely rewrote the DocBook and Simplified
DocBook CSS style sheets. New style sheets are
easier to maintain and fully supports DocBook
4.2.
* Only on Linux: ugly Metal look has been
replaced by cool Kunststoff look
([2]http://www.incors.org/). (Unfortunately,
Java[tm] 1.4.2 new GTK Look and Feel is even
uglier that Metal.)
* XML-Schema only: full support of regular
expressions as specified in
[3]http://www.w3.org/TR/xmlschema-2/#regexs
thanks to James Clark's excellent xsdregex
library (XSD to Java Regular Expression
Translator).
* Improved commands XXE.open and XXE.save and
added commands XXE.openCopy and XXE.close.
Using this four commands to program XXE, it is
now possible to write higher-level custom
commands that load/store documents from/to a
custom document repository or database.
* As a by-product of new DocBook 4.2 CSS style
sheets, CSS3 pseudo-classes :last-child,
:first-of-type and :last-of-type are now
supported.
* As a by-product of the support of modular
documents, new command setEditable allows to
toggle the editability of an element or the
editability of the whole document.
* As a by-product of the support of modular
documents, new CSS extension pseudo-classes
:read-only and :property() allow to style
elements based on the presence and/or the
value of application-level properties (similar
to attributes but not part of document
content). Example: this rule specifies that
non-editable elements are to be displayed with
a light gray background:
---
*:read-only {
background-color: #F0F0F0;
}
---
* User request: new attribute
cdataSectionElements of configuration element
saveOptions allows to specify elements whose
text content is to be saved as CDATA sections.
XHTML example:
---
<cfg:saveOptions xmlns=""
cdataSectionElements="script"/>
---
* User request: comments and
processing-instructions which are direct
children of the document are now more nicely
indented in the save file.
* User request: content object attributes()
(which inserts in generated content a special
purpose container, this special purpose
container being populated with generated
content for element attributes specified using
:attribute() CSS rules) now has a boolean
parameter wrap-rows which allows to control
whether the rows of this tabular container are
wrapped or not when they are too wide for the
document view.
* User request: the parameters of the buttons
and controls specified in the CSS and inserted
in the document view as generated content now
supports values other than mere literals. For
example, it is now possible to specify:
---
description {
content: text-area(attribute, value,
columns, 40,
rows, 2,
wrap, word);
}
description[rows][columns] {
content: text-area(attribute, value,
columns, attr(columns),
rows, attr(rows),
wrap, word);
}
---
* User request: the putAttribute and
addAttribute commands now display dialog boxes
which are adapted to the type of attribute
being changed or added. DocBook example:
Command (possibly triggered by a button
embedded in the document view) "putAttribute
[implicitElement] linkend" will display a
dialog box listing all the ID values found in
the document being edited.
Bug fixes:
* Fixed a bug that caused a character to be
inserted in the document view when a command
triggered by a keyboard binding displayed a
dialog box.
Example: typing Esc-x inserted character 'x'
in the document view and then displayed the
dialog box allowing to specify the command to
be executed.
---
<binding>
<keyPressed code="ESCAPE" />
<charTyped char="x" />
<command name="execute" />
</binding>
---
* XML-Schema only: QNames in included schema
with no target namespace were not properly
resolved when the including schema had a
target namespace (feature known as ``Chameleon
Includes'').
* Command selectByID, which is used to navigate
through ID/IDREF/IDREFS, now expands collapsed
sections if needed too.
* Fixed a bug that prevented loading a document
using the superset of a DTD already cached in
the schema cache. For example, this bug
prevented loading a document constrained by
the "-//OASIS//DTD DocBook EBNF Module
V1.1CR1//EN", a superset of "-//OASIS//DTD
DocBook XML V4.2//EN".
* Fixed a NullPointerException which happened
when trying to open a DocBook document
containing really invalid tables (for example,
a table missing a tgroup).
* Fixed a NullPointerException or
ArrayIndexOutOfBoundsException which happened
when the Edit pop-up menu was used to delete
an element represented in the document view by
a text field control having the keyboard
focus.
--
XMLmind XML Editor Information List
[email protected]
http://www.xmlmind.com/mailman/listinfo/xmleditor-announce