Sign Up
Search
Options
search
Chat
Help
News
Log in
Not Logged in
Home
»
Boards
»
Stylus Studio Developer Network
»
Stylus Studio Technical Forum
»
Help using xsd xs:redefine needed!
Topic
Topic Page
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Prev Topic
Next Topic
top
Subject:
Help using xsd xs:redefine needed!
Author:
trevor paterson
Date:
11 Jul 2007 04:36 AM
I can't work out how to do an <xs:redefine><xs:restriction> on a complex type that is itself an <xs:extension>
for example
I have in schema1.xsd an ObjectType and a MapType derived from it by extension
<xs:complexType name="ObjectType">
<xs:sequence minOccurs="0">
<xs:element name="EvidenceREF" type="ReferenceType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="Comment" type="xs:string" minOccurs="0"/>
<xs:element name="RelationshipREF" type="ReferenceType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attributeGroup ref="basic"/>
</xs:complexType>
<xs:attributeGroup name="basic">
<xs:attribute name="id" type="xs:ID" use="required"/>
<xs:attribute name="name" type="xs:string" use="optional"/>
</xs:attributeGroup>
<xs:complexType name="MapType">
<xs:complexContent>
<xs:extension base="ObjectType">
<xs:sequence minOccurs="0">
<xs:element name="MapOfREF" type="ReferenceType" minOccurs="0"/>
<xs:element name="MapSetREF" type="ReferenceType" minOccurs="0"/>
<xs:element name="UsefulName" type="xs:string" minOccurs="0"/>
<xs:element name="Sex" type="xs:string" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="LinkageMap"/>
<xs:enumeration value="RadiationHybridMap"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
In schema2.xsd I want to redefine MapType to restrict the maxOccurs of some elements to 0 ( i.e. 'prohibit' them)
along the lines of
<xs:redefine schemaLocation="schema1.xsd">
<xs:complexType name="MapType">
<xs:complexContent>
<xs:restriction base="MapType">
<xs:extension base="ObjectType">
<xs:sequence minOccurs="0">
<xs:element name="MapOfREF" type="ReferenceType" minOccurs="0" maxOccurs="0"/>
<xs:element name="MapSetREF" type="ReferenceType" minOccurs="0" maxOccurs="0"/>
<xs:element name="UsefulName" type="xs:string" minOccurs="0"/>
<xs:element name="Sex" type="xs:string" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="LinkageMap"/>
<xs:enumeration value="RadiationHybridMap"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:extension>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:redefine>
however i can't see how to specify the restricted content as the xs:extension element is not allowed inside the xs:restriction here...
any pointers would be gratefully received!
Trevor Paterson
Bioinformatics
Roslin Institute
Scotland EH25 9PS
Topic Page
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Prev Topic
Next Topic
Powered by
Stylus Studio
, the world's leading
XML IDE
for
XML
,
XSLT
,
XQuery
,
XML Schema
,
DTD
,
XPath
,
WSDL
,
XHTML
,
SQL/XML
, and
XML Mapping
!
Go to Conference:
Select Conference
Stylus Studio Feature Requests
Stylus Studio Technical Forum
Website Feedback
XSLT Help and Discussion
XQuery Help and Discussion
Stylus Studio FAQs
Stylus Studio Code Samples & Utilities
Stylus Studio Announcements
go
Log In Options
Username:
Password:
Site Map
|
Privacy Policy
|
Terms of Use
|
Trademarks
Stylus Scoop XML Newsletter:
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.