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.
As an example for XSCS, the Schema for Schemas is available in XSCS:
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 14:34:24 CET |
![]() ![]() ![]() |