- From: Zhangxiangli <xianglizhang@precomtech.com>
- Date: Fri, 14 Dec 2001 19:05:50 -0000
- To: <www-xml-schema-comments@w3.org>
- Message-ID: <00e801c1848f$4bc81c80$7f00a8c0@xianglizhang>
Hello:
I currently have some puzzles on the keyref definition according to the recommendation pulished in 2 May 2001 .
I write a schema that has 6 complexType A B1 B2 C D E, B1,B2 extension A, and C,D extension B1, class A,B1 are abstract type, and I create two element: A and E. as following:
A
|
------
| | E
B1 B2
|
------
| |
C D
Here is my problem:
I want to create a keyref that reference parts of A's instance, suppose only for instance of B1 subtree, not for B2?
I think the definition should be somthing like:
<xsd:key name="A_PK">
<xsd:selector xpath="A[@xsi:type='C'|@xsi:type='D']"/>
<xsd:field xpath="a1"/>
</xsd:key>
<xsd:keyref name='E_FK" refer="A_PK">
<xsd:selector xpath="E"/>
<xsd:field xpath="a1"/>
</xsd:keyref>
but according to recomendation, in "selector" "xpath" condition expression such as"[]" does not supported, How can I write such keyref constraints?
Hope for your reply.
My sample schema and xml document is in the attachment.
bests regards.
thanks a lot.
xiangli zhang
Attachments
- text/xml attachment: sample.xsd
- text/xml attachment: Sample.xml
Received on Friday, 14 December 2001 05:48:17 UTC