[
Lists Home |
Date Index |
Thread Index
]
At 06:12 PM 4/3/2003 +1000, Rick Jelliffe wrote:
>You can have your cake and eat it too, Marie Antoinette not
>withstanding.
>
>For example,
><!ATTLIST cybfea
> fullname CDATA #FIXED "CurrentYearBudgetFinalEstimatedAmount"
> type CDATA #FIXED "Amount"
> yearType CDATA #FIXED "CurrentYear"
> amountType CDATA #FIXED "Budget"
> finalIndicator CDATA #FIXED "Final"
> estimateIndicator CDATA #FIXED "Estimated"
> >
>
>means that the markup of
>
><cybfea>999.99</cybfea>
>
>implies the infoset of
>
><cybfea fullname="CurrentYearBudgetFinalEstimatedAmount"
> type="Amount"
> yearType="CurrentYear"
> amountType="Budget"
> finalIndicator="Final"
> estimateIndicator="Estimated"
> >999.99</cybfea>
Of course, there is a cost to this approach as well - in some environments,
users like to look at their markup and write queries or programs based on
what they see in the instance. With Rick's approach, most of the action is
precisely in the things you can't see when looking at the instance
document. On the other hand, it conveys the information you need very
compactly if the size of the markup matters in your environment.
Again, it's best to figure out how the data will be used so you know which
factors are important to optimize. Design is a kind of optimization, and
you can't design until you know what you are trying to optimize.
Jonathan
|