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.XmlSchema;
23 import org.apache.ws.commons.schema.XmlSchemaCollection;
24 import org.apache.ws.commons.schema.XmlSchemaElement;
25 import org.apache.ws.commons.schema.XmlSchemaType;
26
27 import javax.xml.namespace.QName;
28 import javax.xml.transform.stream.StreamSource;
29 import java.io.FileInputStream;
30 import java.io.InputStream;
31
32 public class TestSimpleRestriction extends TestCase {
33 public void testSimpleRestriction() throws Exception {
34 QName TYPE_QNAME = new QName("http://soapinterop.org/types",
35 "layoutComponentType");
36 QName ELEMENT_QNAME = new QName("http://soapinterop.org/types",
37 "foo");
38
39 InputStream is = new FileInputStream(Resources.asURI("SimpleContentRestriction.xsd"));
40 XmlSchemaCollection schema = new XmlSchemaCollection();
41 XmlSchema s = schema.read(new StreamSource(is), null);
42
43 XmlSchemaType simpleType = schema.getTypeByQName(TYPE_QNAME);
44 assertNotNull(simpleType);
45
46 XmlSchemaElement elem = schema.getElementByQName(ELEMENT_QNAME);
47 assertNotNull(elem);
48
49 XmlSchemaType type = elem.getSchemaType();
50 assertNotNull(type);
51 }
52
53 public void testSimpleTypeRestrictionWithoutNamespace() throws Exception {
54 InputStream is = new FileInputStream(Resources.asURI("includedWithoutNamespace.xsd"));
55 XmlSchemaCollection schema = new XmlSchemaCollection();
56 XmlSchema s = schema.read(new StreamSource(is), null);
57 XmlSchemaType principalId = schema.getTypeByQName(new QName("", "XdwsPrincipalId"));
58 assertNotNull(principalId);
59 XmlSchemaType groupId = schema.getTypeByQName(new QName("", "XdwsGroupId"));
60 assertNotNull(groupId);
61 assertEquals(groupId.getBaseSchemaType(), principalId);
62 }
63 }