Hi,

            I’d like to make a small change to the xml for describing table schemas.  Basically, I’d like to simplify how tables that generate symbols are specified.  I’ve noticed that when a table generates symbols, it always uses the primary key columns.  As a simplification, I think we can just tag the tables which should generate symbols instead of the individual columns which should be part of the symbol.

 

For example, this:

    <tableDefinition name="ControlEvent">

        <columnDefinition name="Dialog_" type="string" length="72" primaryKey="yes" symbol="yes" modularize="column"

                keyTable="Dialog" keyColumn="1" category="identifier" description="A foreign key to the Dialog table, name of the dialog."/>

        <columnDefinition name="Control_" type="string" length="50" primaryKey="yes" symbol="yes"

                keyTable="Control" keyColumn="2" category="identifier" description="A foreign key to the Control table, name of the control"/>

        <columnDefinition name="Event" type="string" length="50" primaryKey="yes" symbol="yes" modularize="property"

                category="formatted" description="An identifier that specifies the type of the event that should take place when the user interacts with control specified by the first two entries."/>

        <columnDefinition name="Argument" type="string" length="255" primaryKey="yes" symbol="yes" modularize="controlEventArgument" localizable="yes"

                category="formatted" description="A value to be used as a modifier when triggering a particular event."/>

        <columnDefinition name="Condition" type="string" length="255" primaryKey="yes" symbol="yes" nullable="yes" modularize="condition" localizable="yes"

                category="condition" description="A standard conditional statement that specifies under which conditions an event should be triggered."/>

        <columnDefinition name="Ordering" type="number" length="2" nullable="yes"

                minValue="0" maxValue="2147483647" description="An integer used to order several events tied to the same control. Can be left blank."/>

    </tableDefinition>

 

Becomes:

    <tableDefinition name="ControlEvent" createSymbols="yes">

        <columnDefinition name="Dialog_" type="string" length="72" primaryKey="yes" modularize="column"

                keyTable="Dialog" keyColumn="1" category="identifier" description="A foreign key to the Dialog table, name of the dialog."/>

        <columnDefinition name="Control_" type="string" length="50" primaryKey="yes"

                keyTable="Control" keyColumn="2" category="identifier" description="A foreign key to the Control table, name of the control"/>

        <columnDefinition name="Event" type="string" length="50" primaryKey="yes" modularize="property"

                category="formatted" description="An identifier that specifies the type of the event that should take place when the user interacts with control specified by the first two entries."/>

        <columnDefinition name="Argument" type="string" length="255" primaryKey="yes" modularize="controlEventArgument" localizable="yes"

                category="formatted" description="A value to be used as a modifier when triggering a particular event."/>

        <columnDefinition name="Condition" type="string" length="255" primaryKey="yes" nullable="yes" modularize="condition" localizable="yes"

                category="condition" description="A standard conditional statement that specifies under which conditions an event should be triggered."/>

        <columnDefinition name="Ordering" type="number" length="2" nullable="yes"

                minValue="0" maxValue="2147483647" description="An integer used to order several events tied to the same control. Can be left blank."/>

    </tableDefinition>

 

What do you guys think?  (Also, I’m flexible on the naming, so if you have a better idea than “createSymbols”, please suggest it.)

 

Thanks,

Derek

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-devs

Reply via email to