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)
+ Website Feedback (249)
- XSLT Help and Discussion (7625)
-> + Use of before and after string (3) Sticky Topic
-> - How do I substitute element ty... (1)
-> + How does one add working days ... (4)
-> - Help, I have existing XLT and... (1)
-> + Need help on XSLT issue - (2)
-> + EDI to XML Conversion (7)
-> - XML To JSON Conversion using X... (1)
-> + Formatting Paragraphs to same ... (2)
-> - Grouping of records (1)
-> + Problems with xsd 1.1 (4)
-> + XML to HL7 mapping (3)
-> + XSLT 3 and Iterate (2)
-> + XSL-FO to PDF preview (3)
-> + java.lang.RuntimeException: Er... (2)
-> + Create Acroforms with Stylus X... (2)
-> + How to change XSLT parameter s... (3)
-> + how to change format of the da... (2)
-> + Search "Next 8 Results " doesn... (2)
-> - Support for Git (1)
-> + newbee (8)
-- [1-20] [21-40] [41-60] Next
+ XQuery Help and Discussion (2017)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
Matt BakerSubject: Schema Validation Problems
Author: Matt Baker
Date: 28 Feb 2008 09:05 PM
I seem to be having issues validating an XML document using my schema. Both are below:

The Schema:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Receivers" >
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="MulticastReceiver"/>
<xs:element ref="SocketHubReceiver"/>
<xs:element ref="SocketReceiver"/>
<xs:element ref="UDPReceiver"/>
<xs:element ref="XMLSocketReceiver"/>
<xs:element ref="LogFilePatternReceiver"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="MulticastReceiver">
<xs:complexType>
<xs:all>
<xs:element ref="address"/>
<xs:element ref="decoder"/>
<xs:element ref="port"/>
<xs:element ref="threshold"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="address">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="SocketHubReceiver">
<xs:complexType>
<xs:all>
<xs:element ref="host"/>
<xs:element ref="port"/>
<xs:element ref="reconnectionDelay"/>
<xs:element ref="threshold"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="host">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="reconnectionDelay">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:integer"/>
</xs:complexType>
</xs:element>
<xs:element name="SocketReceiver">
<xs:complexType>
<xs:all>
<xs:element ref="loggerRepository"/>
<xs:element ref="paused"/>
<xs:element ref="port"/>
<xs:element ref="threshold"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="listener">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="UDPReceiver">
<xs:complexType>
<xs:all>
<xs:element ref="decoder"/>
<xs:element ref="encoding"/>
<xs:element ref="loggerRepository"/>
<xs:element ref="paused"/>
<xs:element ref="port"/>
<xs:element ref="threshold"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="encoding">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="XMLSocketReceiver">
<xs:complexType>
<xs:all>
<xs:element ref="decoder"/>
<xs:element ref="loggerRepository"/>
<xs:element ref="paused"/>
<xs:element ref="port"/>
<xs:element ref="threshold"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="LogFilePatternReceiver">
<xs:complexType>
<xs:all>
<xs:element ref="fileURL"/>
<xs:element ref="filterExpression"/>
<xs:element ref="logFormat"/>
<xs:element ref="tailing"/>
<xs:element ref="timeStampFormat"/>
</xs:all>
<xs:attribute name="name" use="required" type="xs:NCName"/>
</xs:complexType>
</xs:element>
<xs:element name="fileURL">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="filterExpression">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="logFormat">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="tailing">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:boolean"/>
</xs:complexType>
</xs:element>
<xs:element name="timeStampFormat">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="decoder">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="port">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:integer"/>
</xs:complexType>
</xs:element>
<xs:element name="threshold">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="active">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:boolean"/>
</xs:complexType>
</xs:element>
<xs:element name="class">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="loggerRepository">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="paused">
<xs:complexType>
<xs:attribute name="value" use="required" type="xs:boolean"/>
</xs:complexType>
</xs:element>
</xs:schema>

The Document:
<?xml version="1.0" encoding="utf-8"?>
<Receivers xmlns="receiverSchema.xsd" >
<LogFilePatternReceiver name="Receiver1">
<fileURL value="file:\\\C:\LogMonitorLogs\currentlog.log"/>
<filterExpression value=""/>
<logFormat value="TIMESTAMP LEVEL LOGGER [THREAD]: MESSAGE"/>
<tailing value="true"/>
<timeStampFormat value="dd MMM yyyy HH:mm:ss,SSS"/>
</LogFilePatternReceiver>
<LogFilePatternReceiver name="Receiver2">
<fileURL value="file:\\\C:\LogMonitorLogs\currentlog2.log"/>
<filterExpression value=""/>
<logFormat value="TIMESTAMP LEVEL LOGGER [THREAD]: MESSAGE"/>
<tailing value="true"/>
<timeStampFormat value="dd MMM yyyy HH:mm:ss,SSS"/>
</LogFilePatternReceiver>
</Receivers>

It tells me "Cannot find the declaration of element 'Receivers'". Can anyone help me out?

Thanks,
Matt

Postnext
(Deleted User) Subject: Schema Validation Problems
Author: (Deleted User)
Date: 29 Feb 2008 02:18 AM
Hi Matt,
if you wrote <Receivers xmlns="receiverSchema.xsd" > to associate the XML to receiverSchema.xsd, it's the wrong syntax.
To get the correct one, open the XML file in Stylus Studio, remove the xmlns attribute and invoke the XML | Associate XML with Schema menu command.

Hope this helps,
Alberto

Posttop
Matt BakerSubject: Schema Validation Problems
Author: Matt Baker
Date: 29 Feb 2008 01:37 PM
Thanks Alberto, that did it!

Matt

>Hi Matt,
>if you wrote <Receivers
>xmlns="receiverSchema.xsd" > to
>associate the XML to receiverSchema.xsd,
>it's the wrong syntax.
>To get the correct one, open the XML
>file in Stylus Studio, remove the xmlns
>attribute and invoke the XML | Associate
>XML with Schema menu command.
>
>Hope this helps,
>Alberto

   
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.