Connecting Tech Pros Worldwide Forums | Help | Site Map

How to dynamically load schema from a file and then assign to xmldocument and validat

Newbie
 
Join Date: May 2006
Posts: 2
#1: May 7 '06
I am creating in memory xmldocument.Previously I were validating my file against a dtd file and then by the help of GetElementByID read my needed node.
i.e.

Expand|Select|Wrap|Line Numbers
  1. XmlDocumentType doctype = null; 
  2. doctype = statementsDocument.CreateDocumentType("queries", null,statementsPath +"\\Validation.dtd", null); 
  3. statementsDocument.AppendChild(doctype); 
  4. nodeElem = statementsDocument.CreateElement("queries"); 
  5. statementsDocument.AppendChild(nodeElem); 
  6. .... 
Now I have created validate.xsd.I don't know how to validate through xsd file
Sometime Later I want's validate from this validate.xsd then read my element by Get element ByID()



MY validate.dtd were

Expand|Select|Wrap|Line Numbers
  1. <?xml version="1.0" encoding="UTF-8"?> 
  2. <!--DTD generated by XMLSpy v2006 sp2 U (http://www.altova.com)--> 
  3. <!ELEMENT queries (query+)> 
  4. <!ELEMENT query (statement)> 
  5. <!ATTLIST query 
  6. type CDATA #REQUIRED 
  7. id ID #REQUIRED 
  8. <!ELEMENT statement (#PCDATA)> 
and now my validate.xsd is

Expand|Select|Wrap|Line Numbers
  1. <?xml version="1.0" encoding="UTF-8" standalone="no"?> 
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> 
  3. <xs:import namespace="http://www.w3.org/XML/1998/namespace"/> 
  4. <xs:element name="queries"> 
  5. <xs:complexType> 
  6. <xs:sequence> 
  7. <xs:element ref="query" maxOccurs="unbounded"/> 
  8. </xs:sequence> 
  9. </xs:complexType> 
  10. </xs:element> 
  11. <xs:element name="query"> 
  12. <xs:complexType> 
  13. <xs:sequence> 
  14. <xs:element ref="statement"/> 
  15. </xs:sequence> 
  16. <xs:attribute name="type" type="xs:string" use="required"/> 
  17. <xs:attribute name="id" type="xs:ID" use="required"/> 
  18. </xs:complexType> 
  19. </xs:element> 
  20. <xs:element name="statement"> 
  21. <xs:complexType mixed="true"> 
  22. <xs:choice minOccurs="0" maxOccurs="unbounded"/> 
  23. </xs:complexType> 
  24. </xs:element> 
  25. </xs:schema>

Reply