Internet Links

xml spy
Internet Links

Altova provides many services through our web site, which you can directly access from the Help Menu within XMLSPY 5 or through the help system.

Please visit our Home Page frequently to learn about product updates, news, and other XML related information.

The Support Center shows available support options that you can access freely as a registered user.

The FAQ contains a collection of frequently asked questions and their answers. Please make sure that you check this resource, before submitting a new incident to our technical support staff.

If you have been using the evaluation version and want to buy the fully licensed product, or if you need to purchase additional license for your colleagues, please visit our Order Pages to access our secure online shop.

Top Next

© 2002 Altova


Technical Background Information

Technical Background Information

This chapter contains useful background information on the technical aspects of XMLSPY 5. If you run across a technical term in the remainder of this help system you may occasionally find a link to some of the background materials provided here.

Previous Top Next


XML Parser

XML Parser

When opening any XML document, XMLSPY 5 uses its built-in incremental validating parser to both check the document for well-formedness and validate it against any specified DTD, DCD, XDR, BizTalk, or XSD Schema.

The same parser is also used while editing a document that refers to a DTD, DCD, XDR, BizTalk, or XSD Schema to provide intelligent editing help and immediately display any validation error that is encountered.

This is possible through the incremental design of the new parser that is optimized for the special needs of an integrated development environment.

The built-in parser implements the new May 2nd Final Recommendation XML Schema from the W3C and we are constantly tracking the W3C Schema Group's efforts and are actively participating in all Schema-related discussions to provide you with a state-of-the-art development environment.


Schema Dialects

Schema Dialects

An important aspect of XML is the area of schemas and DTDs that define the logical structure (or content model) of an XML document - XMLSPY 5 is the ideal tool that integrates schema and DTD creation while working with XML instance documents.

XMLSPY 5 supports both editing and schema-validation of the following schema kinds:

· Document Type Definitions (DTD)
· Document Content Descriptions (DCD)
· XML-Data Reduced (XDR)
· BizTalk
· XML Schema Definition (XSD) draft April 7, 2000, CR Oct. 24 2000, May 2nd 2001 Final Recommendation

and can validate an XML instance document against any of the above schema dialects.


XSLT Processor

XSLT Processor

To use the full power of XSLT for XSL Transformations, you will need to download and install any XSLT transformation engine, which supports the current XSLT standard from W3C and has a command line interface.

Please note, that we provide some of the most well known XSLT engines on our Components web page http://www.xmlspy.com/components, including Microsoft XML Parser MSXML 3.0 or 4.0.

To use XSLT successfully, please make sure that your XSL Stylesheet correctly refers to the namespace defined in the final XSLT recommendation:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


OS & Memory Requirements

OS & Memory Requirements

XMLSPY 5 is a modern 32-bit Windows application that runs on Windows 95, 98, NT 4.0, Windows 2000 and Windows XP. It requires a fair amount of memory to be installed in the system, because it loads each document fully into memory.

On the other hand it typically requires less memory than many Java-based applications, because it is written entirely in C++ and thus does not require the overhead of a Java runtime environment.

Having documents in main memory is necessary to completely parse and analyze each document, and to also improve the viewing and editing speed during normal work. While editing a small to medium sized document (up to 512kB) is possible in as little as 2MB of RAM, opening a 5MB document can consume up to 50MB during the initial parsing process.

Memory requirements are also influenced by the unlimited Undo history. When repeatedly cutting and pasting large selections in large documents, memory can rapidly be depleted.


Internet Usage

Internet Usage

XMLSPY 5 is an integrated development environment for XML and as such will, also initiate Internet connections on your behalf in the following situations:

a) if you click the "Request evaluation key-code" in the registration dialog the three fields in the registration dialog box are transferred to our web server by means of a regular http (port 80) connection and the free evaluation key-code is sent back to the customer via regular SMTP e-mail.

b) if you use the Open URL... dialog box to open a document directly from a URL, that document is retrieved through a http (port 80) connection.

c) if you open an XML document that refers to an XML Schema or DTD and the document is specified through a URL, it is also retrieved through a http (port 80) connection, once you validate the XML document. This may also happen automatically upon opening a document, if you have instructed XMLSPY 5 to automatically validate files upon opening in the File tab of the Tools | Options dialog.

d) if you are using the Send by mail... command, the current selection or file is sent by means of any MAPI-compliant mail program installed on the user's PC.

All this communication is, of course, only initiated in response to a direct request from you! XML is, after all, related to the Internet and thus any XML development tool must have access Internet protocols to provide an efficient environment for the everyday duties of any XML developer.


Unicode Support

Unicode Support

Unicode is the new 16-bit character-set standard defined by the Unicode Consortium that provides a unique number for every character,

· no matter what the platform,
· no matter what the program,
· no matter what the language.

Fundamentally, computers just deal with numbers. They store letters and other characters by assigning a number for each one. Before Unicode was invented, there were hundreds of different encoding systems for assigning these numbers. No single encoding could contain enough characters: for example, the European Union alone requires several different encodings to cover all its languages. Even for a single language like English, no single encoding was adequate for all the letters, punctuation, and technical symbols in common use.

These encoding systems used to conflict with one another. That is, two encodings used the same number for two different characters, or different numbers for the same character. Any given computer (especially servers) needs to support many different encodings; yet whenever data is passed between different encodings or platforms, that data always runs the risk of corruption.

