[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Another worked example plus some issues raised while generating it
Hi, I have generated an example with the following basis: Imagine a BPSS step for sending in PurchaseOrders and getiing a response. The example is designed to cover three types of PurchaseOrder : Provision, Cease and Move for two Products KiloStream and KiloStreamN. A further optional parameter allows the supplier to be fixed. I encountered the following set of issues as I created it some are problems, some are just questions of style and interpretation. Comments and Questions as I edit a CAM Template 1) I am puzzled as to use either <as:constraint action="setChoice(//sro:Features/*)"/> folowed by a <as:constraint action="useChoice(//sro:Features/pro:Provision)"/> in a contraint or context or just a simple useTree. If you use useTree i) where does the tree come from and ii) does that immediate rule out the rest of the options at that layer. Example in doc does not show the tree in question within the structure. Also I expect the tree to come from another Structure? 2) I know I have asked this before but the order of processing is still somthing that I need to understand: Defaults applied before context rules? I hope so. 3) Could we have action settting several values ie action="makeOptional(x) and makeOptional(y) and makeOptional(z)" or for constraint actually have as:constraint makeOptional="x y z" using the XML list option. This makes for short definitions. or change to <as:constraint path="//element" action="makeOptional();restrictValues('N','Y');"/> 4) No operation to set default value. restrictValues(//@HousingType,'SHELF STAND ALONE WALL','SHELF') last param is default value? 5) Lists do not work for options with spaces eg: restrictValues(//@HousingType,'SHELF STAND ALONE WALL','SHELF') STAND ALONE is one option 6) Path names become intersting when you are trying to do cross field checks. Assuming Multiple addresses in file I want a check that says if PremisesName is not empty then makeOptional(sro:ThoroughfareNumber) But within the context of the address you are in. So <as:constraint condition="greaterthan(length(//sro:BritishAddress/sro:PremisesName),0)" action="makeOptional(sro:ThoroughfareNumber)"/> I have resolved this by: <as:context condition="//sro:BritishAddress"> <as:constraint action="makeOptional(sro:SubPremises)"/> <!-- atleast sro:PremisesName or sro:ThoroughfareNumber must exist or both --> <as:constraint condition="greaterthan(length(sro:PremisesName),0)" action="makeOptional(sro:ThoroughfareNumber)"/> <as:constraint condition="greaterthan(length(sro:ThoroughfareNumber),0)" action="makeOptional(sro:PremisesName)"/> <as:constraint action="makeOptional(sro:Locality)"/> </as:context> Define context for the following constraints i.e. any British Address then internal ref are in the context of one British Address 7) Does this make sense: <!-- if Site A has MoveTo section B must not have and vice versa --> <as:constraint condition="//sro:Site[@End='A' and sro:MoveTo]" action="excludeTree(//sro:Site[@End='B']/sro:MoveTo)"/> <as:constraint condition="//sro:Site[@End='B' and sro:MoveTo]" action="excludeTree(//sro:Site[@End='A']/sro:MoveTo)"/> 8) include missing from ContentReferencing. 9) I find the equal and greatertahn a bit strang as these are available in XPATH. The only extra functions are begine, ends lookup, member all the rest are available natively. 10) In the context section can the condition just be the head of a tree indicating that all constraint addresses are based at within that tree? Martin Roberts xml designer, BT Exact e-mail: martin.me.roberts@bt.com tel: +44(0) 1473 609785 clickdial fax: +44(0) 1473 609834 Intranet Site :http://twiki.btlabs.bt.co.uk/twiki -----Original Message----- From: Monica J. Martin [mailto:monica.martin@sun.com] Sent: 20 May 2003 17:42 To: cam@lists.oasis-open.org Subject: Re: [cam] Groups - CAM-v1-draft-013.ZIP uploaded Gnosis_@compuserve.com wrote: Dave, A few questions regarding the document update, by section or concept: * Section 2.5: Explain what you mean about a test harness. * Section 4.1.1: What is a CAM member (is this a registry object owner, for example - who manages this)? * Section 4.2.1: You have been expanding the CAM efforts/scope and now are not only talking about content assembly but business process validation. Can we do a check-balance against the charter - I see assembly instructions, but not validation. * Section 4.6.1: Will this <choice> construct support some of the work coming out of other TC that actually define how references to code lists can be maintained (such as UBL)? * As I have asked in a previous email., isn't this just a assembly mechanism, not the validation of the processes it supports (The document should specify the structural processing instructions, not the business logic associated with the process validation, correct)? My question is rooted in how this may affect semantic interoperability. Thanks. You may leave a Technical Committee at any time by visiting http://www.oasis-open.org/apps/org/workgroup/cam/members/leave_workgroup .php
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]