stag-autoschema.pl

Langue: en

Autres versions - même langue

Version: 2005-11-17 (fedora - 04/07/09)

Section: 1 (Commandes utilisateur)

NAME

stag-autoschema.pl - writes the implicit stag-schema for a stag file

SYNOPSIS

   stag-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