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] Re: proposal for extension to UBL-Order

>>Christine Spietz wrote:
>>> We have our own XML-Documents to describe the required values for an
>>> agricultural operation, so if we would like to use the UBL-Order, we
>>> have to embed this document as a string-value in
>>> "Order->cac:Orderline->LineItem->Item->Description" or is there an
>>> other opportunity which we haven't seen yet?

I'll really suggest not to use this method for various reasons.

Mechanically, it may seem to work because your own XML-Documents
get re-encoded into string-value space that will get pass schema
validation (or rather, invalidation).  

But one of the main reasons you would pick UBL, if you do use UBL, 
would be that each tag has not only a standardized spelling, but 
also a standardized meaning to it.  If you "re-type" a tagname,
the meaning of that tag is changed.  A "Order->..->Description"
is no longer a description for human, but rather an embedded
structured document and without any hint or sign stating so
except by looking at it.  

So, supposing one of these days the "Order->..->Description" 
contains a human note say "The offer of 80% discount is not valid 
if OrderResponse is not received within 24hrs.", which will get
discarded by your application because it is designed to parse
the string for XML document and not to show to human user...

>>> If there is not, we would like to know, if there is a possibility to
>>> make an extension on the element "Item", so that there is a
>>> possibility to have an element "Description" of the type
>>> xsd:anyElement. Then it would be possible to integrate our
>>> XML-Documents into the UBL-Order.

There're quite a number of ways to do it, not all may be suitable
in your particular environment and not all bear the same level of
"correctness" that will not get frowned upon by someone.  But here're
a few ways:

- Embedded comment blocks:  your app "recognises" a valid comment
  block following the "Order->..->Description" tag as instruction
  to parse the content (something like the early days of embedding
  scripts within HTML pages...)
  <!-- [[MY-APP-EXT]]
       <?xml version="1.0" ...>
       <Your XML Document follows>
  where "[[MY-APP-EXT]]" tells your app to start parsing.

- Human-machine description in the "Order->..->Description"
  field:  you fill in "[[MY-APP-EXT]]http://.../my-xml-doc.xml";.
  And store your XML doc at the URL referenced.
  This is different from embedding the document, as the type of
  the field isn't changed.

- Adding another tag using customized schema.  There're different
  ways to do this as well.  Can't type them all here now....

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

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