Unicode is changing all that!
Unicode provides a unique number for every character, no matter what the platform, no matter what the program, and no matter what the language. The Unicode Standard has been adopted by such industry leaders as Apple, HP, IBM, JustSystem, Microsoft, Oracle, SAP, Sun, Base and many others.

Unicode is required by modern standards such as XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML, etc., and is the official way to implement ISO/IEC 10646. It is supported in many operating systems, all modern browsers, and many other products. The emergence of the Unicode Standard, and the availability of tools supporting it, are among the most significant recent global software technology trends.

Incorporating Unicode into client-server or multi-tiered applications and web sites offers significant cost savings over the use of legacy character sets. Unicode enables a single software product or a single web site to be targeted across multiple platforms, languages and countries without re-engineering. It allows data to be transported through many different systems without corruption.

Even though XML is clearly defined to be based on the Unicode standard, XMLSPY 5 is still one of the few XML development tools that fully implements Unicode!


Windows NT 4.0 & Windows 2000

Windows NT 4.0 & Windows 2000

Starting with version 2.0 XMLSPY 5 provided full Unicode support in the Windows NT and Windows 2000 version of the software. To edit any XML document from a non-roman writing system you will, however, also need a font that supports the Unicode characters being used by that document.

Windows NT typically includes support for all common single-byte writing-systems in its Arial, Times, and Courier New fonts and will additionally include all required fonts for the writing-system in your own country (i.e. if you install the Japanese version of Windows NT you will automatically have fonts that support the Katakana, Hiragana, and Kanji writing-systems as well as the input-methods and dictionaries to enter Kanji and to switch between Katakana and Hiragana). If you wish to edit any document from a foreign writing-system, you may want to install additional Windows NT components for that writing-system or purchase special Unicode fonts for these writing-systems (such fonts are available from all leading type vendors).

Please note that most fonts only contain a very specific subset of the entire Unicode range and are therefore typically targeted at the corresponding writing system. Consequently you may encounter XML documents that contain "unprintable" characters, because the font you have selected does not contain the required glyphs. Therefore it can sometimes be very useful to have a font that covers the entire Unicode range - especially when editing XML documents from all over the world.

The most universal font we have encountered is a typeface called "Arial Unicode MS" that has been created by Agfa Monotype for Microsoft. This font contains over 50.000 glyphs and covers the entire set of characters specified by the Unicode 2.1 standard. It needs 23MB and is included with Microsoft Office 2000.

We highly recommend that you install this font on your system and use it with XMLSPY 5, if you are often editing documents in different writing systems. This font is not installed with the "typical" setting of the Microsoft Office setup program, but you can choose the Custom Setup option to install this font.

In the "Examples" folder you will also find a new XHTML file called "Unicode-UTF8.xml" that contains the sentence "When the world wants to talk, it speaks Unicode" in many different languages ("Wenn die Welt miteinander spricht, spricht sie Unicode") and writing-systems (" japanese1 Unicode japanese2 ") - this line has been adopted from the 10th Unicode conference in 1997 and is a beautiful illustration of the importance of Unicode for the XML standard. Opening this file will give you a quick impression on what is possible with Unicode and what writing systems are supported by the fonts available on your PC installation.


Windows 95/98/ME

Windows 95/98/ME

These Windows versions do not include full Unicode capabilities on the operating system layer. Instead support for non-roman writing-systems is provided through so-called code-pages that contain all the required characters mapped to either the available byte-values in the range of 0x80 to 0xFF (in case of single-byte systems, such as Cyrillic or Hebrew) or as double-byte values, where the first most significant bit of the first byte is typically used to indicate that this is a so-called "wide character" (in case of CJK writing-systems).

We therefore provider a special Windows 95/98/ME version of XMLSPY 5 that is automatically installed whenever you are using the Setup program on these operating systems. This version of XMLSPY 5 supports the following code-pages for viewing and editing XML documents (for excellent background information about code-pages please refer to http://czyborra.com/charsets/codepages.html):

Code-page Equivalent XML Encoding
1252 ISO-8859-1 (Western, Latin-1)
1250 ISO-8859-2 (Eastern Europe, Latin-2)
1251 ISO-8859-5 (Cyrillic)
1253 ISO-8859-7 (Greek)
1254 ISO-8859-9 (Turkish)
1255 ISO-8859-8 (Hebrew)
1256 ISO-8859-6 (Arabic)
874 ISO-8859-11/TIS-620 (Thai)
932 Shift-JIS (Japanese)
936 GB2312 (Chinese)
949 EUC-KR (Korean)
950 Big5 (Taiwanese)

Whenever you open an XML file, XMLSPY 5 detects the character-set encoding used in that file, expands the file to an internal full Unicode representation and then transforms the document to a code-page supported by Windows 95/98 in order to enable viewing and editing of the document.

In most cases this process will be entirely automatic, as the available ISO-8895-x encodings as well as some of the CJK encodings often correspond with a certain code-page. However, if you open a Unicode encoded file (e.g. UTF-8 or UTF-16) XMLSPY 5 will be unable to determine which code-page to use and will thus bring up a dialog box that asks you to specify a code-page to be used for editing.

In order to correctly view and edit a Unicode file under Windows 95/98/ME it is extremely important that you use this dialog box to:

a) choose the correct code-page that includes all characters contained in the file and
b) later select a font and script from the settings dialog box that also supports the same code-page.

