UltraXML™

UltraXML™ is a native WYSIWYG, integrated and comprehensive XML/SGML publishing solution incorporating the following:

  • High-end WYSIWYG XML publishing system
  • Automated and visual XML markup system
  • Generic XML viewer or browser
  • Graphical XSL editor not requiring knowledge of XSL syntax
  • DTD editor
  • XML validator
  • Automatic DTD generator
  • XML pretty printer
  • Colour separate rendered XMLs
  • Full Unicode implementation for multilingual XML publishing with support for most languages including European, Arabic, Chinese, Russian, Japanese, Hebrew etc.

Starting a new XML document

When selecting New Document from, you will notice a new option ‘XML Document’. You should select this if you intend to work with XML.

You can turn this option ON / OFF later in the property sheet if required, under Properties -> Document -> XML

However, when creating a new document with this option selected, no PP styles will be created. Also PP will create some standard references required for XML such as & < &rt; etc.

When XML Document is ON the following will also happen:

The keyboard will behave differently; Pressing & on the keyboard will insert the &amp; reference, pressing < will insert &lt; reference etc.

When creating a new frame and clicking inside the frame an XML tag will be created instead of a TEXT tag if XML Document is switched ON.

A popup menu will appear when the RETURN key is pressed asking you to choose the next style tag, if XML Document is switched on.

Importing XML

Under File -> Import Menu you will notice 3 new options;

Import XML
Import DTD
Import XSL

When importing XML as show below, there are 3 options.

Create XML Style Templates

Selecting this will automatically  create the style tags used inside the XML file.

Ignore XSL References

Any references to an external XSLfile will usually import, parse and activate the XSL file. Select this to prevent this from happening and ignore the XSL.

Ignore DTD

Any references to an external DTD file inside the XML will usually import and activate the DTD. Select this  option to prevent this from happening and ignore the DTD.

When importing the XML, the XML file is completely rebuilt using the parser. It will strip leading white space, sort attributes into alphabetical order, remove the XML header information and XSL and DTD reference information. Also paragraphs that are split by a new line for presentation are appended automatically into a single paragraph inside PP.

When importing the XML file it is possible that the XML will not be well formed and may cause a parser error, in such a case a message will appear stating that the file can no tbe rebuilt with the parser and an option will appear to let you just import the XML as text in which case only leading white space will be stripped.

You will notice that there is some useful information presented in the Import XML dialog, including whether or not the XML file is Well Formed without even opening the XML file.

The last used folders for Import XML; Import XSL and Import DTD dialogs are remembered separately.

Importing DTD Dialog

Importing XSL Dialog

Exporting XML

You can export XML from the File->Export->XML menu option and various other places. The export XML dialog provides you with several options:

XML

This is the name of the XML stream that you want to export.

XSL

This is the name of the optional XSL stream that you want to export and write a link to.

DTD

This is the name of the optional DTD stream that you want to export and write a link to.

Internal DTD

Check this if you want the DTD to be saved inside the XML file instead of exporting a separate file.

Indent XML

Checkthis if you want the XML to be parsed, indented and formatted for readability during export, also know as Pretty Printing. The XML must be well formed for this option to work, otherwise a message box will appear asking you to correct the XML or export without indenting.

When the export dialog is displayed, the current XML, XSL and DTD tag will be selected automatically.

Tag Generation

When you import an XML file all of the tags used will be created as empty style tags if they do not already exist in your document. Also if the XML file refers to a DTD file, the DTD file is imported and parsed and all of the ENTITLES inside the DTD will be created as reference tags inside UltraXML.

There are 3 new tag types in UltraXML™; XML, DTD and XSL.

The reference tagsamp, apos, gt, lt and quot are automaticallylocked when a new XML document is created

Selecting a DTD

When you import an XML file which contains a link to a DTD that DTD usually becomes the default DTD for the document. (An option exists in the Import XML dialog to ignore DTDs) You can change the default DTD in the property sheet Document->XML tab.

Every frame in a UltraXML™document can have a different DTD associated with it. By default each frame will use the document DTD, but it is possible to select an override DTD for each frame in the property sheet or by dragging a DTD tag from the tree into the frame.

   

Code Editor

A new XML toolbar can be found in the Code Editor Window. Below is a description of the available buttons, from left to right.

Auto Parse

Press this is you want to check for well formed XML and want to validate the XML every time the current XML stream is changed and becomes idle. This is very useful to see XML errors as you type so that you can make sure you are entering valid and well formed XML at all times. For very large documents you might need to use the manual options below.

Well formed

Press this button to do a single spot check on the current XML stream to see if the XML is well formed.

Validate

Press this button to validate the current XML stream once.

Insert tag

Press this button to create a new empty XML style tag, insert an open and close XML command and position the cursor in between the open and close. This is a useful command when creating an XML file from scratch.

Drop down

