<div dir="ltr">I believe I've had the same experience as you with schema-based parsers via jaxb for SOAP. Being able to use them for CalDAV would be great --- type-safe automatic query parsing! I did try feeding the DTD from the WebDAV RFC into xjc, at which point xjc crashed with an NPE...<div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Sun, 3 Dec 2017 at 19:37 Michael Douglass <<a href="mailto:mikeadouglass@gmail.com">mikeadouglass@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <p>I got into schemas for the calws stuff and at that time attempted
      to create xsd schemas for those protocols. I managed to do so for
      a small subsection of caldav (queries I believe) but my
      recollection (and it's going back a while so the details may be
      wrong) is that the xml structure violates some of the requirements
      for XSD. Elements can be simple or complex in these protocols.
      There are some elements that have a different definition depending
      on context etc.</p>
    <p>Having experienced the benefits of xsd in the jaxb world I'd have
      argued strongly for such schemas and a more formal approach to
      defining the protocols. I don't know if relaxng will have the same
      issues.</p>
    <p>Also some of my problems might have been some of the constraints
      applied by the soap world but I don't think that was so.<br>
    </p></div><div bgcolor="#FFFFFF" text="#000000">
    <br>
    <div class="m_2010031965135285690moz-cite-prefix">On 12/1/17 10:50, David Given wrote:<br>
    </div>
    </div><div bgcolor="#FFFFFF" text="#000000"><blockquote type="cite">
      <div dir="ltr">Hello,
        <div><br>
        </div>
        <div>I'm aware that the DAV protocols aren't suitable for use
          with schema validators, due to the requirement to handle
          extension elements. Nevertheless, it would be really useful to
          have a definitive schema (either XSD or DTD) both for
          reference and as input for non-validating automation.</div>
        <div><br>
        </div>
        <div>The RFCs contain DTD fragments, but they're explicitly
          non-definitive and are there for documentation purposes only.
          And I don't really want to put together my own because then
          it'll be wrong. I've found some third party CalDAV schemas,
          all of which have comments saying that they're wrong, so I
          don't want to use those either.</div>
        <div><br>
        </div>
        <div>Does such a thing exist?<br>
        </div>
        <div><br>
        </div>
        <div>Thanks!</div>
        <div><br>
        </div>
      </div>
      <br>
      <fieldset class="m_2010031965135285690mimeAttachmentHeader"></fieldset>
      <br>
      </blockquote></div><div bgcolor="#FFFFFF" text="#000000"><blockquote type="cite"><pre>_______________________________________________
caldeveloper-l mailing list
<a class="m_2010031965135285690moz-txt-link-abbreviated" href="mailto:caldeveloper-l@lists.calconnect.org" target="_blank">caldeveloper-l@lists.calconnect.org</a>
<a class="m_2010031965135285690moz-txt-link-freetext" href="http://lists.calconnect.org/listinfo.cgi/caldeveloper-l-calconnect.org" target="_blank">http://lists.calconnect.org/listinfo.cgi/caldeveloper-l-calconnect.org</a>
</pre>
    </blockquote>
    <br>
  </div>

_______________________________________________<br>
caldeveloper-l mailing list<br>
<a href="mailto:caldeveloper-l@lists.calconnect.org" target="_blank">caldeveloper-l@lists.calconnect.org</a><br>
<a href="http://lists.calconnect.org/listinfo.cgi/caldeveloper-l-calconnect.org" rel="noreferrer" target="_blank">http://lists.calconnect.org/listinfo.cgi/caldeveloper-l-calconnect.org</a><br>
</blockquote></div>