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)
-> + JVM detection not finding JDK ... (2)
-> - stylus studio version 2011 pro... (1)
-> - WSDL 2.0 (1)
-> + Special characters in xml (2)
-> + cannot connect to mysql commun... (2)
-> + create a report from an existi... (2)
-> + Content not allowed in prolog (2)
-> + DB IInformix with database loc... (8)
-> + Stylus Report Designer (XML Re... (4)
-> - error: cos-nonambig: Content m... (1)
-> - UNIX .csv conversion and java ... (1)
-> + Nillable element, Validation e... (2)
-> + EDI Converter Error (2)
-> - CSV FILE INTO CARGO-IMP MESSAG... (1)
-> + BUG: Validation in piple will ... (2)
-> + Is there a 64-Bit Stylus Studi... (2)
-> + BUG: Read structure on SQL Ser... (3)
-> + [Customer Toyoto Motors Europe... (2)
-> - Get a schema for a JSON file (1)
-> + UNOC:4 forces converter to inp... (2)
-> - java class for xs:any elements (1)
-> + changing component separator (3)
-> + Output view disappeared (6)
-> + How to convert deeply nested X... (2)
-> + javax.net.ssl.SSLException (4)
-> + error converting .csv in a uni... (10)
-> + Menu bar disappeared (3)
-> - No Topic (1)
-> - What does "XML" stand for? So... (1)
-> - So XML is just HTML on steroid... (1)
-> + XHTML to XML conversion (2)
-> - Stylus Studio with DDTek xml c... (1)
-> + Installation fails (3)
-> + Is there a keyboard shortcut t... (2)
-> - Bug: Adding a scenario to an X... (1)
-> - Bug: Bug reporting outputs an ... (1)
-> - Tradacoms Invoice 9 Batch Quer... (1)
-> - problem with the product regis... (1)
-> + Help: Documentation... ends in... (2)
-> + How to install LIBxml2 (2)
-> - line numbers in validator outp... (1)
-> + Sharing Viollation in Stylus v... (5)
-> - support for asp.net in stylus... (1)
-> + how to use the latest java xml... (2)
-> - how to show xsd element relate... (1)
-> - Testing Stylus in a secure env... (1)
-> + How do you remove linemarkings... (3)
-> - Bug: Comment / Uncomment via C... (1)
-> + Setting escape (release) chara... (2)
-> + Xalan processor not showing up (2)
-> + Is there a keyboard shortcut t... (3)
-> - Modifying reports outside of S... (1)
-> + Run ALL Scenarios? (2)
-> + predefined macros ${ (4)
-> - TRADACOMS - EDI (1)
-> + SUM not working (3)
-> - Large xml file handling gives ... (1)
-> + 2011 Enterprise code folding f... (9)
-> + custom xml converter (3)
-> - Start Excel feter the mapping ... (1)
-> + Uninstall (2)
-> + xpath to compare two values fr... (2)
-> - xpath to compare two values fr... (1)
-> + SS2011 cannot save XML files u... (3)
-> + SS 2011 Enterprise saying 2010... (2)
-> + How to change the way whitespa... (7)
-> + Updating Relational Data Using... (4)
-> - Contract Stylus Studio help. ... (1)
-> + UTF_8 characters not displayed (6)
-> + Problem XSL to PDF ( dont reco... (2)
-> + HIPAA EDI - Looping question (4)
-> - HIPAA EDI - Looping question (1)
-> + Does XML Report support column... (2)
-> + Limited choice of XSL elements... (2)
-> + Single Source Publishing? (3)
-> - Stylus Stodio License (1)
-> - Stylus Stodio License (1)
-> + relax ng (3)
-> + having problem converting csv ... (8)
-> + error when selecting items fro... (2)
-> + CSV File to XML (3)
-> + Software registration - How to... (4)
-> - Software registration - How to... (1)
-> + .Net Saxon not supported by th... (2)
-> + How do I extend the Evaluation... (2)
-> + dst file (4)
-> + Flat File Custom XML conversio... (4)
-> + converting ascii file to xml f... (2)
-> + Evaluation Copy of Stylus Stud... (8)
-> + Batch process for soap (4)
-> + Strange error when running gen... (5)
-> + Merge Files (2)
-> + Convert cvs to XML (2)
-> + Stylus studio 2010 crashes in ... (5)
-> + excel to text (2)
-> + licence key? (2)
-> + JVM Heap error (4)
-> + How Do I clean TXT File? (2)
-> + SS Web Service Call Tester Pay... (3)
-> - SS Web Service Call Tester Mic... (1)
-- Previous [421-440] [441-460] [461-480] 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
Dwight SeeleySubject: Help with reuse
Author: Dwight Seeley
Date: 29 Apr 2005 01:19 PM
I was wondering if anyone has see a solution for the following scenario:
A schema (say X1.xsd) exists with one empty element named x1Element. x1Element has two attributes, a1 and a2, both of which are dataTyped as integers and restricted by maxLength and both are optional.
Now comes schema X2.xsd and schema X3.xsd. Both schemas want to include/redefine X1.xsd except that when used in X2.xsd, X1.xsd's a1 attribute is not optional, it must be required while when used in X3.xsd, X1.xsd's a1 attribute must remain optional.
Is this simple and I'm just thick (I can take the critique)? But I would still like to find a solution. Two days so far and I can find no solution. Thanks in advance.

Postnext
Ivan PedruzziSubject: Help with reuse
Author: Ivan Pedruzzi
Date: 01 May 2005 11:54 PM
Hi Dwight,

Try the following

X1.xsd
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://myorg.org" xmlns:org="http://myorg.org">
<xsd:complexType name="X1">
<xsd:attribute name="a1" use="optional" type="org:A"/>
<xsd:attribute name="a2" use="optional" type="org:A"/>
</xsd:complexType>
<xsd:simpleType name="A">
<xsd:restriction base="xsd:int">
<xsd:totalDigits value="5"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>


X2.xsd
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://myorg.org" xmlns:org="http://myorg.org">
<xsd:redefine schemaLocation="X1.xsd">
<xsd:complexType name="X1">
<xsd:complexContent>
<xsd:restriction base="org:X1">
<xsd:attribute name="a1" use="required" type="org:A"/>
<xsd:attribute name="a2" use="optional" type="org:A"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:redefine>
<xsd:element name="X2" type="org:X1"/>
</xsd:schema>

Now if i try to validate the following instance against X2.xsd
attribute a1 is required
<?xml version="1.0"?>
<org:X2
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://myorg.org X2.xsd"
xmlns:org="http://myorg.org"
a1="12345"/>

Here the final step
X3.xsd
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://myorg.org" xmlns:org="http://myorg.org">
<xsd:redefine schemaLocation="X1.xsd">
<xsd:complexType name="X1">
<xsd:complexContent>
<xsd:restriction base="org:X1">
<xsd:attribute name="a1" use="optional" type="org:A"/>
<xsd:attribute name="a2" use="optional" type="org:A"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:redefine>
<xsd:element name="X3" type="org:X1"/>
</xsd:schema>

With X3.xsd attribute a1 is optional again
<?xml version="1.0"?>
<org:X3
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://myorg.org X3.xsd"
xmlns:org="http://myorg.org"/>

Hope this helps
Ivan

Postnext
Dwight SeeleySubject: Help with reuse
Author: Dwight Seeley
Date: 02 May 2005 05:36 PM
Thank you for the insight. It has started me down the right path. But I do have a question about your model. Let's add a twist; X1.xsd is to be reused by many schemas all/each of which exist in a different namespace. For example, let's change X2.xsd's namespace to "http://myorg2.org" and change X3.xsd's namespace to "http://myorg3.org". Both X2 and X3 have at least two includes from their respective namespaces. X1.xsd is the only schema that is reused across namespaces and must be redefined in each use. How does this change the schemas? Thanks again.

Postnext
Ivan PedruzziSubject: Help with reuse
Author: Ivan Pedruzzi
Date: 02 May 2005 06:38 PM

You can "redefine" types in the same targetNamespace or types without targetNamespace.

See the specs
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-redefine

Hope this helps
Ivan

Posttop
Dwight SeeleySubject: Help with reuse
Author: Dwight Seeley
Date: 02 May 2005 06:54 PM
Thank you. Yes, I have read that. Perhaps something else is going on because as I read the spec, if X1.xsd where to be given no targetNamespace and be redefined by X2.xsd, it should be converted to X2.xsd's targetNamespace. But I can never get this to validate. If X2.xsd is used with X2 as the root, I keep being told that the attibutes of X1.xsd are undeclared. The only time when the redefines actually functions according to spec is when all xsd's are defined within the same targetNamespace as per your example. I wish I knew if this is a fault in the validator or something else that I am doing. It seems so straight forward, though. Any thoughts would be welcomed. Thanks, again.

   
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.