XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
- Stylus Studio Technical Forum (14621)
-> + Report reverts back to XHTML-C... (2)
-> + Certificate error (7)
-> + Opening DITA files and associa... (4)
-> + Cannot see links from source d... (10)
-> + SS 2007 vs. SS 2008 calling a ... (3)
-> + Unable to compile java file (8)
-> + Unable to use xsi:type attribu... (2)
-> + Unable to save xslt file after... (5)
-> + .NET XslTransform Compiled out... (3)
-> + Reporting Comparison (2)
-> + problems setting up the fonts ... (3)
-> + XML conversion (5)
-> + XQUERY: Application Crash (3)
-> + Base type definition does not ... (5)
-> + Tip says Generate C# Code actu... (2)
-> + install help (4)
-> + saxon-license (3)
-> + Mapping 1 xml file layout to a... (2)
-> + Problem - Schema Representatio... (3)
-> + selecting the correct Line Ter... (2)
-> + Stylus Studio crashing (14)
-> + EXSLT extensions in Stylusstud... (4)
-> + "Indent XML Tags" introduces u... (8)
-> + unable to use Stylus Studio of... (4)
-> + Replace in selection not worki... (4)
-> + Activation Key (3)
-> + Berkeley support removed! ? (2)
-> + Report editor slows to a virtu... (2)
-> + StylusStudio will not stop pro... (2)
-> + Indent tags resolves NCRs in a... (4)
-> + XML Report Table Problem (2)
-> + document() function throws unk... (7)
-> + Report indentation (2)
-> + Report editor automatic scroll... (2)
-> + java.lang.ClassNotFoundExcepti... (4)
-> + Strange output (6)
-> + Built-In Processor Handling CD... (5)
-> + Parameter values with multiple... (3)
-> + Schema review (2)
-> + seperating values within one e... (2)
-> + Filtering 1000's of XML files ... (2)
-> + replace fop0.20 by 094 (2)
-> + HTML tables from sorted XSL (3)
-> + From dicisionshema to XML (4)
-> + Convert data from SQL database... (2)
-> + Really Really need help - xsl:... (2)
-> + xslt: xsl:include not finding ... (2)
-> + One field in multiple lines (3)
-> + Stylis studio editor slow (2)
-> + Schema Documentation (3)
-> + Convert PCL to XML (7)
-> + crashing when connected via VP... (3)
-> + Repeater err:XPST0003 (3)
-> + rtf to XML (4)
-> + Questions Regarding Existing B... (3)
-> + Bug: Saved Changes Lost Switch... (3)
-> + Adding Simple Types to Attribu... (4)
-> + SQL Table to XML Convert error... (9)
-> + please help me with style shee... (2)
-> + WSDL Misbehaving (4)
-> + Regarding XSLT logic for a sim... (2)
-> + Regarding XSLT logic for a sim... (2)
-> + Integration with VB.Net (5)
-> + License for end user (5)
-> + Error when running xalan sampl... (3)
-> + generate the date time in xslt... (2)
-> + Error When Using XMLConverters... (5)
-> + Viewing the toolbox pane (3)
-> + In Sync (2)
-> + Java EE 5 SDK vs. Java 2 SDK S... (2)
-> - Odd behavior of Begin Field in... (1)
-> + I/O-error while saving style s... (2)
-> + WEB Service Session (2)
-> - XML Report - Horizontal Line (1)
-> + XML feed to a txt file (2)
-> + problem with xml output (2)
-> + XSL Debugging (2)
-> + XML schema validation issue (t... (2)
-> + Problem during saving styleshe... (4)
-> + Slow Redraw (11)
-> + Source XML code updates in map... (2)
-> + converting XML to Excel (2)
-> + Pre-Sales Questions? And Mergi... (2)
-> + How can I download an earlier ... (2)
-> + Create multiple string outputs... (2)
-> + Alternate page masters indepen... (3)
-> + Flat to XML and back with Styl... (2)
-> + BUG: Byte Order Mark inserted ... (2)
-> + Schema Validation using the to... (7)
-> + Flat Text file to XML or XSD (6)
-> + Second time it should not go i... (2)
-> + How to sum Nodes which are at ... (2)
-> + Where has the wysiwyg editor g... (2)
-> + SS says my trial has expired -... (2)
-> + XSD input; SQL Table Output Ne... (2)
-> + Building Schema from XML (2)
-> + conditions on tag values expre... (3)
-> + XML converter "omit fields whe... (3)
-> + Marklogic XQuery support in St... (2)
-> + XSL switching stylesheet from ... (10)
-- Previous [1321-1340] [1341-1360] [1361-1380] Next
+ Website Feedback (249)
+ XSLT Help and Discussion (7625)
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
Simone MilaniSubject: Restricting on an extended type
Author: Simone Milani
Date: 24 Sep 2007 09:29 AM
Originally Posted: 24 Sep 2007 09:28 AM
Can someone please confirm the below restriction is valid? Stylus says yes, XMLBeans says yes, XMLSpy says no.

Please note the substitution group.

Thanks!

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.myCompany.com/xml/reference"
xmlns:reference="http://www.myCompany.com/xml/reference"
targetNamespace="http://www.myCompany.com/xml/reference"
elementFormDefault="qualified" attributeFormDefault="unqualified">

<xsd:complexType name="SystemReference">
<xsd:annotation>
<xsd:documentation>A system reference for an object</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="system" type="xsd:string"/>
<xsd:element name="code" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="UserReference">
<xsd:complexContent>
<xsd:extension base="SystemReference">
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="SystemReferenceList">
<xsd:sequence>
<xsd:element ref="systemReference" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="UserReferenceList">
<xsd:complexContent>
<xsd:restriction base="SystemReferenceList">
<xsd:sequence>
<xsd:element ref="userReference" minOccurs="1" maxOccurs="1"/>
</xsd:sequence>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>

<xsd:element name="systemReference" type="SystemReference"/>
<xsd:element name="userReference" type="UserReference" substitutionGroup="systemReference"/>
</xsd:schema>


DocumentRestrictByExtension.xsd
Sample Schema

Postnext
Ivan PedruzziSubject: Restricting on an extended type
Author: Ivan Pedruzzi
Date: 24 Sep 2007 11:59 AM

All XML Schema processors available in Stylus Studio (Saxon, .NET, MSXML, Xerces, XSV) pass validation using the following documents.

Hope this helps
Ivan Pedruzzi
Stylus Studio Team



<?xml version="1.0"?>
<p1:userReference
xmlns:p1="http://www.myCompany.com/xml/reference"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.myCompany.com/xml/reference RestrictByExtension.xsd">
<p1:system>string</p1:system>
<p1:code>string</p1:code>
</p1:userReference>

-------------------------------------------------------------

<?xml version="1.0"?>
<p1:systemReference
xmlns:p1="http://www.myCompany.com/xml/reference"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.myCompany.com/xml/reference RestrictByExtension.xsd">
<p1:system>string</p1:system>
<p1:code>string</p1:code>
</p1:systemReference>

Postnext
Simone MilaniSubject: Restricting on an extended type
Author: Simone Milani
Date: 24 Sep 2007 12:15 PM
Thanks Ivan,

What I was actually asking was is whether my schema is actually a valid schema and if doing that type of restriction is actually OK. I checked the spec and could not really work out if it's a valid restriction. Any ideas on which part of the XSD spec (if any) would cover my restriction scenario?

Thanks!

Simone

Postnext
Ivan PedruzziSubject: Restricting on an extended type
Author: Ivan Pedruzzi
Date: 24 Sep 2007 04:25 PM

I believe the schema is valid based on the definition given at

http://www.w3.org/TR/xmlschema-0/#DerivByRestrict

<<"A complex type derived by restriction is very similar to its base type, except that its declarations are more limited than the corresponding declarations in the base type. In fact, the values represented by the new type are a subset of the values represented by the base type (as is the case with restriction of simple types). In other words, an application prepared for the values of the base type would not be surprised by the values of the restricted type.">>

UserReference is defined as substitution of SystemReference, because UserReference can safely replace any instance of SystemReference without breaking the data model, the type extension is valid.

An example of incorrect extension would be changing the cardinality

<xsd:element ref="userReference" minOccurs="1" maxOccurs="2"/>

Hope this helps
Ivan Pedruzzi
Stylus Studio Team

Posttop
Simone MilaniSubject: Restricting on an extended type
Author: Simone Milani
Date: 25 Sep 2007 05:37 AM
Many thanks!

Simone

   
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! 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

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
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.