[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [ubl-dev] Re: [ebxml-dev] Best practise for enteringmultiple uri's inan ebXMLdocument?
Excellent, Many thanks! David and Dale - just the information I need. *Very* encouraging on both aspects. Best wishes Steve >>> "Dale Moberg" <dmoberg@cyclonecommerce.com> 04/05/05 19:25:26 >>> -----Original Message----- From: Stephen Green [mailto:stephen_green@bristol-city.gov.uk] Sent: Wednesday, May 04, 2005 10:19 AM To: ebxml-dev@lists.ebxml.org Cc: ubl-dev@lists.oasis-open.org Subject: Re: [ebxml-dev] Best practise for entering multiple uri's inan ebXMLdocument? Folks, Stephen Green writes To clarify my previous posting, this is how my example looks at present (based on ebBPSS1.04.xsd): <BusinessDocument name="UBL SBS Invoice" nameID="UBL-1.0-SBS-1.0-Invoice" specificationID="urn:oasis:names:specification:ubl:schema:xsd:Invoice-1. 0 urn:oasis:names:tc:ubl:xpath:Invoice-1.0:sbs-1.0" specificationLocation="http://docs.oasis-open.org/ubl/cd-UBL-1.0/xsd/mai ndoc/UBL-Invoice-1.0.xsd [...]/xpaths/xml/XPath/Invoice-XPath.xml"> <Documentation> The documents are an XSD file and a subset definition that specify the rules for creating the XML document for the business action of invoicing the buyer. </Documentation> </BusinessDocument> Is this a misuse of ebBPSS? DaleMoberg> The lack of a way to enumerate multiple specifications pertaining to a BusinessDocument was a specific issue lodged against 1.x versions of BPSS. It is resolved in 2.0 by shifting from an attribute to an (unbounded) sequence of Specification elements looking like: <BusinessDocument nameID="IDO1000" name="UBL Order 1.0"> <Specification nameID="UBLPurchaseOrder" name="UBLPurchaseOrder" location="http://www.acme.com/UBL-Order-1.0.xsd" type="schema"/> </BusinessDocument> So for your example,several Specification elements would be used instead of trying to create a space separated list in the attribute. Can it be done a better way (e.g. in BPSS 2.0)? Dale> See above. The TC has approved 2.0 several weeks ago. Can the same be done with ebCPPA and ebMS? ebCPPA 2.0 (and the working drafts on 2.1) all allow multiple Namespace declarations as needed to identify those used in an XML document. For ebCPPA, it would be used to express an agreement to support document exchanges where the data is drawn from those Namespaces. I think ebMS would not need to use the Namespace information for its protocol. However, Namespace information can be part of the information about the arrival of a BusinessDocument that an ebMS might publish as an Event to be consumed by a subscribed a BPSS monitoring software component. This is because the BusinessDocumentEnvelope language used in described BPSS transitions needs to be "operationalized" so that >>> "David Webber (XML)" <david@drrw.info> 04/05/05 20:22:30 >>> Stephen, I saw Dale's post. The original BPSS work under Brian Hayes' leadership deferred this functionality to CAM and therefore if instead of referencing an XSD - your URI points to UBL-Invoice-1.0.cam then you can use the tools CAM provides to contextually reference the particular XSD instance that you wish for the context that applies. This way you can have a logical business document in the BPSS - and then reference the actual physical layout according to context. And that of course is the whole point here - that multiple formats may be required - and a means to have a neutral ruleset that can be applied across different formats. So using this CAM-based approached you could in fact target X12 EDI or EDIFACT equivalents along with the UBL XML as alternates - depending on the trading partner requirements. Page 41 of the specification has more details on this - and Martin Roberts has a BT example that chooses between 50+ (!) formats - depending on the type of telco switch device the trouble ticket is coming from. He uses the <include/> mechanism to pull in the sub-structure depending on which of the 50+ varients is needed (see page 49 on that). As a snippet to illustrate what is going on inside the CAM template: <as:CAM CAMlevel="1" version="0.13" xmlns:as="http://www.oasis-open.org/committees/cam"> <as:Header> <as:Description>References Multiple UBL message formats</as:Description> <as:Owner>UBL-demo</as:Owner> <as:Version>0.1</as:Version> <as:DateTime>2004-09-09T17:00:00</as:DateTime> - <as:Parameters> - <!-- Set your context parameter declaration --> <as:Parameter name="myContextFlag" values="UBL-1|UBL-2|OTHER" use="global" default="UBL-1" /> </as:Parameters> </as:Header> - <as:AssemblyStructure> - <as:Structure ID="default" taxonomy="XML"> <!-- link to UBL-1 structure and layout goes in here --> <as:include>myUBL1.xml</as:include> </as:Structure> <as:Structure ID="UBL-2" taxonomy="XML"> <!-- UBL-2 goes in here --> <as:include>myUBL2.xml</as:include> </as:Structure> <as:Structure ID="OTHER" taxonomy="XML"> <!-- Another one goes in here --> <as:include>myUBLx.xml</as:include> </as:Structure> </as:AssemblyStructure> - <as:BusinessUseContext> - <as:Rules> <as:context condition="token='$myContextFlag' and contains(value,'UBL-1')> <as:constraint action="useChoiceByID(default)"/> </as:context> <as:context condition="token='$myContextFlag' and contains(value,'UBL-2')> <as:constraint action="useChoiceByID(UBL-2)"/> </as:context> <as:context condition="token='$myContextFlag' and contains(value,'OTHER')> <as:constraint action="useChoiceByID(OTHER)"/> </as:context> </as:Rules> </as:BusinessUseContext> </as:CAM> Enjoy, DW ----- Original Message ----- From: "Stephen Green" <stephen_green@bristol-city.gov.uk> To: <ebxml-dev@lists.ebxml.org> Cc: <ubl-dev@lists.oasis-open.org> Sent: Wednesday, May 04, 2005 1:19 PM Subject: [ubl-dev] Re: [ebxml-dev] Best practise for entering multiple uri's inan ebXMLdocument? Folks, To clarify my previous posting, this is how my example looks at present (based on ebBPSS1.04.xsd): .. . <BusinessDocument name="UBL SBS Invoice" nameID="UBL-1.0-SBS-1.0-Invoice" specificationID="urn:oasis:names:specification:ubl:schema:xsd:Invoice-1.0 urn:oasis:names:tc:ubl:xpath:Invoice-1.0:sbs-1.0" specificationLocation="http://docs.oasis-open.org/ubl/cd-UBL-1.0/xsd/maindoc /UBL-Invoice-1.0.xsd [...]/xpaths/xml/XPath/Invoice-XPath.xml"> <Documentation> The documents are an XSD file and a subset definition that specify the rules for creating the XML document for the business action of invoicing the buyer. </Documentation> </BusinessDocument> .. . ( Note: '[...]' in the second specificationLocation is just a placeholder until we have a persistent url) Is this a misuse of ebBPSS? ar And that of course is the whole poi Can it be done a better way (e.g. in BPSS 2.0)? Can the same be done with ebCPPA and ebMS? Stephen Green >>> "Stephen Green" <stephen_green@bristol-city.gov.uk> 04/05/05 14:09:22 >>> Would anybody help me? I'm putting together part of a spec which requires me to provide an example of how to enter both a message payload namespace and a secondary uri (in this case for a 'subset') into a typical ebXML document (e.g. BPSS, CPPA or ebMS). I've chosen (on advice) the BPSS document and have simply added the second uri after the first with a space between. I have the following questions: 1. Is this the best practise way a. to specify the finer payload details - in the BPSS? and b. to use pace separated uri's? (it seems a little ambiguous to do this - without a way to show that the first is the payload schema namespace and the second is a further metadata specification uri) 2. I've done this with a version of BPSS 1. Would this be different in BPSS 2? 3. Would it be too early to be documenting examples of anything in BPSS 2? 4. Is there a way to do this with CPP/CPA docs or would it simply be sufficient to rely on the reference to a BPSS or equivalent? 5. Is there a way to do this with ebMS 3? (or is it sufficient to rely on the reference to the CPA?/BPSS?) 6. Is it too early to document an example for ebMS 3? 7. If too early for ebMS 3, how would one do this for the previous version? 8. Has anyone any real world experience of this sort of thing and willing to share how they did this? 9. How would this be done with CAM say? - One for DW :-) 10. Is it too early to be talking at all of best practise for this sort of thing? I'd appreciate any answers to any of the above. Many thanks Stephen Green --------------------------------------------------------------------- To unsubscribe, e-mail: ubl-dev-unsubscribe@lists.oasis-open.org For additional commands, e-mail: ubl-dev-help@lists.oasis-open.org --------------------------------------------------------------------- To unsubscribe, e-mail: ubl-dev-unsubscribe@lists.oasis-open.org For additional commands, e-mail: ubl-dev-help@lists.oasis-open.org
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]