A project is a collection of files that are related to each other in some way you determine. For example, in the screenshot below, a project named Examples collects the files for various examples in separate example folders, each of which can be further organized into sub-folders. Within the Examples project shown in the screenshot, for instance, the Expense Report folder is further organized into sub-folders for XML, XSL, and Schema files.
|Note:||The Project Window of XMLSpy will initially contain the application's default Examples project. To load the default Examples project, go to the application's Examples folder in the (My) Documents folder, and double-click the file Examples.spp.|
Projects thus enable you to gather together files that are used together and to access them quicker. Additionally, you can define schemas and XSLT files for individual folders, thus enabling the batch processing of files in a folder.
Commands for folder operations are available in the Project menu, and some commands are available in the context menus of the project and its folders (right-click to access). A subset of Project menu commands, because they are frequently used, are also available in the toolbar of the Project Window (screenshot below).
The toolbar commands are, from left: New Project, Open Project, Reload Project, Save Project, Add Active File to Project, Select Active File, Expand All, Collapse All, Find. The names of these commands are self-explanatory and are explained in the Project menu.
The key operations related to the Project Window are listed below.
•One project is open at a time in the Project Window. When a new project is created or an existing project opened, it replaces the project currently open in the Project Window.
•After changes have been made to a project, the project must be saved (by clicking the Project | Save Project command). A project with unsaved changes is indicated with an asterisk next to its name (see screenshot above).
•The project has a tree structure composed of folders, files, and other resources. Such resources can be added at any level and to an unlimited depth.
•Project folders are semantic folders that represent a logical grouping of files. They do not need to correspond to any hierarchical organization of files on your hard disk.
•Folders can correspond to, and have a direct relationship to, physical directories on your file system. We call such folders external folders, and they are indicated in the Project Window by a yellow folder icon (as opposed to normal project folders, which are green). External project folders must be explicitly synchronized by using the Refresh command.
•A folder can contain an arbitrary mix of file-types. Alternatively, you can define file-type extensions for each folder (in the Properties dialog of that folder) to keep common files in one convenient place. When a file is added to the parent folder, it is automatically added to the sub-folder that has been defined to contain files of that file extension.
•When you hover over an image file that has been placed in a project folder, a preview of the image is displayed (.png, .jpeg, .gif, .bmp, .tiff, and .ico formats). Double-click the image to open it in the system's default image viewer/editor program.
•In the Project Window, a folder can be dragged to another folder or to another location within the same folder, while a file can be dragged to another folder but cannot be moved within the same folder (within which files are arranged alphabetically). Additionally, files and folders can be dragged from Windows File Explorer to the Project Window.
•Each folder has a set of properties that are defined in the Properties dialog of that folder. These properties include file extensions for the folder, the schema by which to validate XML files, the XSLT file with which to transform XML files, etc.
•Batch processing of files in a folder is done by right-clicking the folder and selecting the relevant command from the context menu (for example, Validate XML or Check Well-Formedness).
For a more detailed description of projects, see the section Projects.
|Note:||The display of the Project Window can be turned on and off in the Window menu.|