OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ubl-dev message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [ubl-dev] SBS and Restricted Data Types


David,

Thanks for the comparisons.  I haven't looked much into CAM, so 
wouldn't be in a position to meaningfully understand the benefits 
of CAM as you so suggested.  It does smell like there's something
nifty in it though :)

However, I think the main point of what I was trying to say about
Stephen's suggestion to change XSD was more at the XSD Schema level.
At that level, the "sub-of" operator needs to take 2 variables,
A and B, each of type XSD Schema, which means each supplied schema can,
in the general scope of what XSD Schema specifies, potentially 
contain xsd:redefine.  The question then becomes whether such a
"sub-of" operator can be constructed at all to provide a "TRUE"
or "FALSE" answer with regards to whether schema A is a proper
subset of B.  

And my additional point was that in a generic sense of what 
XSD schema has to deal with, the need to entertain the
presence of xsd:redefine forces us to insert of notion of *when*
into the sub-of operator.  In other words, rather than being able
to stay in the comfort of saying "A is (or not) sub-of B" perpetually,
we would need to say "A is (or not) sub-of B" before/after
redefine.  And if redefine can nest, or chain, or include, or
be conditionally performed, the sync-up points at which one could
say "A is sub-of B" would be so many as to probably make the 
question useless in practice.

I was also trying, by re-phrasing the question in earlier mail,
to try to give the "sub-of" operator a firmer footing (and I hope
I've done that.  I haven't been very rigorous yet, but the essential
points are there).  I've used the instance space as the determination
space of whether schema A is sub-of schema B, rather than using the
schema space (same space as the input parameters) to do so.  This
is because the instance space is the "more real" side where user
expecting schemas A & B that satisfies "sub-of(A, B) == TRUE" must
be such that an instance validated as acceptable by A would necessarily
be validated as acceptable by B (but not necessarily the converse,
for that would be "sub-of(B, A) == TRUE" also, which is not asserted).

Unfortunately, as with most math/logic statements that cover all
grounds, the definition has to involve "all possible", which translates
to unboundedness in practice.

If we limit ourselves to not general XSD Schemas, but just UBL 1.0
schemas, where redefine, substitutions, and other conditional
(ie, related to time) mechanisms of XSD are explicitly disallowed,
then there is a safer ground to talk about "sub-of(A, B) == TRUE"
without worrying about *when* it is TRUE, and *when* it is not.

Still, other structural commands, such as import, may give rise
to opportunities of a run-time FALSE for "sub-of(A, B)" even though
statically examination of all imported components return a TRUE.



Best Regards,
Chin Chee-Kai
SoftML
Tel: +65-6820-2979
Fax: +65-6820-2979
Email: cheekai@SoftML.Net
http://SoftML.Net/


On Wed, 3 May 2006, David RR Webber (XML) wrote:

>>Chin,
>>
>>CAM takes the declarative way out of this empasse.
>>
>>Whereas an XSD is describing (as you infer) all possible structural
>>permutations that you may possibly ever receive - the CAM template
>>allows you to exactly declare the permutation that matches your
>>business requirements and specify what the context drivers are.
>>
>>One nifty thing about this is - if I have a catalogue of existing CAM
>>templates for UBL transactions - I can actual search just based on
>>context parameters in the CAM template headers - to determine if there
>>is an available template for my needs.
>>
>>E.g. assume country_type is a key context factor in an UBL
>>export_manifest along with shipment_type - and allowed values are
>>'Perishable, Hazardous, Consumer-Recycle, Goods'.  I could search and
>>find a match if I'm looking to ship hazardous chemicals to a particular
>>country, and so on.
>>
>>Actually bringing together the work on context that the original CCTS
>>envisioned was possible...
>>
>>DW
>>
>>
>>
>>
>>
>>
>>
>> -------- Original Message --------
>>Subject: RE: [ubl-dev] SBS and Restricted Data Types
>>From: Chin Chee-Kai <cheekai@softml.net>
>>Date: Wed, May 03, 2006 12:01 pm
>>To: stephen.green@systml.co.uk
>>Cc: UBL-Dev <ubl-dev@lists.oasis-open.org>
>>
>>>>2. a way to say (and maybe
>>>>validate/verify) that a schema is a strict subset of another schema
>>>>of which it therefore uses the same namespace. Too late for XSD 1.1?
>>
>>Stephen,
>>
>>That's an interesting question to ask, or re-phrasing it,
>>"is there a way to determine if the entire set of all possible
>>instances that are validated as acceptable by a given schema (A)
>>are also validated as acceptable by another given schema (B)" ?
>>
>>Call this "sub-of" operator operating on 2 parameters (A) & (B)
>>each of type schema.
>>
>>But I suspect as long as a schema can metamorph into another
>>form during runtime through redefine, phrasing the question
>>itself might need to involve the notion of *when*.  In other words,
>>it may be necessary to cope with the idea of (A) being "sometimes"
>>sub-of (B) and "sometimes" not...
>>
>>This "sub-of" operator, taking inputs which are schema themselves,
>>would likely be outside of the realm in which XSD specifies.
>>But of course, whatever XSD does (or doesn't) specify would
>>affect the realisability of this "sub-of" operator that you suggested.
>>
>>
>>
>>
>>Chin Chee-Kai
>>SoftML
>>Tel: +65-6820-2979
>>Fax: +65-6820-2979
>>Email: cheekai@SoftML.Net
>>http://SoftML.Net/
>>
>>
>>
>>
>>---------------------------------------------------------------------
>>This publicly archived list supports open discussion on implementing the
>>UBL OASIS Standard. To minimize spam in the
>>archives, you must subscribe before posting.
>>
>>[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>>Alternately, using email: list-[un]subscribe@lists.oasis-open.org
>>List archives: http://lists.oasis-open.org/archives/ubl-dev/
>>Committee homepage: http://www.oasis-open.org/committees/ubl/
>>List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>>Join OASIS: http://www.oasis-open.org/join/
>>
>>




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]