Provided by: libdata-stag-perl_0.14-2_all
NAME
stag-autoschema - writes the implicit stag-schema for a stag file
SYNOPSIS
stag-autoschema -w sxpr sample-data.xml stag-autoschema -dtd sample-data.xml
DESCRIPTION
Takes a stag compatible file (xml, sxpr, itext), or a file in any format plus a parser, and writes out the implicit underlying stag-schema stag-schema should look relatively self-explanatory. Here is an example stag-schema, shown in sxpr syntax: (db (person* (name "s" (address+ (address_type "s") (street "s") (street2? "s") (city "s") (zip? "s"))))) The database db contains zero or more persons, each person has a mandatory name and at least one address. The cardinality mnemonics are as follows: + 1 or more ? 0 or one * 0 or more The default cardinality is 1
ARGUMENTS
-p|parser FORMAT FORMAT is one of xml, sxpr or itext, or the name of a perl module xml assumed as default -dtd exports schema as DTD -w|writer FORMAT FORMAT is one of xml, sxpr or itext, or the name of a perl module, OR DTD The default is sxpr note that stag schemas exported as xml will be invalid xml, due to the use of symbols *, +, ? in the node names
LIMITATIONS
not event based - memory usage becomes exhorbitant on large files; prepare a small sample beforehand