Editing XML

Editing XML is something system administrators seem to really hate; understandably, XML can employ a soup of standards! (Click to see Ken Sall's awesome image-map of XML related standards.) However, XML is awesome in providing a structured format for configuration and data files. In the OpenSolaris Automated Installer, XML is used as the manifest to select the system for install and how to install the system once selected. The Automated Installer uses a schema to verify the XML is acceptable to the installer engine and to provide a vocabulary of acceptable tags. However, if using a traditional text editor the process to author a manifest is rather painful since this data is not easily available to the author.

Using NetBeans for XML authoring

NetBeans, being a modern, integrated, developer environment provides a comprehensive XML authoring environment. One can provide a reference to an XML schema and then get: auto-completion of XML tags, the ability to validate the XML file under development against the schema and, if documented, tool-tips for each tag. However, the one issue for someone authoring Automated Installer manifests is NetBeans only supports XML Schema type schemas and the Automated Installer uses a RelaxNG schema. The answer is to convert the schema to XML Schema and for that, enter the Trang multi-format schema converter which can convert RelaxNG (.rng) to XML Schema (.xsd). Or download my annotated version below.

How to use schemas with NetBeans

To use NetBeans' context sensitive code completion, one needs an AI schema in XSD format. An annotated schema can be downloaded: AI Schema, Criteria Schema.

Lastly, you simply need to add a reference for NetBeans to find your schema. This can be done by using touch(1) to create a new file in the same directory as your two .xsd schemas (end the file with .xml). Then open the file in NetBeans and paste the following line in NetBeans to create an Automated Installer manifest:

Now, if you begin typing a tag (start a tag with