STAG-AUTOSCHEMA(1) User Contributed Perl Documentation STAG-AUTOSCHEMA(1)NAMEstag-autoschema.pl - writes the implicit stag-schema for a stag file
SYNOPSISstag-autoschema.pl-w sxpr sample-data.xml
stag-autoschema.pl-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
perl v5.14.1 2005-11-18 STAG-AUTOSCHEMA(1)