If the file contains any characters that are not available in the selected code-page, the user will receive an error message including a detailed list of offending characters before they will be replaced by a '_' (underscore).

We therefore highly recommend using only the Windows NT/2000 version of XMLSPY 5 for editing XML files that make full use of Unicode!


Right-to-Left Writing Systems

Right-to-Left Writing Systems

Please note that even under Windows NT 4.0 any text from a right-to-left writing-system (such as Hebrew or Arabic) is not rendered correctly except in those countries that actually use right-to-left writing-systems. This is due to the fact that only the Hebrew and Arabic versions of Windows NT contains support for rendering and editing right-to-left text on the operating system layer.


RichEdit Component

RichEdit Component

XMLSPY 5 uses the Microsoft-supplied "RichEdit" component for editing documents in the Text View. The version of RichEdit that is available in Windows 98 and Windows NT 4.0 is called RichEdit 2.0 and contains many known limitations.

Windows 2000 contains a new and vastly improved version called RichEdit 3.0, that not only fixes most known bugs, but also contains special support for finer Undo-Control as well as better international capabilities with foreign writing systems.

XMLSPY 5 already contains full support for RichEdit 3.0 and takes advantage of the new features, if it detects the presence of RichEdit 3.0.

Altova is a registered MCSP (Microsoft Certified Solution Provider), we are unfortunately not allowed to distribute the RichEdit 3.0 component to our customers (RichEdit is only available as part of the operating system and is not redistributable).

We are, however, allowed to suggest that if you have access to a Windows 2000 CD-ROM you should install Windows 2000 on some machine and copy the file "riched20.dll" from the Windows\System directory of that machine to the Windows NT 4.0 or Windows 98 Windows installation (thereby replacing the old RichEdit 2.0 version) that you wish to use XMLSPY 5 on.

This will get you all the benefits of RichEdit 3.0 now and will - in our experience - not cause any compatibility problems, since the RichEdit 3.0 component is fully compatible with Windows 98 and Windows NT 4.0.


License Metering

License Metering

XMLSPY 5 has a built-in license metering module that helps you in avoiding any unintentional violation of our license agreement. XMLSPY 5 can be licensed either as a single-user or multi-user software and depending on your license, this license-metering module makes sure, that no more than the licensed number of users are using XMLSPY 5 concurrently.

This license-metering technology uses your local area network (LAN) to communicate between instances of XMLSPY 5 running on different computers.

Single license
When XMLSPY 5 starts up, it sends a short broadcast datagram to find any other instance of the product running on another computer in the same network segment. If it doesn't get any response, it will open a port for listening to other instances of XMLSPY 5. Other than that, it will do nothing at all in a single-user situation. If you are not connected to a LAN or are using dial-up connections to connect to the Internet, XMLSPY 5 will NOT generate any network traffic at all.

Multi license
If more than one copy of XMLSPY 5 is used within the same LAN, they will briefly communicate with each other on startup, to exchange their key-codes to ensure that the number of concurrent licenses purchased is not accidentally violated, as additional copies of the product are launched by more users.

