[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
DTD on the draft
Hi all,
I found some problems/remarks in the latest CAP draft. Can you please
check/confirm/modify ?
---------------------------------------------------
1. the CAP DTD seems to be incorrect (or just outdated...) :
<!ATTLIST modify (max-time?,select,add,delete,update)>
<!ATTLIST modify id %CMDID; #IMPLIED>
<!ELEMENT itip (max-time?,data)>
<!ATTLIST itip id %CMDID; #IMPLIED>
should be replaced by :
<!ELEMENT modify (max-time?,select,add,remove,update)>
<!ATTLIST modify id %CMDID; #IMPLIED>
<!ELEMENT schedule (max-time?,target+,data)>
<!ATTLIST schedule id %CMDID; #IMPLIED>
- the 'add' element is not defined at all (this is a sub-element of
modify) ! And there is no example of this element in 6.2.4.3 (modify
command).
- the max-result and max-size elements (used by the search CAP command)
are not defined in the search command paragraph (6.2.4.5). We don't know
how it works, and there is no example.
- in 6.1.1 (generateuid command), there is the following example :
C: MSG 1 5 . 2837 60
C: Content-Type: application/beep+xml
C:
C: <generateuid num=5/>
C: END
XML attributes MUST be enclosed with ' or " :
(as specified in XML Specifications)
C: MSG 1 5 . 2837 60
C: Content-Type: application/beep+xml
C:
C: <generateuid num="5"/>
C: END
(note : this error appears in other places in the draft)
- in 6.2.4.1 (create command), the example is :
(...)
C: --boundary-foo321
C: Content-Type: application/beep+xml
C: Content-ID: 1@xxxxxxxxxxxxxxx
C:
C: <create id="creation01">
(...)
C: --boundary-foo321
C: Content-Type: text/calendar
C: Content-ID: 2@xxxxxxxxxxxxxxx
C:
C: BEGIN:VCALENDAR
(...)
RFC822 says that Content-ID MUST be enclosed in < > so the correct example
MUST be :
(...)
C: --boundary-foo321
C: Content-Type: application/beep+xml
C: Content-ID: <1@xxxxxxxxxxxxxxx>
C:
C: <create id="creation01">
(...)
C: --boundary-foo321
C: Content-Type: text/calendar
C: Content-ID: <2@xxxxxxxxxxxxxxx>
C:
C: BEGIN:VCALENDAR
(...)
(note : ALL the content-id in CAP are incorrect...)
- in 6.2.4.3 (modify command), the example is incorrect :
C: <modify id="modify01"/>
C: <select>
(...)
C: <update remove-missing=false>
C: <data content="cid:update@xxxxxxxxxxxxxxx"/>
C: </update>
C: </modify>
on line 1 : <modify /> the / is irrelevant ...
(I don't check the other examples)
---------------------------------------------------
2. I think that the DTD is not very clear (when a human read it) :
- Elements that corresponds to CAP commands may be separated from
sub-elements. (create,modify,delete visually separated from max-result,
target,data...) - 'CAP request' element can be separated from 'CAP answer' elements.
(create,delete,modify separated from request-status, error...)
Today, all the elements are in a random order in the DTD. I can send you a
'human compliant' version if you want. This will allow a more clean
reading of this document. It is not very important, but this kind of
document should be easy to read (I am developping a CAP server, that's why
I found this DTD hard to read.).
--
Regards,
Benjamin Sonntag
<benjamin@xxxxxxxxxxxx>