Next in thread → Next in month →

Re: [emergency] HAVE Conformance vs. Documentation vs. Released Schemas

From
Carl Reed <>
Date
2010-03-16T15:08:49+00:00
ID
B48DCC33D2F142E28E5A0F528C4BCFC9@CarlandSusieOf
Thread
Re: [emergency] HAVE Conformance vs. Documentation vs. Released Schemas


Don -

 

Yes, the OASIS "where" schema is a true profile of GML (restricted 
subset).

 

Cheers

Carl

 

  
----- Original Message ----- 

  
From: 
  McGarry, Donald 
  P. 

  
To: Carl Reed ; David RR Webber (XML) 
  

  
Cc:  
  ; Dwarkanath,Sukumar - INTL 

  
Sent: Monday, March 15, 2010 8:33 
PM

  
Subject: RE: [emergency] HAVE Conformance 
  vs. Documentation vs. Released Schemas

  

  

  
Carl-

  
Agreed.  
  My point was our conformance documentation was lacking and didn’t match the 
  schemas we distributed.  My thought of a profile in this case is to take 
  a subset of an existing standard, by only using pieces and by imposing 
  additional restrictions on it.  I.E.  Geo-OASIS where is a profile 
  of GML (at least I think it is).  However this “profile” is sanctioned by 
  a large body (OASIS), and represents what works best for our needs in 
  EDXL.

  
 

  

  
-Don

  
Office: 
  315-838-2669

  
Cell: 
  315-383-1197

  


  
 

  

  

  
From: Carl Reed 
  [mailto:] 
Sent: Monday, March 15, 2010 5:04 
  PM
To: McGarry, Donald P.; David RR Webber (XML)
Cc: 
  ; Dwarkanath,Sukumar - INTL
Subject: 
  Re: [emergency] HAVE Conformance vs. Documentation vs. Released 
  Schemas

  
 

  

  
Don -

  

  
 

  

  
Ah, now we can really dig into some standards geekness :-) 
  Standards only insure interoperability if the developers from different 
  organizations implement the same conformance classes the same way. 
  Conformance classes are tied to requirements and requirements are the "shalls" 
  in a standard. If implementers do not implement against the same conformance 
  classes, then when two applications from different vendors implementing the 
  same standard (but each in their own way), they most likely will not 
  interoperate (plug and play). In a very strict sense (from my previous email), 
  a profile could be a community agreement on which conformance classes for a 
  standard are implemented.

  

  
 

  

  
Now you mention the list of standards. Something like SOAP 
  does require agreements in a community prior to implementation. The is what http://www.ws-i.org/ is all about. And in 
  Europe, the European SDI community has defined initial agreements on profiles 
  of SOAP, WSDL, SAML, XACML and other standards so that any organization 
  implementing applications and portals that will link into INSPIRE all do so 
  the same way. 

  

  
 

  

  
So, standards do not guarantee interoperability. Agreements 
  on how to implement a standard do guarantee 
  interoperability.

  

  
 

  

  
Cheers

  

  

Carl

  

  
 

  

  
 

  

  
 

  
    

    
----- Original 
    Message ----- 

    

    
From: McGarry, Donald 
    P. 

    

    
To: David RR Webber 
    (XML) 

    

    
Cc:  
    ; Dwarkanath,Sukumar - INTL 
    

    

    
Sent: Tuesday, March 
    09, 2010 1:09 PM

    

    
Subject: RE: [emergency] 
    HAVE Conformance vs. Documentation vs. Released 
    Schemas

    

    
 

    
I’m 
    sorry...Standards are to guarantee interoperability.  That’s why they 
    are called standards.

    
 

    
HTML, 
    HTTP, XML, TCP, UDP, IP, 802.11,  XHTML, Unicode, CSS, SOAP, WSDL, 
    XSLT, XML Schema, Ethernet, DNS, Arp, RIP, ICMP, Telnet, FTP, SMTP to name a 
    few. 

    
 

    
What 
    if cisco made their own profile for RIP? 

    
What 
    if Sun made their own profile for TCP/IP in unix?

    
 

    
EDXL-HAVE 
    and RM need to work without a developer pow-wow beforehand.  It’s not 
    CIQ’s fault, we just copy-pasted their schema.  If we’re all gonna go 
    off and make our own profiles…why have the standard?  I think when you 
    combine the context above standards list into what the “internet” is today 
    you see why…The TC’s official answer to documentation issues and referenced 
    schemas shouldn’t be to tell developers to go off and make their own 
    profiles…I think we are just shooting ourselves in the 
    foot.

    
 

    
NIEM 
    is not a standard…it’s a standard process model for developing data 
    interchanges based on standard terminology; similar to what goes on in a TC, 
    or in Engineering shops across the world every day, it’s a great process and 
    model for developing defined data interchanges based on a common dataset and 
    allowing for cross organization reuse.  

    
 

    
 

    

    
-Don

    
Office: 
    315-838-2669

    
Cell: 
    315-383-1197

    


    
 

    

    

    
