1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package tests;
20
21 import junit.framework.TestCase;
22 import org.apache.ws.commons.schema.XmlSchemaCollection;
23 import org.apache.ws.commons.schema.XmlSchemaElement;
24 import org.apache.ws.commons.schema.XmlSchemaType;
25
26 import javax.xml.namespace.QName;
27 import javax.xml.transform.stream.StreamSource;
28 import java.io.FileInputStream;
29 import java.io.InputStream;
30
31 public class TestSimpleRestriction extends TestCase {
32 public void testSimpleRestriction() throws Exception {
33 QName TYPE_QNAME = new QName("http://soapinterop.org/types",
34 "layoutComponentType");
35 QName ELEMENT_QNAME = new QName("http://soapinterop.org/types",
36 "foo");
37
38 InputStream is = new FileInputStream(Resources.asURI("SimpleContentRestriction.xsd"));
39 XmlSchemaCollection schema = new XmlSchemaCollection();
40 schema.read(new StreamSource(is), null);
41
42 XmlSchemaType simpleType = schema.getTypeByQName(TYPE_QNAME);
43 assertNotNull(simpleType);
44
45 XmlSchemaElement elem = schema.getElementByQName(ELEMENT_QNAME);
46 assertNotNull(elem);
47
48 XmlSchemaType type = elem.getSchemaType();
49 assertNotNull(type);
50 }
51
52 public void testSimpleTypeRestrictionWithoutNamespace() throws Exception {
53 InputStream is = new FileInputStream(Resources.asURI("includedWithoutNamespace.xsd"));
54 XmlSchemaCollection schema = new XmlSchemaCollection();
55 schema.read(new StreamSource(is), null);
56 XmlSchemaType principalId = schema.getTypeByQName(new QName("", "XdwsPrincipalId"));
57 assertNotNull(principalId);
58 XmlSchemaType groupId = schema.getTypeByQName(new QName("", "XdwsGroupId"));
59 assertNotNull(groupId);
60 assertEquals(groupId.getBaseSchemaType(), principalId);
61 }
62 }