Why do this xml not validate in oxygen ?
Questions about XML that are not covered by the other forums should go here.
-
- Posts: 6
- Joined: Tue Feb 20, 2007 10:52 am
Why do this xml not validate in oxygen ?
Here is my example of xml and example of xsd.
Why is it not validating in oxygen ?
<?xml version="1.0" encoding="UTF-8"?>
<Envelope
xsi:schemaLocation="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox Mailbox.xsd"
xmlns="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Header Version="2.0">
<Origin>2000</Origin>
<Destination>003X</Destination>
</Header>
<Body>
<Mailbox>
<MailboxNbr>000000000000125</MailboxNbr>
<MessageCount>000000000000010</MessageCount>
<CreationDate>2007-02-08</CreationDate>
<CreationTime>16:02:06</CreationTime>
<Message>
<MessageHeader Version="1.0">
<DocumentID>ST2B</DocumentID>
</MessageHeader>
<MessageBody>
<a:NISSE xmlns:a="a"
xsi:schemaLocation="a transport.xsd"
><A>1</A>
</a:NISSE>
</MessageBody>
</Message>
</Mailbox>
</Body>
</Envelope>
transport.xsd :
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="a" elementFormDefault="qualified"
attributeFormDefault="unqualified" >
<xs:element name="NISSE">
<xs:complexType>
<xs:sequence>
<xs:element name="A" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Why is it not validating in oxygen ?
<?xml version="1.0" encoding="UTF-8"?>
<Envelope
xsi:schemaLocation="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox Mailbox.xsd"
xmlns="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Header Version="2.0">
<Origin>2000</Origin>
<Destination>003X</Destination>
</Header>
<Body>
<Mailbox>
<MailboxNbr>000000000000125</MailboxNbr>
<MessageCount>000000000000010</MessageCount>
<CreationDate>2007-02-08</CreationDate>
<CreationTime>16:02:06</CreationTime>
<Message>
<MessageHeader Version="1.0">
<DocumentID>ST2B</DocumentID>
</MessageHeader>
<MessageBody>
<a:NISSE xmlns:a="a"
xsi:schemaLocation="a transport.xsd"
><A>1</A>
</a:NISSE>
</MessageBody>
</Message>
</Mailbox>
</Body>
</Envelope>
transport.xsd :
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="a" elementFormDefault="qualified"
attributeFormDefault="unqualified" >
<xs:element name="NISSE">
<xs:complexType>
<xs:sequence>
<xs:element name="A" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
-
- Posts: 6
- Joined: Tue Feb 20, 2007 10:52 am
you also need this xsd
mailbox.xsd
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Ardatis N.V. (Ardatis N.V.) -->
<!--W3C Schema generated by XMLSpy v2005 rel. 3 U (http://www.altova.com)-->
<xs:schema
xmlns="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox"
elementFormDefault="qualified"
attributeFormDefault="unqualified"
version="2.0">
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element ref="Mailbox"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CreationDate" type="xs:date"/>
<xs:element name="Destination">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
<xs:minLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Message">
<xs:complexType>
<xs:sequence>
<xs:element name="MessageHeader">
<xs:complexType>
<xs:sequence>
<xs:element ref="DocumentID"/>
</xs:sequence>
<xs:attribute name="Version" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="MessageBody" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Header">
<xs:complexType>
<xs:sequence>
<xs:element ref="Origin"/>
<xs:element ref="Destination"/>
</xs:sequence>
<xs:attribute name="Version" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Mailbox">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element ref="MailboxNbr"/>
<xs:element ref="MessageCount"/>
<xs:element ref="CreationDate"/>
<xs:element ref="CreationTime"/>
<xs:element ref="Message" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Envelope">
<xs:annotation>
<xs:documentation>Mailbox voor xml berichten</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="Header"/>
<xs:element ref="Body"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MailboxNbr" type="xs:positiveInteger"/>
<xs:element name="MessageCount" type="xs:positiveInteger"/>
<xs:element name="Origin">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
<xs:minLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CreationTime" type="xs:time"/>
<xs:element name="DocumentID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:schema>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Ardatis N.V. (Ardatis N.V.) -->
<!--W3C Schema generated by XMLSpy v2005 rel. 3 U (http://www.altova.com)-->
<xs:schema
xmlns="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.rsvz-inasti.fgov.be/schemas/ ... es/Mailbox"
elementFormDefault="qualified"
attributeFormDefault="unqualified"
version="2.0">
<xs:element name="Body">
<xs:complexType>
<xs:sequence>
<xs:element ref="Mailbox"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CreationDate" type="xs:date"/>
<xs:element name="Destination">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
<xs:minLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Message">
<xs:complexType>
<xs:sequence>
<xs:element name="MessageHeader">
<xs:complexType>
<xs:sequence>
<xs:element ref="DocumentID"/>
</xs:sequence>
<xs:attribute name="Version" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="MessageBody" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Header">
<xs:complexType>
<xs:sequence>
<xs:element ref="Origin"/>
<xs:element ref="Destination"/>
</xs:sequence>
<xs:attribute name="Version" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Mailbox">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element ref="MailboxNbr"/>
<xs:element ref="MessageCount"/>
<xs:element ref="CreationDate"/>
<xs:element ref="CreationTime"/>
<xs:element ref="Message" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Envelope">
<xs:annotation>
<xs:documentation>Mailbox voor xml berichten</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="Header"/>
<xs:element ref="Body"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="MailboxNbr" type="xs:positiveInteger"/>
<xs:element name="MessageCount" type="xs:positiveInteger"/>
<xs:element name="Origin">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="4"/>
<xs:minLength value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CreationTime" type="xs:time"/>
<xs:element name="DocumentID">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:schema>
-
- Posts: 4141
- Joined: Fri Mar 28, 2003 2:12 pm
Post by sorin_ristache »
Hello,
It is not valid because element A must be from namespace a. You can make the document valid by replacing
with
Regards,
Sorin
It is not valid because element A must be from namespace a. You can make the document valid by replacing
Code: Select all
<a:NISSE xmlns:a="a"
xsi:schemaLocation="a transport.xsd"
><A>1</A>
</a:NISSE>
Code: Select all
<a:NISSE xmlns:a="a"
xsi:schemaLocation="a transport.xsd"
><a:A>1</a:A>
</a:NISSE>
Sorin
-
- Posts: 4141
- Joined: Fri Mar 28, 2003 2:12 pm
Post by sorin_ristache »
If you use elementFormDefault="qualified" element A is in namespace "a". If you do not want that element A is in namespace "a" you must use elementFormDefault="unqualified".
Regards,
Sorin
Regards,
Sorin
Return to “General XML Questions”
Jump to
- Oxygen XML Editor/Author/Developer
- ↳ Feature Request
- ↳ Common Problems
- ↳ DITA (Editing and Publishing DITA Content)
- ↳ SDK-API, Frameworks - Document Types
- ↳ DocBook
- ↳ TEI
- ↳ XHTML
- ↳ Other Issues
- Oxygen XML Web Author
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Content Fusion
- ↳ Feature Request
- ↳ Common Problems
- Oxygen JSON Editor
- ↳ Feature Request
- ↳ Common Problems
- Oxygen PDF Chemistry
- ↳ Feature Request
- ↳ Common Problems
- Oxygen Feedback
- ↳ Feature Request
- ↳ Common Problems
- Oxygen XML WebHelp
- ↳ Feature Request
- ↳ Common Problems
- XML
- ↳ General XML Questions
- ↳ XSLT and FOP
- ↳ XML Schemas
- ↳ XQuery
- NVDL
- ↳ General NVDL Issues
- ↳ oNVDL Related Issues
- XML Services Market
- ↳ Offer a Service