From: David RR Webber 
    (XML) [mailto:] 
Sent: Tuesday, March 09, 2010 1:40 
    PM
To: McGarry, Donald P.
Cc: 
    ; Dwarkanath,Sukumar - INTL
Subject: 
    RE: [emergency] HAVE Conformance vs. Documentation vs. Released 
    Schemas

    
 

    

    
Don,

    

    
 

    

    
I 
    hear you but I don't believe that a standard can guarantee interoperability 
    - and especially not through the use of XSD schema alone.  May be 
    if there is only one XML instance that everyone has to adher to - but 
    that is not what people expect.

    

    
 

    

    
Notice 
    OASIS standards in general - provide the schema framework for the exchange 
    content - implementers expect to have to test conformance (see Drummond 
    Group work on OASIS conformance testing) and declare interoperability - 
    and someone can still send you something that passes the schema but breaks 
    your backend application.

    

    
 

    

    
And 
    to Gary's point - yes - optional is not the schema default - but most 
    standards use optional since the context is unknown and rather than have a 
    situation where a required element is being fudged - its made 
    optional.  CIQ is a point in case - which part of an address is 
    required?  That is impossible to determine for all 207 postal 
    authorities and then in country mail handling.  E.g. USA has 5 possible 
    address formats that the USPS will accept.

    

    
 

    

    
Mentioning 
    context - that is another weakness in XSD Schema design - no explicit 
    context mechanism - that allows you to control when something is mandatory 
    or optional.  You will be shocked to know that OASIS CAM has explicit 
    context mechanisms - so you can dynamically control 
    that.

    

    
 

    

    
Don 
    - at this point in the process here - the schema is what it is.  My 
    suggest is to augment that with additional profile tools that can provide 
    the types of interoperability measures you are looking 
    for.

    

    
 

    

    
BTW 
    - OASIS CIQ now have the v3 format which is a significant improvement on 
    matching addressing needs and removing the ugly from CIQ v2.  
    

    

    
Thanks, 
    DW

    

    
 

    

    
 

    
      

      
-------- 
      Original Message --------
Subject: RE: [emergency] HAVE Conformance vs. 
      Documentation vs.
Released Schemas
From: "McGarry, Donald P." <>
Date: Tue, 
      March 09, 2010 12:34 pm
To: "David RR Webber (XML)" <>, 
      
"Dwarkanath,Sukumar - INTL" <>
Cc: 
      "" 
      <>

      

      

      
David-

      

      
By 
      this assessment what distinguishes a standard from a common data 
      dictionary?  I envision a standard as defining interoperability in 
      that if two systems have never “met” before being able to expect exactly 
      what the other system is generating so that they can generate messages for 
      data sharing and process the other messages system.  By this 
      assessment, if I go by the schemas I have to implement the entire xPIL 
      standard, if I go by the HAVE document, I’m not exactly sure what out of 
      xPIL I have to implement, which means that I could conceivably represent 
      my Hospital’s location information by its stock ticker symbol.  I 
      don’t think this is what we intended to do as a TC.  If we all go off 
      making our own tailored profiles, then when our two systems meet we will 
      discover they can’t interoperate because the “MITRE” profile only works 
      with stock symbols, while the “Other” profile only works with Membership 
      information.  This doesn’t seem like what a standard is supposed to 
      do.

      

      
 

      

      

      
-Don

      

      
Office: 
      315-838-2669

      

      
Cell: 
      315-383-1197

      

      


      

      
 

      

      

      

      
From: 
      David RR Webber (XML) [mailto:] 
Sent: 
      Tuesday, March 09, 2010 12:20 PM
To: Dwarkanath,Sukumar - 
      INTL
Cc: McGarry, Donald P.; 
      
Subject: RE: [emergency] HAVE 
      Conformance vs. Documentation vs. Released Schemas

      

      
 

      

      

      
Don,

      

      

      
 

      

      

      
You 
      are encountering the limitation of schema itself.  Everything has to 
      be defined as optional.

      

      

      
 

      

      

      
If 
      you are following the NIEM IEPD approach - you would publish your IEPD and 
      subset schemas as your profile.

      

      

      
 

      

      

      
The 
      CAM toolkit provides full support for this.  
      

      

      

      
 

      

      

      
Ingest 
      the HAVE XSD into CAM template - tailor that as you desire - use 
      excludeTree() rules to prune out pieces you don't need (to match EDXL 
      conformance) - and then add other rules as desired to show 
      dependencies on other parts that you do, and or your content 
      restrictions.  Then run File / Export / Compress process - to 
      complete your template.  You can then generate the subset schema, via 
      File / Export / Template to XSD - to build either a flattened schema, or a 
      NIEM compliant subset schema (depending on what type of application 
      development tooling you are using).

      

      

      
 

      

      

      
You 
      can also build the business documentation, XML examples, cross-reference 
      to NIEM spreadsheet and NIEM wantlist - all as required for NIEM IEPD 
      publishing.

      

      

      
 

      

      

      
