XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: [xml-dev] Why is XPath2 being so explicit about types of substitution grp members?

The problem is that you can have a valid element named S which doesn't
conform to the definition of the global element declaration S, because of
the existence of a local element called S with an unrelated type. So the
fact that an element is named S and is valid doesn't prove that it conforms
to the type of the global element declaration S: hence the need for rule 2.

Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Soren Kuula [mailto:dongfang@dongfang.dk] 
> Sent: 08 February 2006 03:15
> To: xml-dev@lists.xml.org
> Subject: [xml-dev] Why is XPath2 being so explicit about 
> types of substitution grp members?
> 
> Hi,
> 
> As I understand it, XML Schema substitution grp members 
> always must have 
> a type that is derived from that o the head:
> 
> "
> All such members must have type definitions which are either 
> the same as 
> the head's type definition or restrictions or extensions of it. 
> Therefore, although the names of elements can vary widely as new 
> namespaces and members of the substitution group are defined, the 
> content of member elements is strictly limited according to the type 
> definition of the substitution group head.
> "
> 
> Cool, but there must be a reason for the XPath2 spec to reapeat that? 
> schema-element:
> 
>    1.
> 
>       The name of the candidate node matches the specified ElementName
>       <http://www.w3.org/TR/xpath20/#doc-xpath-ElementName> or matches
>       the name of an element in a substitution group
>       <http://www.w3.org/TR/xpath20/#dt-substitution-group> 
> headed by an
>       element named ElementName
>       <http://www.w3.org/TR/xpath20/#doc-xpath-ElementName>.
> 
>    2.
> 
>       |derives-from(|/AT, ET/|)| is |true|, where /AT/ is the type
>       annotation of the candidate node and /ET/ is the schema type
>       declared for element ElementName
>       <http://www.w3.org/TR/xpath20/#doc-xpath-ElementName> in the
>       in-scope element declarations
>       <http://www.w3.org/TR/xpath20/#dt-is-elems>.
> 
>    3.
> 
>       If the element declaration for ElementName
>       <http://www.w3.org/TR/xpath20/#doc-xpath-ElementName> in the
>       in-scope element declarations
>       <http://www.w3.org/TR/xpath20/#dt-is-elems> is not |nillable|,
>       then the |nilled| property of the candidate node is |false|
> 
> Is #2 really necessary here? It's about type _annotations_ all right, 
> but as I understand it these must be consistent with the XML schema 
> types in this respect anyway...
> 
> I'm probably just overlooking something, just puzzled...
> 
> Soren
> 
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> 
> The list archives are at http://lists.xml.org/archives/xml-dev/
> 
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>
> 
> 




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]





News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2006 XML.org. This site is hosted by OASIS