1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package tests;
21
22 import junit.framework.TestCase;
23 import org.apache.ws.commons.schema.XmlSchema;
24 import org.apache.ws.commons.schema.XmlSchemaCollection;
25 import org.apache.ws.commons.schema.XmlSchemaComplexContent;
26 import org.apache.ws.commons.schema.XmlSchemaComplexType;
27 import org.apache.ws.commons.schema.XmlSchemaElement;
28 import org.apache.ws.commons.schema.XmlSchemaType;
29
30 import javax.xml.namespace.QName;
31 import javax.xml.transform.stream.StreamSource;
32 import java.io.FileInputStream;
33 import java.io.InputStream;
34
35 public class MixedContentTest extends TestCase {
36 public void testMixedContent() throws Exception {
37 QName ELEMENT_QNAME = new QName("http://soapinterop.org/xsd",
38 "complexElt");
39
40
41 QName TYPE_QNAME = new QName("http://soapinterop.org/xsd",
42 "NoAssemblyRequiredProduct");
43
44 InputStream is = new FileInputStream(Resources.asURI("mixedContent.xsd"));
45 XmlSchemaCollection schema = new XmlSchemaCollection();
46 XmlSchema s = schema.read(new StreamSource(is), null);
47
48 XmlSchemaElement elementByName = s.getElementByName(ELEMENT_QNAME);
49 assertNotNull(elementByName);
50
51 XmlSchemaType schemaType = elementByName.getSchemaType();
52 assertNotNull(schemaType);
53
54 assertTrue(schemaType.isMixed());
55
56 XmlSchemaComplexType typeByName = (XmlSchemaComplexType)s.getTypeByName(TYPE_QNAME);
57 assertNotNull(typeByName);
58
59 assertTrue(((XmlSchemaComplexContent)typeByName.getContentModel()).isMixed());
60
61
62
63 }
64 }