This 
      gives you a true complete profile of your use of EDXL HAVE, derived from 
      the original OASIS schema.  

      

      

      
 

      

      

      
Interoperability 
      is then dependent on the conformance to that profile.  
      

      

      

      
 

      

      

      
There 
      is also the CAMV engine - which you can use in lieu of schema checks for 
      production runtime.  This has added benefit of providing graduated 
      failure levels - error, warning, info - rather than the XSD which only has 
      error.  This allows you to tailor the runtime actions of your backend 
      systems to respond to differences in XML instances.  An upcoming 
      Developerworks article will be covering this with an example use 
      case.

      

      

      
Thanks, 
      DW

      

      

      
 

      

      

      
 

      
        

        
-------- 
        Original Message --------
Subject: RE: [emergency] HAVE Conformance 
        vs. Documentation vs.
Released Schemas
From: "Dwarkanath, Sukumar 
        - INTL" <>
Date: 
        Tue, March 09, 2010 10:08 am
To: "McGarry, Donald P." <>,
<>

        

        

        

        
Don, 
        

        

        

        
 

        

        

        
The 
        restrictions on using CIQ were considered to be business rules and the 
        intention was not create a profile as far as I remember. I am not 
        against creating a CIQ Profile but if we go down that path, we should 
        consider requirements across the other standards such as EDXL RM, DE 
        etc. We have dealt with this particular issue quite a few times and it 
        is a balance – offering flexibility vs ensuring interoperability. 
        

        

        

        
 

        

        

        
Sukumar

        

        

        
 

        

        

        
 

        

        

        
 

        

        

        
        

        

        

        
From: 
        McGarry, Donald P. [mailto:] 
        
Sent: Monday, March 08, 2010 8:31 AM
To: 
        
Subject: [emergency] HAVE 
        Conformance vs. Documentation vs. Released Schemas

        

        

        
 

        

        

        
All-

        

        

        
After 
        spending some time doing some coding this weekend I noticed something 
        that we may want to address:

        
          
HAVE uses 
          xPil which in turn uses xAL and xNL 
          
We 
          included the full schemas for all of these referenced schemas on the 
          OASIS page to download the standards.

        

        

        
 

        

        

        
I 
        think the problem here is that when I went to implement this the 
        documentation states that we are using a “profile” recommendation to 
        limit the choices for xPil to “maximize interoperability”.  It then 
        goes on to state that <have:Organization> should have the 
        sub-elements OrganizationInformation and OrginizationGeoLocation.  
        

        

        

        
OrganizationInformation 
        should have the sub-elements as defined in the CIQ standard:

        
          
OrganisationName 
          
          
OrganisationInfo 
          
          
Addresses 
          
          
ContactNumbers 
          
          
CommentText

        

        

        
 

        

        

        
It 
        also states that we won’t use georss but will use the gml in the 
        OrganizationGeoLocation Section.

        

        

        
It 
        also refers me to Appendix C which suggests that I refer to the CIQ TC 
        website, and also states that for the purpose of HAVE the naming & 
        location elements are used.  The use of other elements is left to 
        implementation choices.  

        

        

        
 

        

        

        
Conformance 
        is defined in the document as:

        
          
Validating 
          to the schema 
          
Meets the 
          mandatory requirements of section 3

        

        

        
 

        

        

        
My 
        concern is that the referenced xPil schemas (and in turn the xAL and 
        xNL) are the FULL SCHEMAS.  There is no restriction in the 
        HAVE schema enforcing our smaller profile of CIQ.  Additionally the 
        reference to the georss namespace or elements was not removed.  
        Furthermore, the document is somewhat confusing in that it states what 
        elements to use, but then tells the develop that it’s an implementation 
        choice whether to use the other elements or not.  Right now as it 
        stands I can generate an XML document that has a bunch of xPIL fields 
        that we didn’t include in our documentation, but will validate against 
        our schemas.  With the vagueness in the document I could argue that 
        this was an implementation choice and my document is valid according to 
        the conformance section, but I suspect my document may break some 
        systems.

        

        

        
 

        

        

        
So 
        which is it?  If I am building an XML processor to ingest HAVE 
        documents I need to know what to expect.  If I need to be prepared 
        to handle Accounts, Documents, Revenues, Stocks, etc. as defined in xPIL 
        because some system out there decided that they wanted to do it, that 
        makes HAVE more heavyweight that I think the designers intended.  
        If indeed we are using a CIQ “profile” we should develop the schema for 
        that profile and post it with the standard and add some more info to our 
        documentation so it isn’t as vague.  I’ll upload my generated 
        sample file as HAVE_FullToSchemaButNotDocument.xml to the TC page so you 
        can check it out.  This example validated against the schemas from 
        our page.  I added in Geo-RSS as well (which will validate if you 
        reference the georss schema)…

        

        

        
 

        

        

        
Don 
        McGarry 

        

        

        
Office: 
        315-838-2669

        

        

        
Cell: 
        315-383-1197

        

        

        
Next in thread → Next in month →