Archive for the ‘Metadata’ Category

Viewing XML Schemas (XSDs)

Sunday, February 1st, 2009

A few things have come together leading to this post.

  1. Recently acquired Oxygen XML editor.

  2. Was introduced to a new XML schema, which was not accompanied by a visualization of the schema nor were there examples of the resulting XML.

  3. Discovered the Oxygen XML feature that reveals the hierarchy of the XML based on the XML’s schema (XSD) file.

  4. Discovered that you could export those views as a PNG image.

I regularly need to use XML metadata formats and I enjoy using them, but I’ve always disliked how difficult it is to get a feel for how the XSD translates to XML (especially when there are no or very few examples) and how the metadata is organized as XML.

When I installed the Oxygen XML editor and discovered the feature that visualizes the element hierarchy and organization from an XSD, I started to plug XSDs into Oxygen just to look at the metadata formats in a different way.

Continuing to play with Oxygen, I expanded the elements and attributes in the XSD display and saved the results as a PNG image. I then downloaded Zoomify and the open source image tiler program written in Python that will tile large images for use with Zoomify. I passed each PNG image of an Oxygen XSD display through the image tiler and created the appropriate way to display. Voila.

As a general disclaimer, XML schemas and documents are organized vertically (mainly). Therefore, because of the increasing popularity of widescreen monitors, it would be better to look at the XML hierarchy and organization in a horizontal format versus the vertical format created by Oxygen XML. If I ever get time, I’ll look into a way to do that differently.

In any event, the displays are here. Included are:

Dublin Core
Dublin Core Terms
VRA Core 4.0
Categories for the Description of Works of Art
Encoded Archival Description
Metadata and Encoding Transmission Standard
Fedora Object XML
Metadata Object Description Schema (MODS)
XML for Single Email Account Preservation

I may do a few more. If so, I’ll update accordingly.

Entries (RSS)