To clarify a little.I would see this MCE-esque scenario as something like this:If the (XML, eg UBL) invoice contains any eneties marked witha 'MustUnderstand' attribute, say, but my finance app doesn'thave them on, say, a list of entities it already includes properlyin its calculations, then it will reject the invoice (or at leastmark it as an exception which the application cannot processwith regard to its calculations). Likewise, the applicationsending the invoice will need to be programmed such that allcalculation-sensitive data can be (and is) marked 'MustUnderstand'.Obviously there will be more to it than that in real life but it's anarhictectural pattern for XML (for business documents at least)I've been after for a long time. It nicely complements and perhapscompletes the architectural pattern of schema subsets.----Stephen D GreenOn 11 April 2013 08:23, Stephen D Green <stephengreenubl@gmail.com> wrote:Well with some business-transaction documents such as invoicesthere is a calculation model which is very important to get rightwhen processing the document. The processing application (code)has to know which entities are important components of thecalculation and which are not. If there are no variations to theschema (or more specifically to the structure and semantics) thecalculation model is clear. Having a situation where there are novariations which could impact the calculation model is extremelyoptimistic when there are many parties involved, especially whenthere are multiple countries and accounting and tax systemsinvolved. So having a way to always be certain whether a strangeentity is relevant to the calculation model is important to allowreliable calculations even in a non-homogenous scenario wherethere are multiple variations, some known, some unknown (suchas new versions and unfamiliar customisations or even variationsin the use of the same schema)... And that's a simplification.----Stephen D GreenOn 10 April 2013 16:43, John Cowan <johnwcowan@gmail.com> wrote:On Wed, Apr 10, 2013 at 7:18 AM, Stephen D Green <stephengreenubl@gmail.com> wrote:--The MCE, mentioned in the other thread, does look quite promising forfuture developments of XML standards for Invoices though: If it becomespossible to label some entities as 'must understand' and others as'ignorable'.I used to be a big believer in this distinction. Then I realized that "must understand" begs the question "in order to do what?" If you are an editor for office documents, or even a viewer, it may make some sort of sense. But suppose you just want to count the number of paragraphs with a little bit of XSLT? Are you supposed to make use of the MCE information in this case? Obviously not. But there simply is no bright line between when you should and when you should not, making the whole notion of "must understand" extremely problematic to apply.There's a nice analogy with what the Open Source Initiative mailing lists call "badgeware". These are web applications that you can use and modify freely, provided you keep the original creator's logo, or a link, on the splash screen, or even all screens. The authors always want us to bless their licenses as open source, but they can't be. Why not? Because they don't realize how wide the scope of "modification" is. Suppose you just want to pull out the date-parsing code and reuse it server-side, where there is nowhere to display the badge. Is that valid according to the license? Probably not. And if it is, where can the line be drawn between reusing the whole thing and just changing the logo, and this sort of reuse of individual modules? Nobody knows. So we have to turn down such licenses.
GMail doesn't have rotating .sigs, but you can see mine at http://www.ccil.org/~cowan/signatures