This is the same kind of license metering technology, that is common in the Unix world and with many other database development tools and allows our customers to purchase reasonably-priced concurrent-use multi-user licenses (see http://www.xmlspy.com/order for our price list).

Please note, that XMLSPY 5 is at no time attempting to send any information out of your LAN, or over the Internet. We are also deliberately sending very few and small network packets so as to not put a burden on any network. The TCP/IP ports (2799) used by XMLSPY 5 are officially registered with the IANA see http://www.isi.edu/in-notes/iana/assignments/port-numbers for details) and our license-metering module is a proven and tested technology.

If you are using a firewall, you may notice communications on port 2799 between the computers that are running XMLSPY 5. You are, of course, free to block such traffic between different groups in your organization, as long as you can ensure by other means, that your license agreement is not violated.

You will also notice, that XMLSPY 5 contains many useful functions that make use of your Internet connection, but these are unrelated to the license-metering technology.


Licensing and Distribution

Licensing and Distribution

This appendix contains important legal information concerning your rights to use this software product. Please read carefully - this information is binding, as you have agreed to these terms upon installation of this software product.


Electronic Software Distribution

Electronic Software Distribution

We are making XMLSPY 5 available through electronic software distribution only, because this method offers many unique benefits for our customers:

· you can freely evaluate the software before making a purchasing decision
· once you decide to buy the software, you can place your order online and immediately get a fully licensed product within minutes
· you can be sure to always get the latest version of our software
· we include both a comprehensive integrated online-help system and an electronic manual that you can also print out, if you prefer to read your documentation on paper

Once you download this software product, you may evaluate the XMLSPY 5 for a period of up to 30 days free of charge. During this evaluation period the software will start to remind you after about 20 days that it has not been licensed yet. The reminder message will, however, only be displayed once every time you start the program.

If you would like to continue using the program after the 30 day evaluation period, you have to purchase a license, which is delivered in the form of a key-code that you enter into the Registration dialog to unlock the product.

You can register and purchase your license on-line by directing your browser to access our web-shop at http://www.xmlspy.com/order. On this page you will get detailed pricing information (including multi-user discounts) and also find a list of authorized distributors and resellers.

If you want to share XMLSPY 5 with others, please make sure that only the installation program is ever distributed. It contains the application program, grammar description, sample files, and this online manual as well as a quick Read-Me file in one neat package. Any person that receives the XMLSPY 5 software from you is also automatically entitled to a 30 day evaluation period. After the expiration of said period, any other user must also purchase a license in order to be able to use XMLSPY 5.

For further details, please refer to the SOFTWARE PRODUCT LICENSE at the end of this manual.


Copyright

Copyright

All title and copyrights in and to the SOFTWARE PRODUCT (including but not limited to any images, photographs, animations, video, audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT), the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by Altova GmbH or its suppliers. The SOFTWARE PRODUCT is protected by copyright laws and international treaty provisions. Therefore, you must treat the SOFTWARE PRODUCT like any other copyrighted material.

Copyright ©1998-2002 Altova GmbH

All rights reserved.

The Sentry Spelling-Checker Engine Copyright © 2000 Wintertree Software Inc.


Software Product License

Software Product License

THIS IS A LEGAL DOCUMENT -- RETAIN FOR YOUR RECORDS

ALTOVA END USER LICENSE AGREEMENT

Licensor:

Altova GmbH
Rudolfsplatz 13a/9
A-1010 Wien
Austria

Notice to User:
This is a legal document between you and Altova GmbH ("Altova"). It is important that you read this document before using the Altova-provided software ("Software") and any accompanying documentation ("Documentation"). By using the Software, you agree to be bound by the terms of this Agreement whether or not you decide to purchase the Software. If you do not agree, you are not licensed to use the Software, and you must destroy any downloaded copies of the Software in your possession or control. Please go to our Web site to download and print a copy of this Agreement for your files.

1. SOFTWARE LICENSE
(a) License Grant. Altova grants you a non-exclusive, non-transferable (except as provided below), limited license to install and use a copy of the Software on your compatible computer, up to the Permitted Number of computers. The Permitted Number of computers shall be delineated at such time as you elect to purchase the Software.

(b) Server Use. Your rights with respect to server use depend on the licensing model of the product you have purchased:
(b.1) If you have purchased under the "per Server per CPU" licensing model, you may install copies of the Software on your compatible server computers equal to the Permitted Number of CPUs in your server computers, for the sole and exclusive purpose of using the Software through commands, data or instructions (e.g., scripts) from an unlimited number of computers on your internal network or on the Internet. The Permitted Number of CPUs shall be delineated at such time as you elect to purchase the Software.
(b.2) If you have purchased under any other licensing model, you may install one copy of the Software on your computer file server for the purpose of downloading and installing the Software onto other computers within your internal network up to the Permitted Number of computers. No other network use is permitted, including without limitation using the Software either directly or through commands, data or instructions from or to a computer not part of your internal network, for Internet or Web-hosting services or by any user not licensed to use this copy of the Software through a valid license from Altova.
(c) Concurrent Use. If you have purchased a "Concurrent-User" version of the Software, you may install the Software on any compatible computers, up to ten (10) times the Permitted Number of users, provided that only the Permitted Number of users actually use the Software at the same time. The Permitted Number of concurrent users shall be delineated at such time as you elect to purchase the Software.
(d) Backup and Archival Copies. You may make one backup and one archival copy of the Software, provided your backup and archival copies are not installed or used on any computer and further provided that all such copies shall bear the original and unmodified copyright, patent and other intellectual property markings that appear on or in the Software. You may not transfer the rights to a backup or archival copy unless you transfer all rights in the Software as provided under Section 3.
(e) Home Use. You, as the primary user of the computer on which the Software is installed, may also install the Software on one of your home computers. However, the Software may not be used on your home computer at the same time as the Software is being used on the primary computer.
(f) Key Codes. You will receive a key code when you elect to purchase the Software. The key code will enable you to activate the Software after an initial thirty (30)-day evaluation period. You may not relicense, reproduce or distribute a key code except with the express written permission of Altova.
(g) Title. Title to the Software is not transferred to you. Ownership of all copies of the Software and of copies made by you is vested in Altova, subject to the rights of use granted to you in this Agreement.

(h) Reverse Engineering. You may not reverse engineer, decompile, disassemble or otherwise attempt to discover the source code, underlying ideas, underlying user interface techniques or algorithms of the Software by any means whatsoever, directly or indirectly, or disclose any of the foregoing, except to the extent you may be expressly permitted to decompile under applicable law, it is essential to do so in order to achieve operability of the Software with another software program, and you have first requested Altova to provide the information necessary to achieve such operability and Altova has not made such information available. Altova has the right to impose reasonable conditions and to request a reasonable fee before providing such information. Any information supplied by Altova or obtained by you, as permitted hereunder, may only be used by you for the purpose described herein and may not be disclosed to any third party or used to create any software which is substantially similar to the expression of the Software. Requests for information should be directed to the Altova Customer Support Department.

(i) Other Restrictions. You may not loan, rent, lease, sublicense, distribute or otherwise transfer all or any portion of the Software to third parties except to the limited extent set forth in Section 3. You may not copy the Software except as expressly set forth above, and any copies that you are permitted to make pursuant to this Agreement must contain the same copyright, patent and other intellectual property markings that appear on or in the Software. You may not modify, adapt or translate the Software. You may not, directly or indirectly, encumber or suffer to exist any lien or security interest on the Software; knowingly take any action that would cause the Software to be placed in the public domain; or use the Software in any computer environment not specified in this Agreement. You will comply with applicable law and Altova's instructions regarding the use of the Software. You agree to notify your employees and agents who may have access to the Software of the restrictions contained in this Agreement and to ensure their compliance with these restrictions. THE SOFTWARE IS NOT INTENDED FOR USE IN THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT NAVIGATION, COMMUNICATION SYSTEMS OR AIR TRAFFIC CONTROL EQUIPMENT, WHERE THE FAILURE OF THE SOFTWARE COULD LEAD TO DEATH, PERSONAL INJURY OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE. YOU AGREE THAT YOU ARE SOLELY RESPONSIBLE FOR THE ACCURACY AND ADEQUACY OF THE SOFTWARE FOR ITS INTENDED USE AND YOU WILL INDEMNIFY AND SAVE HARMLESS ALTOVA FROM ANY 3RD PARTY SUIT TO THE EXTENT BASED UPON THE ACCURACY AND ADEQUACY OF THE SOFTWARE IN YOUR USE.
(j) License Metering. Altova has a built-in license metering module that helps you to avoid any unintentional violation of this Agreement. Altova may use your internal network for license metering between installed versions of the Software.
(k) Software Activation. Altova may use your internal network and internet connection for the purpose of transmitting license-related data entered by the user at the time of installation or registration to an Altova-operated license server and validating the authenticity of the license-related data in order to protect Altova against software piracy.
(l) LiveUpdate. Altova provides an optional new LiveUpdate notification service to you, which is free of charge. Altova may use your internal network and internet connection for the purpose of transmitting license-related data to an Altova-operated LiveUpdate server to validate your license and determine if there is any update available for you. This transmission typically takes place at a specified interval (e.g. only once per week) and you are free to deactivate this service in the Software settings.

2. INTELLECTUAL PROPERTY RIGHTS

Acknowledgement of Altova's Rights. You acknowledge that the Software and any copies that you are authorized by Altova to make are the intellectual property of and are owned by Altova and its suppliers. The structure, organization and code of the Software are the valuable trade secrets and confidential information of Altova and its suppliers. The Software is protected by copyright, including without limitation by United States Copyright Law, international treaty provisions and applicable laws in the country in which it is being used. You acknowledge that Altova retains the ownership of all patents, copyrights, trade secrets, trademarks and other intellectual property rights pertaining to the Software, and that Altova's ownership rights extend to any images, photographs, animations, videos, audio, music, text and "applets" incorporated into the Software and all accompanying printed materials. You will take no actions which adversely affect Altova's intellectual property rights in the Software. Trademarks shall be used in accordance with accepted trademark practice, including identification of trademark owners' names. Trademarks may only be used to identify printed output produced by the Software, and such use of any trademark does not give you any right of ownership in that trademark. XMLSPY, AUTHENTIC, STYLEVISION, MARKUP YOUR MIND, AXAD, NANONULL, and ALTOVA are trademarks of Altova GmbH (registered in numerous countries). Unicode and the Unicode Logo are trademarks of Unicode, Inc. Windows, Windows 95, Windows 98, Windows NT, Windows 2000 and Windows XP are trademarks of Microsoft. W3C, CSS, DOM, MathML, RDF, XHTML, XML and XSL are trademarks (registered in numerous countries) of the World Wide Web Consortium (W3C); marks of the W3C are registered and held by its host institutions, MIT, INRIA and Keio. Except as expressly stated above, this Agreement does not grant you any intellectual property rights in the Software.

3. LIMITED TRANSFER RIGHTS
Notwithstanding the foregoing, you may transfer all your rights to use the Software to another person or legal entity provided that: (a) you also transfer each of this Agreement, the Software and all other software or hardware bundled or pre-installed with the Software, including all copies, updates and prior versions, and all copies of font software converted into other formats, to such person or entity; (b) you retain no copies, including backups and copies stored on a computer; (c) the receiving party secures a personalized key code from Altova; and (d) the receiving party accepts the terms and conditions of this Agreement and any other terms and conditions upon which you legally purchased a license to the Software. Notwithstanding the foregoing, you may not transfer education, pre-release, or not-for-resale copies of the Software.

4. PRE-RELEASE PRODUCT ADDITIONAL TERMS

If the product you have received with this license is pre-commercial release or beta Software ("Pre-release Software"), then this Section applies. To the extent that any provision in this Section is in conflict with any other term or condition in this Agreement, this Section shall supersede such other term(s) and condition(s) with respect to the Pre-release Software, but only to the extent necessary to resolve the conflict. You acknowledge that the Software is a pre-release version, does not represent final product from Altova, and may contain bugs, errors and other problems that could cause system or other failures and data loss. CONSEQUENTLY, THE PRE-RELEASE SOFTWARE IS PROVIDED TO YOU "AS-IS", AND ALTOVA DISCLAIMS ANY WARRANTY OR LIABILITY OBLIGATIONS TO YOU OF ANY KIND EXPRESS OR IMPLIED. WHERE LEGALLY LIABILITY CANNOT BE EXCLUDED FOR PRE-RELEASE SOFTWARE, BUT IT MAY BE LIMITED, ALTOVA'S LIABILITY AND THAT OF ITS SUPPLIERS SHALL BE LIMITED TO THE SUM OF FIFTY DOLLARS (U.S.$50) IN TOTAL. You acknowledge that Altova has not promised or guaranteed to you that Pre-release Software will be announced or made available to anyone in the future, that Altova has no express or implied obligation to you to announce or introduce the Pre-release Software and that Altova may not introduce a product similar to or compatible with the Pre-release Software. Accordingly, you acknowledge that any research or development that you perform regarding the Pre-release Software or any product associated with the Pre-release Software is done entirely at your own risk. During the term of this Agreement, if requested by Altova, you will provide feedback to Altova regarding testing and use of the Pre-release Software, including error or bug reports. If you have been provided the Pre-release Software pursuant to a separate written agreement, your use of the Software is governed by such agreement. You may not sublicense, lease, loan, rent, distribute or otherwise transfer the Pre-release Software. Upon receipt of a later unreleased version of the Pre-release Software or release by Altova of a publicly released commercial version of the Software, whether as a stand-alone product or as part of a larger product, you agree to return or destroy all earlier Pre-release Software received from Altova and to abide by the terms of the license agreement for any such later versions of the Pre-release Software.

5. WARRANTY AND LIMITATION OF LIABILITY
(a) Limited Warranty. Altova warrants that (a) the Software will perform substantially in accordance with any accompanying Documentation for a period of ninety (90) days from the date of receipt, and (b) any support services provided by Altova shall be substantially as described in section 6 of this agreement. Some states and jurisdictions do not allow limitations on duration of an implied warranty, so the above limitation may not apply to you. To the extent allowed by applicable law, implied warranties on the Software, if any, are limited to ninety (90) days.
(b) Customer Remedies. Altova's and its suppliers' entire liability and your exclusive remedy shall be, at Altova's option, either (a) return of the price paid, if any, or (b) repair or replacement of the Software that does not meet Altova's Limited Warranty and which is returned to Altova with a copy of your receipt. This Limited Warranty is void if failure of the Software has resulted from accident, abuse or misapplication. Any replacement Software will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer.

(c) No Other Warranties. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, ALTOVA AND ITS SUPPLIERS DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, INFORMATIONAL CONTENT OR ACCURACY, QUIET ENJOYMENT, TITLE AND NON-INFRINGEMENT, WITH REGARD TO THE SOFTWARE, AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES. THIS LIMITED WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS. YOU MAY HAVE OTHERS, WHICH VARY FROM STATE/JURISDICTION TO STATE/JURISDICTION.

(d) Limitation Of Liability. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL ALTOVA OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE OR THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, EVEN IF ALTOVA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN ANY CASE, ALTOVA'S ENTIRE LIABILITY UNDER ANY PROVISION OF THIS AGREEMENT SHALL BE LIMITED TO THE AMOUNT ACTUALLY PAID BY YOU FOR THE SOFTWARE PRODUCT. Because some states and jurisdictions do not allow the exclusion or limitation of liability, the above limitation may not apply to you. In such states and jurisdictions, Altova's liability shall be limited to the greatest extent permitted by law.

(e) Infringement Claims. Altova will indemnify and hold you harmless and will defend or settle any claim, suit or proceeding brought against you that is based upon a claim that the content contained in the Software infringes a copyright or violates an intellectual or proprietary right protected by United States or European Union law ("Claim"), but only to the extent the Claim arises directly out of the use of the Software. You must notify Altova in writing of any Claim within ten (10) business days after you first receive notice of the Claim, and you shall provide to Altova at no cost with such assistance and cooperation as Altova may reasonably request from time to time in connection with the defense of the Claim. Altova shall have sole control over any Claim (including, without limitation, the selection of counsel and the right to settle on your behalf on any terms Altova deems desirable in the sole exercise of its discretion). You may, at your sole cost, retain separate counsel and participate in the defense or settlement negotiations. Altova shall pay actual damages, costs, and attorney fees awarded against you (or payable by you pursuant to a settlement agreement) in connection with a Claim to the extent such damages and costs are not reimbursed to you by insurance or a third party, to an aggregate maximum equal to the purchase price of the Software. If the Software or its use becomes the subject of a Claim or its use is enjoined, or if in the opinion of Altova's legal counsel the Software is likely to become the subject of a Claim, Altova shall attempt to resolve the Claim by using commercially reasonable efforts to modify the Software or obtain a license to continue using the Software. If in the opinion of Altova's legal counsel the Claim, the injunction or potential Claim cannot be resolved through reasonable modification or licensing, Altova, at its own election, may terminate this Agreement without penalty, and will refund to you on a pro rata basis any fees paid in advance by you to Altova. THE FOREGOING CONSTITUTES ALTOVA'S SOLE AND EXCLUSIVE LIABILITY FOR INTELLECTUAL PROPERTY INFRINGEMENT. This indemnity does not apply to infringements that would not be such, except for customer-supplied elements.

6. SUPPORT AND MAINTENANCE
Altova offers an optional "Support & Maintenance Package" which you may elect to purchase in addition to your Software license. The Support Period covered by such a package shall be delineated at such time as you elect to purchase the package. Your rights with respect to support and maintenance depend on your decision to purchase this optional package:
(a) If you have not purchased the Support & Maintenance Package, you will receive the Software AS IS and will not receive any maintenance releases or updates. However, Altova, at it's option, may decide to offer maintenance releases to you as a courtesy, but these maintenance releases will not include any new features in excess of the feature set at the time of your purchase of the Software. In addition, Altova will provide free technical support to you for 30 days after the date of your purchase (the "Support Period" for the purposes of this paragraph a), and Altova, in its discretion, may also provide free courtesy technical support during your 30-day evaluation period. Technical support is provided via a web-based support form only, and there is no guaranteed response time.
(b) If you have purchased the Support & Maintenance Package, you will receive the Software and all maintenance releases or updates for the duration of the Support Period, which may or may not include additional features. Updates and maintenance releases only cover the minor releases within the same major version of the software that you have purchased, and upgrades to the next major version are specifically not included in this maintenance. However, Altova will offer you an "upgrade advantage", by providing you with a special upgrade price for the next major version of the Software, which is guaranteed to be lower than the future upgrade price to the next major version that customers without a current Support and Maintenance Package will have to pay. In addition, Altova will provide Priority Technical Support to you for the duration of the Support Period. Priority Technical Support is provided via a web-based support form only, and Altova will make commercially reasonable efforts to respond via e-mail to all requests within 48 hours during Altova's business hours (MO-FR, 8am UTC - 10pm UTC, Austrian and US holidays excluded) and to make reasonable efforts to provide work-arounds to errors reported in the Software.

During the Support Period you may also report any Software problem or error to Altova. If Altova determines that a reported reproducible material error in the Software exists and significantly impairs the usability and utility of the Software, Altova agrees to use reasonable commercial efforts to correct or provide a usable work-around solution in an upcoming maintenance release or update, which is made available at certain times at Altova's sole discretion.

If Altova, in its discretion, requests written verification of an error or malfunction discovered by you or requests supporting example files that exhibit the Software problem, you shall promptly provide such verification or files, by email, telecopy, or overnight mail, setting forth in reasonable detail the respects in which the Software fails to perform. You shall use reasonable efforts to cooperate in diagnosis or study of errors.

Altova may include error corrections in maintenance releases, updates, or new major releases of the Software. Altova is not obligated to fix errors that are immaterial. Immaterial errors are those that do not significantly impact use of the Software.

Whether or not you have purchased the Support & Maintenance Package, technical support only covers issues or questions resulting directly out of the operation of the Software and Altova will not provide you with generic consultation, assistance, or advice under any circumstances.

Updating Software may require the updating of software not covered by this Agreement before installation. Updates of the operating system and application software not specifically covered by this Agreement are your responsibility and will not be provided by Altova under this Agreement.

Altova's obligations under this Section 6 are contingent upon your proper use of the Software an your compliance with this Agreement. Altova shall be under no obligation to provide the above technical support if, in Altova's opinion, the Software has failed due to the following conditions: (i) damage caused by the relocation of the software to another location or CPU; (ii) alterations, modifications or attempts to change the Software without Altova's written approval; (iii) causes external to the Software, such as natural disasters, the failure or fluctuation of electrical power, or computer equipment failure; (iv) your failure to maintain the Software at Altova's specified release level; or (v) use of the Software with other software without Altova's prior written approval.

It will be your sole responsibility to: (i) comply with all Altova-specified operating and troubleshooting procedures and then notify Altova immediately of Software malfunction and provide Altova with complete information thereof; (iii) provide for the security of your confidential information; (iv) establish and maintain backup systems and procedures necessary to reconstruct lost or altered files, data or programs.

7. TERM AND TERMINATION
This Agreement may be terminated (a) by your giving Altova written notice of termination; or (b) by Altova, at its option, giving you written notice of termination if you commit a breach of this Agreement and fail to cure such breach within ten (10) days after notice from Altova. Upon any termination of this Agreement, you must cease all use of the Software, destroy all copies then in your possession or control and take such other actions as Altova may reasonably request to ensure that no copies of the Software remain in your possession or control.

8. GENERAL PROVISIONS

If there is a local subsidiary of Altova in the country in which the Software was obtained, then the local law of the jurisdiction in which the subsidiary is located shall govern this Agreement. Otherwise, this Agreement shall be governed by the laws of the Republic of Austria and, to the extent applicable, the European Union. This Agreement contains the entire agreement and understanding of the parties with respect to the subject matter hereof, and supersedes all prior written and oral understandings of the parties with respect to the subject matter hereof. Any notice or other communication given under this Agreement shall be in writing and shall have been properly given by either of us to the other if sent by certified or registered mail, return receipt requested, or by overnight courier to the address shown on Altova's Web site for Altova and the address shown in Altova's records for you, or such other address as the parties may designate by notice given in the manner set forth above. This Agreement will bind and inure to the benefit of the parties and our respective heirs, personal and legal representatives, affiliates, successors and permitted assigns. The failure of either of us at any time to require performance of any provision hereof shall in no manner affect such party's right at a later time to enforce the same or any other term of this Agreement. This Agreement may be amended only by a document in writing signed by both of us. In the event of a breach or threatened breach of this Agreement by either party, the other shall have all applicable equitable as well as legal remedies. The Software and its related documentation may not be exported or reexported in violation of the U.S. Export Administration Act and its implementing regulations or the laws of the jurisdiction in which the Software was obtained. Each party is duly authorized and empowered to enter into and perform this Agreement. If, for any reason, any provision of this Agreement is held invalid or otherwise unenforceable, such invalidity or unenforceability shall not affect the remainder of this Agreement, and this Agreement shall continue in full force and effect to the fullest extent allowed by law. The parties knowingly and expressly consent to the foregoing terms and conditions.

Previous Top


.topic 40000
Altova provides many services through our web site, which you can directly access from the Help Menu within XMLSPY 5 or through the help system.

Please visit our Home Page frequently to learn about product updates, news, and other XML related information.

The Support Center shows available support options that you can access freely as a registered user.

The FAQ contains a collection of frequently asked questions and their answers. Please make sure that you check this resource, before submitting a new incident to our technical support staff.

If you have been using the evaluation version and want to buy the fully licensed product, or if you need to purchase additional license for your colleagues, please visit our Order Pages to access our secure online shop.

.topic 50000
This chapter contains useful background information on the technical aspects of XMLSPY 5. If you run across a technical term in the remainder of this help system you may occasionally find a link to some of the background materials provided here.

.topic 54000
Unicode is the new 16-bit character-set standard defined by the Unicode Consortium that provides a unique number for every character,

no matter what the platform,
no matter what the program,
no matter what the language.

Fundamentally, computers just deal with numbers. They store letters and other characters by assigning a number for each one. Before Unicode was invented, there were hundreds of different encoding systems for assigning these numbers. No single encoding could contain enough characters: for example, the European Union alone requires several different encodings to cover all its languages. Even for a single language like English, no single encoding was adequate for all the letters, punctuation, and technical symbols in common use.

These encoding systems used to conflict with one another. That is, two encodings used the same number for two different characters, or different numbers for the same character. Any given computer (especially servers) needs to support many different encodings; yet whenever data is passed between different encodings or platforms, that data always runs the risk of corruption.

Unicode is changing all that!
Unicode provides a unique number for every character, no matter what the platform, no matter what the program, and no matter what the language. The Unicode Standard has been adopted by such industry leaders as Apple, HP, IBM, JustSystem, Microsoft, Oracle, SAP, Sun, Base and many others.

Unicode is required by modern standards such as XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML, etc., and is the official way to implement ISO/IEC 10646. It is supported in many operating systems, all modern browsers, and many other products. The emergence of the Unicode Standard, and the availability of tools supporting it, are among the most significant recent global software technology trends.

Incorporating Unicode into client-server or multi-tiered applications and web sites offers significant cost savings over the use of legacy character sets. Unicode enables a single software product or a single web site to be targeted across multiple platforms, languages and countries without re-engineering. It allows data to be transported through many different systems without corruption.

Even though XML is clearly defined to be based on the Unicode standard, XMLSPY 5 is still one of the few XML development tools that fully implements Unicode!

.topic 54002
These Windows versions do not include full Unicode capabilities on the operating system layer. Instead support for non-roman writing-systems is provided through so-called code-pages that contain all the required characters mapped to either the available byte-values in the range of 0x80 to 0xFF (in case of single-byte systems, such as Cyrillic or Hebrew) or as double-byte values, where the first most significant bit of the first byte is typically used to indicate that this is a so-called "wide character" (in case of CJK writing-systems).

We therefore provider a special Windows 95/98/ME version of XMLSPY 5 that is automatically installed whenever you are using the Setup program on these operating systems. This version of XMLSPY 5 supports the following code-pages for viewing and editing XML documents (for excellent background information about code-pages please refer to http://czyborra.com/charsets/codepages.html):

Code-page	Equivalent XML Encoding
1252	ISO-8859-1 (Western, Latin-1)
1250	ISO-8859-2 (Eastern Europe, Latin-2)
1251	ISO-8859-5 (Cyrillic)
1253	ISO-8859-7 (Greek)
1254	ISO-8859-9 (Turkish)
1255	ISO-8859-8 (Hebrew)
1256	ISO-8859-6 (Arabic)
874	ISO-8859-11/TIS-620 (Thai)
932	Shift-JIS (Japanese)
936	GB2312 (Chinese)
949	EUC-KR (Korean)
950	Big5 (Taiwanese)

Whenever you open an XML file, XMLSPY 5 detects the character-set encoding used in that file, expands the file to an internal full Unicode representation and then transforms the document to a code-page supported by Windows 95/98 in order to enable viewing and editing of the document.

In most cases this process will be entirely automatic, as the available ISO-8895-x encodings as well as some of the CJK encodings often correspond with a certain code-page. However, if you open a Unicode encoded file (e.g. UTF-8 or UTF-16) XMLSPY 5 will be unable to determine which code-page to use and will thus bring up a dialog box that asks you to specify a code-page to be used for editing.

In order to correctly view and edit a Unicode file under Windows 95/98/ME it is extremely important that you use this dialog box to:

a)	choose the correct code-page that includes all characters contained in the file and
b)	later select a font and script from the settings dialog box that also supports the same code-page.

If the file contains any characters that are not available in the selected code-page, the user will receive an error message including a detailed list of offending characters before they will be replaced by a '_' (underscore).

We therefore highly recommend using only the Windows NT/2000 version of XMLSPY 5 for editing XML files that make full use of Unicode!