DAV Versioning DTD.

Dear Geoff,

After sacrificing three nights, Jürgen and I have put together a DTD for
DAV versioning.  This version is based on prop-key and prop-value tags,
were properties names are given as parameters.  I will rewrite the DTD
to pass properties as tags in prop and prop-apply.  Then it should be
completely WebDAV compatible.  Please give me a couple of days to finish
it.

The current definition of how errors are returned in DAV versioning is
incompatible with WebDAV.  I have made a change that should be help
there.  The "at most one of .... in any order "is defined with an
arbitrary order here.  I will fix that as well, though it will not
pretty be pretty.   Please let me know if I have forgotten anything.
The DTD and two examples, which validate against the DTD using Sun's
latest XML parser, are included.   Can you easily send me the all
examples from the current draft or at least the draft as text?

The tags add, set, and remove as used in labels, must be renamed because
set and remove are
already defined differently for propertyupdate.

I still believe that a complete DTD is helpful for people who have not
had a chance to sit in on all the DAV versioning discussions.  I find
the document to be too dependent on examples.  A DTD that is consistent
with the examples would help.

Sincerely,
James J. Hunt

P.S. An example of  our new proposal for expand-property with properties
as tags instead of attributes will be as follows:

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE DAV:webdav-1.0 SYSTEM
"http://www.webdav.org/dtd/deltav-0.12.1.1.dtd" !>
<expand-property xmlns="DAV:">
  <prop-apply>
    <version-history/>
    <prop-apply>
      <version-set/>
      <prop>
        <creator-displayname/>
        <activity-set/>
      </prop>
    </prop-apply>
  </prop-apply>
</expand-property>
<!--============ Root Elements ==================
                  propfind
                  propertyupdate
                  propertybehavior
                  multistatus
                  prop
                  lockinfo
                  version-tree
                  expand-property
                  options
                  options-response
                  options-value
                  collection-set-value
                  checkout
                  checkin
                  update
                  locate-history
                  version-control
                  merge
                  merge-preview
                  label
                  baseline-control
                  baseline
                  baseline-comparision
                  latest-activity-version
                  checkout-fork
                  checkin-fork
                  merge-response
                  merge-preview-response
                  baseline-comparision-report
                  latest-activity-version-report
                  error
    ============ End Root Elements ==================-->

<!--============ Top Level DAV Requests ==================-->
<!ELEMENT propfind (allprop | propname | prop)>
<!ATTLIST propfind xmlns CDATA #IMPLIED
                   xmlns:DAV CDATA #IMPLIED>
<!ELEMENT allprop EMPTY>
<!ATTLIST allprop xmlns CDATA #IMPLIED>
<!ELEMENT propname EMPTY>
<!ATTLIST propname xmlns CDATA #IMPLIED>

<!ELEMENT propertyupdate (remove | set)+>
<!ATTLIST propertyupdate xmlns CDATA #IMPLIED>
<!ELEMENT remove (prop)>
<!ELEMENT set (prop)>

