RE: 'form' property under schema composition

Hello,

Thanks for the answers. Indeed they raise more questions.

Your answer in (a) means that the same 'form' value (explicit or implicit) that I'd calculate for an element or for an attribute in the same XML Schema file or document should be expected when this file is participating in schema compositions, i.e., being included and/or imported. Is that correct?

If a top level element or attribute in a chameleon schema (the file they are defined in does not define a target namespace but the importing/including schema does) then they are qualified in the target namespace of the importing/including schema. Is that correct?

What happens to unqualified (form='unqualified') top level elements and attributes that are being imported/included into another schema that has a target namespace defined? I suspect that they remain unqualified. Is that correct?

Shlomo.

-----Original Message-----
From: Michael Kay [mailto:mike@saxonica.com]
Sent: Wed 1/2/2008 3:52 PM
To: Shlomo Yona; xmlschema-dev@w3.org
Subject: RE: 'form' property under schema composition
 
I think the rules are as follows:
 
(a) if "form" isn't specified for an element or attribute, then the
formDefault attribute of the textually containing xs:schema element provides
the default. The formDefault attribute of an including/importing schema does
not affect the value.
 
(b) if the resulting value is "qualified", then the element or attribute
name is qualified by the target namespace of the schema document. In the
case of a chameleon include, this is the targetNamespace of the including
schema document.
 
Michael Kay
http://www.saxonica.com/


  _____  

From: xmlschema-dev-request@w3.org [mailto:xmlschema-dev-request@w3.org] On
Behalf Of Shlomo Yona
Sent: 24 December 2007 07:18
To: xmlschema-dev@w3.org
Subject: 'form' property under schema composition




Hello,

I am confused about the expected behavior of the 'form' property for
elements and for attributes under schema composition operations.

How should the 'form' property of elements and of attributes (top level and
internal) be affected upon schema composition operations (xsd:include,
xsd:import and xsd:redefine) when targetNamespace is (or isn't) defined in
the included/imported document and a targetNamespace is defined in the
including/importing document?

Are they supposed to maintain their 'form' property? Should they take the
'form' property induced by the importing/including document? Does the
expected behavior change if elementFormDefault/attributeFormDefault is
defined in the importing/including document or in the imported/included
document (or both)? Does it matter whether or not 'form' property is
explicitly listed for an element/attribute in these cases?

While I think that the following is clear, I am not clear about the
remaining cases:
1. top level names in a schema document with no target namespace are
unqualified
2. top level names in a schema document with a target namespaces are
qualified
3. top level names in a schema document with no target namespace that are
included/imported into a schema document that has a target namespace are
qualified

Is that true?

What is the expected behavior in all the cases that are not one of the above
listed 3 cases?

Thanks.

Shlomo 

Received on Thursday, 3 January 2008 09:01:27 UTC