Re: Fw: Re: XML Core WG devloping xml:id

/ "MURATA Makoto (FAMILY Given)" <EB2M-MRT@asahi-net.or.jp> was heard to say:
| My reply did not reach the ML, probably because the W3C spam filter blocked 
| my mail.

I belive that Paul has fixed that (again). Sorry for the inconvenience.

| I read the xml:id working draft.  Here are some questions.
|
| Q1. When an XML document has an xml:id error, how should fragment identifiers (esp. 
|     bare names) be interpreted?

If an xml:id error occurs when processing an xml:id attribute, for
example if it is not a Name, then no change is made to the type of the
xml:id attribute. I would expect it not to be a successful fragment
identifier target in that case.

| Q2. When we process non-validated documents that do not have xml:id 
|     errors, are xml:id attributes "DTD-determined IDs"
|     or "schema-determined IDs" as specified in the XPointer framework?

I think the idea is that they get the appropriate type according to
your needs. If your processor expects infosets, then they're
DTD-determined IDs. If it expects PSVIs, then they're
schema-determined IDs.

| Q3. Suppose that a document is wholly validated against the associated DTD and this document  
|     does not have xml:id errors.  Then, are xml:id attributes  "DTD-determined IDs"
|     or "schema-determined IDs" ?

They're DTD-determined IDs, because you used DTD validation.

| Q4. Suppose that a document is wholly validated against the associated W3C XML Schema schema
|      and this document does not have xml:id errors.  Then, are xml:id attributes  
|     "DTD-determined IDs" or "schema-determined IDs" ?

They're schema-determined IDs, because you used schema validation.

| Q5. What do you mean by "partially validated"?  I do not see its definition in XML 1.0 
|     or W3C XML Schema Part 1.

Uhm, I guess we should define that. I meant to cover some of the
quadrants of [1] where some part of a document is schema validated but
some of it is not, perhaps because validation didn't start at the root
or because some was skip validated.

| Q6. Suppose that a document is partially validated against the associated DTD and this 
|     document does not have xml:id errors.  Then, are non-validated xml:id attributes  
|     "DTD-determined IDs" or "schema-determined IDs" ?

I'm not sure that you can do partial DTD validation. But if you can, I
want to give the same answer here that I did for Q2.

| Q7. Suppose that a document is partially validated against the associated W3C XML Schema 
|     schema and this document does not have xml:id errors.  Then, are non-validated xml:id 
|     attributes  "DTD-determined IDs" or "schema-determined IDs" ?

I want to give the same answer here that I did for Q2. Though I suppose it
might make more sense to make them schema-determined IDs.

| Q8. Suppose that a document is invalid against the associated DTD and it does not have 
|     xml:id errors.  How should fragment identifiers (esp. bare names) be interpreted?

Per the current draft, behavior in that case is undefined. I'm
reluctant to try to nail it down. It seems like a bad idea to say that
xml:id processing should produce some positive result in this case,
since the document is invalid. And it seems like a bad idea to say
that xml:id processing should not change the type of attributes in
this case because it might not be possible (suppose you're streaming
and you don't notice that the document is invalid until 2Gb of data
has passed by).

| Q9. Suppose that a document is invalid against the associated W3C XML Schema schema and it 
|     does not have xml:id errors.  How should fragment identifiers (esp. bare names) be 
|     interpreted?

Per the current draft, behavior in that case is undefined.

| I did not mention RELAX NG, since RELAX NG does not have any in-band
| mechanisms for associating an XML document with an authoritative RELAX
| NG schema.  (This omission is  deliberate.)  I thus believe that we do
| not to consider RELAX NG.

I was hoping that the spec was open enough to allow RELAX NG
validation to determine IDs. My feeling is that if your application
does know what RELAX NG grammar to apply, it can. And if it's an
xml:id aware processor, it can perform the additional checks of
xml:id. In this case, I think I would like "partially valid" to apply
to ambiguous results.

                                        Be seeing you,
                                          norm

-- 
Norman.Walsh@Sun.COM / XML Standards Architect / Sun Microsystems, Inc.
NOTICE: This email message is for the sole use of the intended
recipient(s) and may contain confidential and privileged information.
Any unauthorized review, use, disclosure or distribution is prohibited.
If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.

Received on Wednesday, 20 October 2004 14:37:40 UTC