<!ELEMENT propertybehavior (omit | keepalive)>
<!ATTLIST propertybehavior xmlns CDATA #IMPLIED>
<!ELEMENT omit EMPTY>
<!ELEMENT keepalive (#PCDATA | href)*>

<!--============ Top Level DAV Responses ==================-->

<!ELEMENT multistatus (response+,
                           (responsedescription |
                            error)?)>
<!ATTLIST multistatus xmlns CDATA #IMPLIED>
                    <!-- added! -->
<!ELEMENT response (href, ((href*, status)|(propstat+)),
                        (responsedescription |
                         error)?)>                       <!-- added! -->
<!ELEMENT propstat (prop, status,
                        (responsedescription |
                         error)?)>                       <!-- added! -->
<!ELEMENT status (#PCDATA)>
<!ELEMENT responsedescription (#PCDATA)>

<!ELEMENT prop
 (prop-key* | (prop-value | prop-multivalue)*)>    <!--- modified! -->
<!ATTLIST prop xmlns CDATA #IMPLIED>
<!ATTLIST prop xmlns:DAV CDATA #IMPLIED>
<!ELEMENT prop-key EMPTY>                               <!-- new! -->
<!ATTLIST prop-key name CDATA #REQUIRED>                <!-- new! -->
<!ELEMENT prop-value ANY>                               <!-- new! -->
<!ATTLIST prop-value name CDATA #REQUIRED>              <!-- new! -->

<!ELEMENT lockinfo (lockscope, locktype, owner?)>
<!ATTLIST lockinfo xmlns CDATA #IMPLIED>
<!ELEMENT locktype (write)>
<!ELEMENT write EMPTY>

<!--============ Additional XML Elements from Section 12 ==================-->

<!ELEMENT lockscope (exclusive | shared)>
<!ELEMENT exclusive EMPTY>
<!ELEMENT shared EMPTY>

<!ELEMENT owner ANY>

<!ELEMENT href (#PCDATA)>

<!--=========== Property Values ===============-->
<!--=========== Value for DAV:resourcetype ===============-->
<!ELEMENT collection EMPTY>

<!--=========== Value for DAV:lockdiscovery ===============-->
<!ELEMENT activelock (lockscope, locktype, depth,
                          owner?, timeout?, locktoken?)>
<!ELEMENT depth (#PCDATA)>
<!ELEMENT timeout (#PCDATA)>
<!ELEMENT locktoken (href+)>

<!--=========== Value for DAV:source ===============-->
<!ELEMENT link (src+, dst+)>
<!ELEMENT dst (#PCDATA)>
<!ELEMENT src (#PCDATA)>

<!--=========== Value for DAV:supportedlocks ===============-->
<!ELEMENT lockentry (lockscope, locktype)>

<!--=========== WebDAV defined properties ===============
 name                           value
 DAV:creationdate               (#PCDATA)
 DAV:displayname                (#PCDATA)
 DAV:getcontentlanguage         (#PCDATA)
 DAV:getcontentlength           (#PCDATA)
 DAV:getcontenttype             (#PCDATA)
 DAV:getetag                    (#PCDATA)
 DAV:getlastmodified            (#PCDATA)
 DAV:lockdiscovery              (DAV:activelock)*
 DAV:resourcetype               ANY
 DAV:source                     (link)*
 DAV:supportedlock              (lockentry)*
    ====================================================-->

<!--=========== Top Level DeltaV core Requests ===============-->
<!ELEMENT version-tree (prop?)>
<!ATTLIST version-tree xmlns CDATA #IMPLIED>

<!ELEMENT expand-property (prop-apply*)>
<!ATTLIST expand-property xmlns CDATA #IMPLIED>
<!ELEMENT prop-apply ((prop-apply | prop-key)*)>
<!ATTLIST prop-apply name CDATA #REQUIRED>

<!ELEMENT options ((option-key | server-prop-key)*)>
<!ATTLIST options xmlns CDATA #IMPLIED>
<!ELEMENT options-key EMPTY>
<!ATTLIST options-key name 
 (DAV:supported-methods-set |
  DAV:supported-live-property-set) #REQUIRED> <!-- May be extended here -->
<!ELEMENT server-prop-key EMPTY>
<!ATTLIST server-prop-key name 
 (DAV:version-history-collection-set |
  DAV:workspace-collection-set |
  DAV:activity-collection-set) #REQUIRED>   <!-- May be extended here -->

<!--=========== Top Level DeltaV core Responses ===============-->

<!ELEMENT options-response
 ((option-value | collection-set-value)*)>
<!ATTLIST options-response xmlns CDATA #IMPLIED>

<!ELEMENT options-value (option-descriptor*)>
<!ATTLIST options-value xmlns CDATA #IMPLIED>
<!ATTLIST options-value name 
 (DAV:supported-methods-set |
  DAV:supported-live-property-set) #REQUIRED> <!-- May be extended here -->
<!ELEMENT option-descriptor (suboption*)>
<!ATTLIST option-descriptor name CDATA #REQUIRED>
<!ELEMENT suboption (suboption*)>
<!ATTLIST suboption name CDATA #REQUIRED><!-- suboptions can be nested -->

<!ELEMENT collection-set-value (href*)>
<!ATTLIST collection-set-value xmlns CDATA #IMPLIED>
<!ATTLIST collection-set-value name 
 (DAV:version-history-collection-set |
  DAV:workspace-collection-set |
  DAV:activity-collection-set) #REQUIRED>   <!-- May be extended here -->

<!--=========== WebDAV defined core properties ===============
 name                        value
 DAV:checked-in                  (DAV:href)
 DAV:checked-out                 (DAV:href)
 DAV:predecessor-set             (DAV:href+)
 DAV:precursor-set               (DAV:href*)
 DAV:auto-version                (DAV:when-unlocked?, DAV:when-locked?)
 DAV:predecessor-set             (DAV:href*)
 DAV:successor-set               (DAV:href*)
 DAV:checkout-set                (DAV:href*)
 DAV:version-name                (#PCDATA)
 DAV:precursor-set               (DAV:href*)
 DAV:version-control             (DAV:already-version-controlled?)

    ====================================================-->
<!ELEMENT when-unlocked EMPTY>
<!ELEMENT when-locked EMPTY>
<!ELEMENT already-version-controlled EMPTY>

<!--=========== Top Level DeltaV optional Requests ===============-->
<!ELEMENT checkout
 (activity-set? | apply-to-version? |
  unreserved? | fork-ok?)>           <!-- May be extended here -->
<!ATTLIST checkout xmlns CDATA #IMPLIED>
<!ELEMENT avtivity-set (href+|new)>
<!ELEMENT new EMPTY>
<!ELEMENT unreserved EMPTY>

<!ELEMENT checkin (keep-check-out?)> <!-- May be extended here -->
<!ATTLIST checkin xmlns CDATA #IMPLIED>
<!ELEMENT keep-checked-out EMPTY>

<!ELEMENT update
 ((version? | label-name? | variant?),
  fork-ok?)>                            <!-- May be extended here -->
<!ATTLIST update xmlns CDATA #IMPLIED>
<!ELEMENT variant (href)>

<!ELEMENT locate-history (version-history-set, prop)>
<!ATTLIST locate-history xmlns CDATA #IMPLIED>
<!ELEMENT version-history-set (href+)>

<!ELEMENT version-control
 (version?, variant-control?)>           <!-- May be extended here -->
<!ATTLIST version-control xmlns CDATA #IMPLIED>
<!ELEMENT variant-control EMPTY>

<!ELEMENT merge (source, no-auto-merge?, no-checkout?,
                     apply-to-version?, fork-ok?,
                     prop?)>              <!-- May be extended here -->
<!ATTLIST merge xmlns CDATA #IMPLIED>
<!ELEMENT no-auto-merge EMPTY>
<!ELEMENT no-checkout EMPTY>

<!ELEMENT merge-preview (source)>
<!ATTLIST merge-preview xmlns CDATA #IMPLIED>

<!ELEMENT label (add-label | set-label | remove-label)>
<!ATTLIST label xmlns CDATA #IMPLIED>
<!ELEMENT add-label (label-name)>     <!-- Renamed from add -->
<!ELEMENT set-label (label-name)>     <!-- Renamed from set -->
<!ELEMENT remove-label (label-name)>  <!-- Renamed from remove -->

<!ELEMENT baseline-control (baseline?)><!-- May be extended here -->
<!ATTLIST baseline-control xmlns CDATA #IMPLIED>

<!ELEMENT baseline (href)>
<!ATTLIST baseline xmlns CDATA #IMPLIED>

<!ELEMENT baseline-comparision (href)>
<!ATTLIST baseline-comparision xmlns CDATA #IMPLIED>

<!ELEMENT latest-activity-version (href)>
<!ATTLIST latest-activity-version xmlns CDATA #IMPLIED>

<!ELEMENT checkout-fork
 (ok | discouraged | forbidden)?> <!-- May be extended here -->
<!ATTLIST checkout-fork xmlns CDATA #IMPLIED>

<!ELEMENT checkin-fork
 (ok | discouraged | forbidden)?> <!-- May be extended here -->
<!ATTLIST checkin-fork xmlns CDATA #IMPLIED>

<!--=========== Top Level DeltaV optional Responses ===============-->
<!ELEMENT merge-response
 (update-set?, merged-set?,
  ignored-set)?>                          <!-- May be extended here -->
<!ATTLIST merge-response xmlns CDATA #IMPLIED>
<!ELEMENT updated-set (response+)>
<!ELEMENT merged-set (response+)>
<!ELEMENT ignored-set (href+)>

<!ELEMENT merge-preview-response
 (update-preview | conflict |
  ignored-preview)*>                      <!-- was ignore-preview -->
<!ATTLIST merge-preview-response xmlns CDATA #IMPLIED>
<!ELEMENT update-preview (target, version)>
<!ELEMENT conflict (target, common-ancestor, version)>
<!ELEMENT target (href)>
<!ELEMENT common-ancestor (href)>
<!ELEMENT ignored-preview (version)>  <!-- should be DAV:href -->

<!ELEMENT baseline-comparision-report
 (added-version | deleted-version | changed-version)*>
<!ATTLIST baseline-comparision-report xmlns CDATA #IMPLIED>
<!ELEMENT added-version (href)>
<!ELEMENT deleted-version (href)>
<!ELEMENT changed-version (href, href)>

<!ELEMENT latest-activity-version-report (href)>
<!ATTLIST latest-activity-version-report xmlns CDATA #IMPLIED>

<!--=========== DeltaV Optional Extensions ===============-->
<!ELEMENT apply-to-version EMPTY>

<!--=========== DeltaV Common Elements ===============-->
<!ELEMENT version (href)>

<!ELEMENT label-name (#PCDATA)>

<!ELEMENT fork-ok EMPTY>

<!ELEMENT source (href)>

<!ELEMENT ok EMPTY>
<!ELEMENT discouraged EMPTY>
<!ELEMENT forbidden EMPTY>

<!--=========== DeltaV Extensions to DAV:Prop ===============-->
<!ELEMENT prop-multivalue (response*)>  <!--- new!! -->
<!ATTLIST prop-multivalue name CDATA #REQUIRED>

<!--=========== Property Values ===============-->
<!--=========== Value for DAV:resourcetype ===============-->
<!ELEMENT history EMPTY>

<!ELEMENT version-controlled-binding
 (binding-name, version-history)>
<!ELEMENT binding-name (#PCDATA)>
<!ELEMENT version-history (href)>

<!ELEMENT string (#PCDATA)>
<!ELEMENT name (#PCDATA)>

<!--=========== WebDAV defined optional properties ===============
 name                           value
 DAV:version-set                        (DAV:href+)
 DAV:root-version                       (DAV:href)
 DAV:version-history                    (DAV:href)
 DAV:workspace-checkout-set             (DAV:href*)
 DAV:workspace                          (DAV:href)
 DAV:merge-set                          (DAV:href*)
 DAV:auto-merge-set                     (DAV:href*)
 DAV:baseline-controlled-collection     (DAV:href)
 DAV:subbaseline-set                    (DAV:href*)
 DAV:baseline-collection                (DAV:href)
 DAV:baseline-selector                  (DAV:href)
 DAV:baseline-controlled-collection-set (DAV:href*)
 DAV:activity-version-set               (DAV:href*)
 DAV:activity-checkout-set              (DAV:href*)
 DAV:subactivity-set                    (DAV:href*)
 DAV:current-workspace-set              (DAV:href*)
 DAV:activity-set                       (DAV:href*)
 DAV:reserved                           (#PCDATA)    was unreserved
 DAV:current-activity-set               (DAV:href*)
 DAV:version-controlled-binding-set     (version-controlled-binding*)
 DAV:eclipse-set                        (DAV:href*)
 DAV:variant-set                        (DAV:href*)
 DAV:default-variant                    (DAV:href)
 DAV:comment                            (DAV:string*)
 DAV:creator-displayname                (DAV:name*)
    ====================================================-->
<!--================ DeltaV errors =====================-->
<!--- new!! -->
<!ELEMENT error (user-defined-error |
  put-under-version-control-error |
  already-under-version-control-error |
  cannot-modify-version-controlled-content-error |
  cannot-modify-version-error |
  cannot-modify-version-controlled-property-error |
  cannot-modify-protected-property-error |
  cannot-modify-unsupported-property-error |
  auto-version-when-unlocked-error |
  cannot-delete-root-version-error |
  cannot-delete-referenced-version-error |
  no-version-delete-error |
  update-predecessor-set-error |
  initialize-precursor-error |
  auto-checkout-when-locked-error |
  cannot-rename-resource-error |
  preserve-history-error |
  must-be-checked-in-error |
  is-checked-out-error |
  initialize-predecessor-set-error |
  must-be-checked-out-error |
  version-history-is-tree-error |
  create-version-error |
  initialize-version-content-and-properties-error |
  checked-in-error |
  keep-checked-out-error |
  must-be-checked-out-version-controlled-resource-error |
  cancel-checked-out-error |
  restore-content-and-dead-properties-error |
  must-be-checked-in-version-controlled-resource-error |
  must-select-version-in-same-history-error |
  update-content-and-dead-properties-error |
  update-checked-in-property-error |
  must-be-version-history-error |
  delete-version-set-error |
  cannot-copy-history-error |
  new-version-history-error |
  add-to-history-error |
  create-working-resource-error |
  create-working-resource-from-checked-in-version-error |
  delete-working-resource-error |
  resource-must-be-null-error |
  workspace-location-ok-error |
  initialize-workspace-error |
  delete-workspace-members-error |
  workspace-member-moved-error |
  workspace-moved-error |
  cannot-add-to-existing-history-error |
  must-be-version-error |
  one-version-controlled-resource-per-history-per-workspace-error |
  new-version-controlled-resource-error |
  cannot-merge-checked-out-resource-error |
  checkout-not-allowed-error |
  ancestor-version-error |
  descendant-version-error |
  checked-out-for-merge-error |
  update-merge-set-error |
  report-ignored-set-error |
  report-properties-error |
  delete-version-reference-error |
  merge-must-be-complete-error |
  must-not-be-checked-out-error |
  must-be-new-label-error |
  label-must-exist-error |
  add-label-error |
  remove-label-error |
  must-not-have-label-and-apply-to-version-error |
  depth-update-error |
  version-controlled-configuration-must-be-empty-error |
  must-be-baseline-error |
  must-have-no-version-controlled-members-error |
  one-baseline-controlled-collection-per-history-per-workspace-error |
  create-version-controlled-configuration-error |
  reference-version-controlled-configuration-error |
  select-existing-baseline-error |
  create-empty-baseline-error |
  baselines-from-same-history-error |
  no-checked-out-baseline-controlled-collection-members-error |
  create-baseline-collection-error |
  auto-baseline-error |
  baseline-controlled-members-must-be-checked-in-error |
  set-baseline-controlled-collection-members-error |
  merge-baseline-error |
  activity-location-ok-error |
  initialize-activity-error |
  must-be-activity-error |
  delete-activity-reference-error |
  update-checked-out-reference-error |
  update-activity-reference-error |
  update-workspace-reference-error |
  one-checkout-per-activity-per-history-error |
  linear-activity-error |
  initialize-activity-set-error |
  initialize-unreserved-error |
  atomic-activity-checkin-error |
  checkin-activity-error |
  cannot-modify-checked-in-parent-error |
  cannot-modify-destination-checked-in-parent-error |
  initialize-version-history-bindings-error |
  initialize-version-controlled-bindings-error |
  version-control-working-collection-members-error |
  update-version-controlled-collection-members-error |
  checkout-of-version-with-descendant-is-forbidden-error |
  checkout-of-version-with-descendant-is-discouraged-error |
  checkout-of-checked-out-version-is-forbidden-error |
  checkout-of-checked-out-version-is-discouraged-error |
  checkin-fork-forbidden-error |
  checkin-fork-discouraged-error |
  cannot-delete-default-variant-error |
  delete-variant-reference-error |
  cannot-rename-variant-error |
  variant-control-error |
  create-new-variant-error |
  delete-variant-predecessor-error |
  must-select-variant-error |
  update-default-variant-error |
  update-variant-controlled-resource-error)> <!-- May be extended here -->

<!ELEMENT user-defined-error ANY>            <!--- new!! -->

<!ELEMENT put-under-version-control-error EMPTY>
<!ELEMENT already-under-version-control-error EMPTY>
<!ELEMENT cannot-modify-version-controlled-content-error EMPTY>
<!ELEMENT auto-version-when-unlocked-error EMPTY>
<!ELEMENT cannot-modify-version-controlled-property-error EMPTY>
<!ELEMENT cannot-modify-version-error EMPTY>
<!ELEMENT cannot-modify-protected-property-error EMPTY>
<!ELEMENT cannot-modify-unsupported-property-error EMPTY>
<!ELEMENT cannot-delete-root-version-error EMPTY>
<!ELEMENT cannot-delete-referenced-version-error EMPTY>
<!ELEMENT no-version-delete-error EMPTY>
<!ELEMENT update-predecessor-set-error EMPTY>
<!ELEMENT initialize-precursor-error EMPTY>
<!ELEMENT auto-checkout-when-locked-error EMPTY>
<!ELEMENT cannot-rename-resource-error EMPTY>
<!ELEMENT preserve-history-error EMPTY>
<!ELEMENT version-history-is-tree-error EMPTY>
<!ELEMENT create-version-error EMPTY>
<!ELEMENT must-be-checked-in-error EMPTY>
<!ELEMENT is-checked-out-error EMPTY>
<!ELEMENT initialize-predecessor-set-error EMPTY>
<!ELEMENT must-be-checked-out-error EMPTY>
<!ELEMENT initialize-version-content-and-properties-error EMPTY>
<!ELEMENT checked-in-error EMPTY>
<!ELEMENT keep-checked-out-error EMPTY>
<!ELEMENT must-be-checked-out-version-controlled-resource-error EMPTY>
<!ELEMENT cancel-checked-out-error EMPTY>
<!ELEMENT restore-content-and-dead-properties-error EMPTY>
<!ELEMENT must-be-checked-in-version-controlled-resource-error EMPTY>
<!ELEMENT must-select-version-in-same-history-error EMPTY>
<!ELEMENT update-content-and-dead-properties-error EMPTY>
<!ELEMENT update-checked-in-property-error EMPTY>
<!ELEMENT must-be-version-history-error EMPTY>
<!ELEMENT delete-version-set-error EMPTY>
<!ELEMENT cannot-copy-history-error EMPTY>
<!ELEMENT new-version-history-error EMPTY>
<!ELEMENT add-to-history-error EMPTY>
<!ELEMENT create-working-resource-error EMPTY>
<!ELEMENT create-working-resource-from-checked-in-version-error EMPTY>
<!ELEMENT delete-working-resource-error EMPTY>
<!ELEMENT resource-must-be-null-error EMPTY>
<!ELEMENT workspace-location-ok-error EMPTY>
<!ELEMENT initialize-workspace-error EMPTY>
<!ELEMENT delete-workspace-members-error EMPTY>
<!ELEMENT workspace-member-moved-error EMPTY>
<!ELEMENT workspace-moved-error EMPTY>
<!ELEMENT cannot-add-to-existing-history-error EMPTY>
<!ELEMENT must-be-version-error EMPTY>
<!ELEMENT
 one-version-controlled-resource-per-history-per-workspace-error EMPTY>
<!ELEMENT new-version-controlled-resource-error EMPTY>
<!ELEMENT cannot-merge-checked-out-resource-error EMPTY>
<!ELEMENT checkout-not-allowed-error EMPTY>
<!ELEMENT ancestor-version-error EMPTY>
<!ELEMENT descendant-version-error EMPTY>
<!ELEMENT checked-out-for-merge-error EMPTY>
<!ELEMENT update-merge-set-error EMPTY>
<!ELEMENT report-ignored-set-error EMPTY>
<!ELEMENT report-properties-error EMPTY>
<!ELEMENT delete-version-reference-error EMPTY>
<!ELEMENT merge-must-be-complete-error EMPTY>
<!ELEMENT must-not-be-checked-out-error EMPTY>
<!ELEMENT must-be-new-label-error EMPTY>
<!ELEMENT label-must-exist-error EMPTY>
<!ELEMENT add-label-error EMPTY>
<!ELEMENT remove-label-error EMPTY>
<!ELEMENT must-not-have-label-and-apply-to-version-error EMPTY>
<!ELEMENT depth-update-error EMPTY>
<!ELEMENT version-controlled-configuration-must-be-empty-error EMPTY>
<!ELEMENT must-be-baseline-error EMPTY>
<!ELEMENT must-have-no-version-controlled-members-error EMPTY>
<!ELEMENT one-baseline-controlled-collection-per-history-per-workspace-error
 EMPTY>
<!ELEMENT create-version-controlled-configuration-error EMPTY>
<!ELEMENT reference-version-controlled-configuration-error EMPTY>
<!ELEMENT select-existing-baseline-error EMPTY>
<!ELEMENT create-empty-baseline-error EMPTY>
<!ELEMENT baselines-from-same-history-error EMPTY>
<!ELEMENT no-checked-out-baseline-controlled-collection-members-error EMPTY>
<!ELEMENT create-baseline-collection-error EMPTY>
<!ELEMENT auto-baseline-error EMPTY>
<!ELEMENT baseline-controlled-members-must-be-checked-in-error EMPTY>
<!ELEMENT set-baseline-controlled-collection-members-error EMPTY>
<!ELEMENT merge-baseline-error EMPTY>
<!ELEMENT activity-location-ok-error EMPTY>
<!ELEMENT initialize-activity-error EMPTY>
<!ELEMENT must-be-activity-error EMPTY>
<!ELEMENT delete-activity-reference-error EMPTY>
<!ELEMENT update-checked-out-reference-error EMPTY>
<!ELEMENT update-activity-reference-error EMPTY>
<!ELEMENT update-workspace-reference-error EMPTY>
<!ELEMENT one-checkout-per-activity-per-history-error EMPTY>
<!ELEMENT linear-activity-error EMPTY>
<!ELEMENT initialize-activity-set-error EMPTY>
<!ELEMENT initialize-unreserved-error EMPTY>
<!ELEMENT atomic-activity-checkin-error EMPTY>
<!ELEMENT checkin-activity-error EMPTY>
<!ELEMENT cannot-modify-checked-in-parent-error EMPTY>
<!ELEMENT cannot-modify-destination-checked-in-parent-error EMPTY>
<!ELEMENT initialize-version-history-bindings-error EMPTY>
<!ELEMENT initialize-version-controlled-bindings-error EMPTY>
<!ELEMENT version-control-working-collection-members-error EMPTY>
<!ELEMENT update-version-controlled-collection-members-error EMPTY>
<!ELEMENT checkout-of-version-with-descendant-is-forbidden-error EMPTY>
<!ELEMENT checkout-of-version-with-descendant-is-discouraged-error EMPTY>
<!ELEMENT checkout-of-checked-out-version-is-forbidden-error EMPTY>
<!ELEMENT checkout-of-checked-out-version-is-discouraged-error EMPTY>
<!ELEMENT checkin-fork-forbidden-error EMPTY>
<!ELEMENT checkin-fork-discouraged-error EMPTY>
<!ELEMENT cannot-delete-default-variant-error EMPTY>
<!ELEMENT delete-variant-reference-error EMPTY>
<!ELEMENT cannot-rename-variant-error EMPTY>
<!ELEMENT variant-control-error EMPTY>
<!ELEMENT create-new-variant-error EMPTY>
<!ELEMENT delete-variant-predecessor-error EMPTY>
<!ELEMENT must-select-variant-error EMPTY>
<!ELEMENT update-default-variant-error EMPTY>
<!ELEMENT update-variant-controlled-resource-error EMPTY>
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE DAV:propfind SYSTEM "http://www.webdav.org/dtd/deltav-0.12.1.0.dtd">
<propfind xmlns="DAV:">
 <prop>
  <prop-key name="DAV:versionable-resource-collection-set"/>
  <prop-key name="DAV:version-history-collection-set"/>
 </prop>
</propfind>
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE multistatus SYSTEM "http://www.webdav.org/dtd/deltav-0.12.1.0.dtd">
<multistatus xmlns="DAV:">
 <response>
  <href>http://www.webdav.org</href>
   <propstat>
    <prop>
     <prop-value name="DAV:versionable-resource-collection-set">
      <href>http://www.webdav.org/public/projects</href>
      <href>http://www.webdav.org/users/projects</href>
     </prop-value>
     <prop-value name="DAV:version-history-collection-set">
      <href>http://www.webdav.org/public/archive</href>
      <href>http://www.webdav.org/users/archive</href>
     </prop-value>
    </prop>
    <status>HTTP/1.1 200 OK</status>
   </propstat>
 </response>
</multistatus>

Received on Sunday, 4 February 2001 18:20:51 UTC