Subject: [Simple] Comments on draft-ietf-simple-rpid-01

From: Anders Kristensen <[email-masked]>
Date: Fri, 20 Feb 2004 10:18:50 -0500

The draft doesn't spell out how many times the various extension 
elements can appear in a particular <tuple> or <status> element. For 
example, <activity> can perhaps appear more than once in a <status> but 
<idle> probably can't. These constraints aren't expressed in the schema 
so should be in the text.

 From 4.2:

    The <activity> element MAY be qualified with the 'from' and 'until'
    attributes to describe the time when the element assumed this value
    and the time until which is element is expected to be valid.

The schema def seems to require 'from' and doesn't define 'until'.

4.4: The <contact-type> element apparently is supposed to be extensible 
but AFAIK (and this may be wrong) the schema definition of this as a 
restriction of xs:token will not allow subsequent "widening" of the 
value space.

4.7: last paragraph seems to be a cut and paste error.

4.8 The <relationship> element seems to me to be a qualification of a 
tuple rather than a status. Shouldn't <relationship> be a tuple rather 
than a status extension?

5.1 The example has a bunch of errors:
- first <note> element appears in illegal place (according to the PIDF 
schema)
- Bad namespace prefix on <relationship> element.
- Within <tuple> elements, extensions must come immediately after the 
<status> element.
- The <contact> element is not a child of <status> (1st tuple)

In the schema section, the definition of activityToken and sphereToken 
looks odd. I'm not sure what it means or whether it's legal.

The 'from' and 'until' attributes of <sphere> aren't mentioned in the text.

Anders

_______________________________________________
Simple mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/simple

---

From: Henning Schulzrinne <[email-masked]>
Date: Sat, 21 Feb 2004 17:45:00 -0500

Thanks for your careful reading. Some comments inline:

> so should be in the text.

I've added minOccurs and maxOccurs where appropriate. I think in general 
privacy rules, for example, get messy if you allow multiple occurrences 
for things like sphere. I made activity a list type.

The default for minOccurs and maxOccurs is 1, if I read 
http://www.w3.org/TR/xmlschema-0/ correctly.

> The schema def seems to require 'from' and doesn't define 'until'.

I don't see why the schema would indicate that the attribute is 
required; there is no 'use="required"' declaration on the attribute.

> restriction of xs:token will not allow subsequent "widening" of the 

Suggestions on an appropriate schema definition would be appreciated. 
Probably best to just define as token and leave the value definition to 
the document and IANA extensions.

> 4.7: last paragraph seems to be a cut and paste error.

Fixed.

> tuple rather than a status. Shouldn't <relationship> be a tuple rather 

Good point; changed.

> - The <contact> element is not a child of <status> (1st tuple)

I think I got them now.

> looks odd. I'm not sure what it means or whether it's legal.

Suggestions on a how to best define a list of extensible tokens would be 
helpful. I'm unsure.

> The 'from' and 'until' attributes of <sphere> aren't mentioned in the text.

Added.

---

From: Henning Schulzrinne <[email-masked]>
Date: Sat, 21 Feb 2004 17:45:00 -0500

Fixed.

Good point; changed.

I think I got them now.

Added.

---

From: Anders Kristensen <[email-masked]>
Date: Mon, 23 Feb 2004 08:34:32 -0500

Henning Schulzrinne wrote:

>> example, <activity> can perhaps appear more than once in a <status> 
>> but <idle> probably can't. These constraints aren't expressed in the 
>> schema so should be in the text.
> 
> 

Right.

> 
>>
>> 4.4: The <contact-type> element apparently is supposed to be 
>> extensible but AFAIK (and this may be wrong) the schema definition of 
>> this as a restriction of xs:token will not allow subsequent "widening" 
>> of the value space.
> 
> 

That's what I was thinking.

> Suggestions on a how to best define a list of extensible tokens would be 

I don't know of a way to do this with XML schemas. It would be nice to 
be able to do it but it's not really necessary. As for contact-type they 
can be left simply as tokens with the text listing possible values, 
constraints, etc.

>> The 'from' and 'until' attributes of <sphere> aren't mentioned in the 

Another thing: the definition of the <idle> element:

      <xs:element name="idle" type="xs:dateTime"/>

doesn't allow for leaving out the value as suggested in 4.5. Maybe the 
value should be made into an optional "since" attribute.

Thanks,
Anders

---

From: Anders Kristensen <[email-masked]>
Date: Mon, 23 Feb 2004 08:34:32 -0500

Right.

Thanks,
Anders

---

From: Henning Schulzrinne <[email-masked]>
Date: Mon, 23 Feb 2004 08:47:38 -0500

> value should be made into an optional "since" attribute.

One solution is to use the nillable construct, 
http://www.w3.org/TR/xmlschema-0 (Section 2.9), as in

<  ... nillable="true"/>

and

<idle xsi:nil="true"></idle>

Is there a better way to indicate that the value can be empty? One way 
that may work is to allow a list of these, with a max list length of 
one. From http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#dateTime, 
I gather that lists can be empty.

---

From: Henning Schulzrinne <[email-masked]>
Date: Mon, 23 Feb 2004 08:47:38 -0500

<  ... nillable="true"/>

and

---

From: Anders Kristensen <[email-masked]>
Date: Mon, 23 Feb 2004 09:00:02 -0500

> <idle xsi:nil="true"></idle>

I believe that would work.

> I gather that lists can be empty.

It seems wrong from a modeling point of view to make the value a list 
with max size 1 just as a technical workaround.

I think the nillable construct is much better than the list hack. 
Personally, I'd still prefer an attribute, though. It's similar to the 
use of from and until on a number of other elements so I don't see an 
issue with that. It's obviously not a big deal, though.

---

From: Anders Kristensen <[email-masked]>
Date: Mon, 23 Feb 2004 09:00:02 -0500

---

From: Henning Schulzrinne <[email-masked]>
Date: Mon, 23 Feb 2004 14:09:13 -0500

> with max size 1 just as a technical workaround.

Agreed.

> issue with that. It's obviously not a big deal, though.

I agree with your argument and changed <idle> to use an optional 
attribute "since", as that also aligns better with the other time range 
attributes in the activity, privacy, etc. elements. Because 'since' 
seems to have the intended notion of being in the past, I also generally 
changed the time restriction to 'since', instead of 'from'.

Henning

---

From: Henning Schulzrinne <[email-masked]>
Date: Mon, 23 Feb 2004 14:09:13 -0500

Agreed.

Henning