This drop down contains a list of all available style tags. When selecting one of them a start and end tag will be created and the cursor will be positioned between them.

The Code Editor has a new splitter window, which is used to show XML information and parser errors. A blue icon means that the message is just information and a red icon means that the message is an error, which should be corrected. A green icon means that the message is a warning but not an XML error.

Splitter Window showing use of Well Formed checking and Validating API.

 XML Errors shown in the splitterwindow can be clicked on, in which case the current position will move thelocation of the error, which might be in a different stream if the erroris inside the DTD.

You will notice that the colourcoding has been changed so that attributes inside a style tag stand out.

XML Workspace Window
A new workspace window tab exists in UltraXML.
This tab contains 3 sub tabs, one for XML, one for DTD and one for XSL.

The XML tab contains the tree hierarchy of the current XML stream. 3 buttons exist at the top of the tree; Auto, Update and Find.

Auto– When selected the tree will automatically update every time the document is changed.

Update– For very long documents auto update can be slow. When auto is not used, pressing the Update button will completely rebuild the XML tree.

Find– Pressing find will ensure that the current location in the XML stream is visible in the tree view of the XML.

Show/ Hide Attributes – When selected an element attribute editor window will appear at the bottom of the XML workspace.

Find – Pressing find will ensure that the current location in the XML stream is visible in the tree.

Navigating with the XML tree

When the element nodes in the XML tree are selected, the cursor will move to the position in the XML text stream that corresponds to that node. XML attributes are read directly from the XML source and not the tree. If the auto tree option is switched off, you will need to update the tree by pressing the Update Tree button before navigating with the tree. You may also work in the opposite manner, by finding the current location in the tree of the cursor position simply by clicking on the Find button in the XML tree.

XML Tree Menus

Right clicking on an empty XML workspace window will display the Import XML menu, allowing you to quickly import XML into a frame.

The XML element menu will be displayed when right clicking on an element in the tree.

A small attribute menu will also appear when right clicking on an attribute in the tree.

The  XML element node menu can be used to copy, move, delete, add or edit an XML element. Selecting ‘Edit Attributes…’ will display the XML Attribute property sheet windows.

XML Attribute Property Sheet

The XML attribute property sheet is useful for changing attributes of an element. When you move the cursor or select an element node, the previous XML element will be parsed and any attributes are displayed in the property sheet. The DTD is also parsed and the drop down box is filled will all the possible legal values, according to the current DTD for the XML.

Upon changing the attribute value, the corresponding XML tag is automatically updated.

You may delete an attribute by highlighting the attribute and pressing the scissor ‘delete attribute ’button on the left.

You may create a new attribute for the XML element by clicking on the element name in the attribute property sheet and entering the name of the attribute in the drop down. This will insert a new attribute in alphabetical order into the element definition. You may then set its value in the usual way by highlighting it in the property sheet and entering a value in the drop down.

Popup Style menu

When XML Document option is switched on, pressing return in the code editor or Workspace window will display a popup menu, forcing you to choose a suitable style tag. Once selected, the start and end tag will be created and the cursor positioned between them.

The XML element node menu can be used to copy, move, delete, add or edit an XML element. Selecting ‘Edit Attributes…’ will display the XML Attribute property sheet windows.

New Tag Types
UltraXML™ XML 3 specific tag types; XML, XSL and DTD.

XML (Extensible Markup Language) tags are just like standard UltraXML™text streams but conform to the XML syntax. Frames may contain either ordinary UltraXML™text streams or XML text streams. When a frame contains XML streams different context menus appear when the text is clicked on, allowing the user to validate the XML, insert a valid XML tag.

XSL (Extensible Stylesheet Language) tags are complete stylesheet descriptions for an XML file. It is possible to import more than one XSL file but only one may be active for the document. UltraXML™styles are automatically created when an XSL tag is made active, by interpreting the XSL file. Whenever the UltraXML™styles are modified in the usual way, the active XSL file is modified automatically so that the XSL file is always correct. In this way UltraXML™can also be used as an XSL editor.

DTD tags are Document Type Definitions and can be used inside UltraXML™to validate the syntax of the XML stream and to provide the user assistance in selecting the next correct XML tag. More than one DTD tag may exist in a UltraXML™document with one activated as a default. It is also possible to override the default DTD for a frame so that UltraXML™may be used as a placeholder for several XML files with different DTDs.

Drag and Drop is implemented for all three new tag types, allowing the user to drop different XSL tags into the document for different views of the XML, or dropping XML text streams into graphic objects etc.

Home | Contact | Profile | Markets | Privacy Statement
Become a Reseller | Partners | News & Events
UltraXML |UltraXML Server | UltraXML ActiveX Control | UltraXML Author |S1000D Publication Manager
UltraCSDB S1000D CSDB |  Data Conversion | Consultancy
FAQs | Download | Search