XSCS (XML Schema Compact Syntax)

XSCS Project Page from Erik Wilde's Project List


XSCS Abstract

XML Schema is a rather complex schema language, partly because of its inherent complexity, and partly because of its XML syntax. In an effort to reduce the syntactic verboseness and complexity of XML Schema, we designed the XML Schema Compact Syntax (XSCS), a non-XML syntax for XML Schema. XSCS is designed for human users, and transformations from and to XML Schema XML syntax are implemented using Java-based tools.

XSCS Example

As an example for XSCS, the Schema for Schemas is available in XSCS:

XSCS Publications

XSCS Software

Java Software for converting between XSCS and XML Schema XML Syntax (in both directions) is available. This software is based on the Apache Xerces2 Java XML Processor, so you need to download the Xerces2 Java runtime. Please follow the Xerces2 Java installation instructions to install Xerces2. Please note that you need the xerces.jar as well as the xercesImpl.jar jar files to run the XSCS software.

After downloading and installing Xerces2 Java, you can download xsc.jar and are now ready to run the XSCS software. Depending on your installation (jar locations and classpath) and Java version, you might need to make things a bit differently, but basically you can run the XSCS software in the following two ways:

XSCS to XML syntax: java -classpath xerces.jar;xercesImpl.jar;xsc.jar noown.domain.xsc.util.XSCtoXML

usage: java noown.domain.xsc.util.XSCtoXML [options] infile [outfile]
options: -d : debug output
-p : don't indent output
-e encoding : specify encoding of input/output file
-a : ignore annotations
-v : validate file using xerces

XML syntax to XSCS: java -classpath xerces.jar;xercesImpl.jar;xsc.jar noown.domain.xsc.util.XMLtoXSC

usage: java noown.domain.xsc.util.XMLtoXSC [options] xmlfile compactfile
options: -a : skip annotations
-v : validate input file
-i number or t: use specified number of blanks (or tab) for indentation (default 3)
-n newline: specify newline (CR, CR-LF or LF)
-e encoding: specify encoding to use
-w number: wrap lines after number characters

This software is provided "as-is", without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to redistribute it freely.


Last modification:
Wednesday, 10-Nov-2004 05:34:24 PST
WCAG 1.0 AA Valid CSS! Valid XHTML 1.0!