You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by di...@apache.org on 2005/09/21 00:55:17 UTC
svn commit: r290580 [3/5] - in
/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema: ./
constants/ utils/
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,92 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+import org.w3c.dom.Element;
+
+/**
+ * Abstract class for all facets that are used when simple types are
+ * derived by restriction.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+// Vidyanand - 17th Oct - added the construct method
+// Vidyanand - 6th Dec - changed RuntimeExceptions thrown to XmlSchemaExceptions
+
+public abstract class XmlSchemaFacet extends XmlSchemaAnnotated {
+
+ /**
+ * Creates new XmlSchemaFacet
+ */
+
+
+ protected XmlSchemaFacet() {
+ }
+
+ protected XmlSchemaFacet(Object value, boolean fixed) {
+ this.value = value;
+ this.fixed = fixed;
+ }
+
+ boolean fixed;
+
+ Object value;
+
+ public boolean isFixed() {
+ return fixed;
+ }
+
+ public void setFixed(boolean fixed) {
+ this.fixed = fixed;
+ }
+
+ public Object getValue() {
+ return value;
+ }
+
+ public void setValue(Object value) {
+ this.value = value;
+ }
+
+ public static XmlSchemaFacet construct(Element el) {
+ String name = el.getLocalName();
+ boolean fixed = false;
+ if (el.getAttribute("fixed").equals("true")) {
+ fixed = true;
+ }
+ try {
+ // TODO : move this from reflection to a if condition and avoid cost
+ // of reflection
+ Class facetClass = Class.forName("org.apache.ws.commons.schema.XmlSchema"
+ + Character.toUpperCase(name.charAt(0))
+ + name.substring(1) + "Facet");
+ XmlSchemaFacet facet = (XmlSchemaFacet) facetClass.newInstance();
+ facet.setFixed(fixed);
+ facet.setValue(el.getAttribute("value"));
+ return facet;
+ } catch (ClassNotFoundException e) {
+ throw new XmlSchemaException(e.getMessage());
+ } catch (InstantiationException e) {
+ throw new XmlSchemaException(e.getMessage());
+ } catch (IllegalAccessException e) {
+ throw new XmlSchemaException(e.getMessage());
+ }
+
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaForm.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaForm.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaForm.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaForm.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+import org.apache.ws.commons.schema.constants.Enum;
+
+/**
+ * Indicates if attributes or elements need to be qualified or left unqualified.
+ *
+ * @author mukund
+ */
+
+// October 15th - momo - initial implementation
+// Jan 16th - Vidyanand - changed Quailified to qualified and Unqualified to unqualified
+// Feb 12th - Joni change qualified to Qualified and unqualified to Unqualified
+
+public class XmlSchemaForm extends Enum {
+
+ public static final String QUALIFIED = "qualified";
+ public static final String UNQUALIFIED = "unqualified";
+ public static final String NONE = "none";
+
+ static String[] members = new String[]{NONE, QUALIFIED, UNQUALIFIED};
+
+ /**
+ * Creates new XmlSchemaForm
+ */
+ public XmlSchemaForm() {
+ super();
+ }
+
+ public XmlSchemaForm(String value) {
+ super(value);
+ }
+
+ public String[] getValues() {
+ return members;
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFractionDigitsFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFractionDigitsFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFractionDigitsFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaFractionDigitsFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining fractionDigits facets. Represents the World Wide
+ * Web Consortium (W3C) fractionDigits facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaFractionDigitsFacet extends XmlSchemaNumericFacet {
+
+ /**
+ * Creates new XmlSchemaFractionDigitsFacet
+ */
+ public XmlSchemaFractionDigitsFacet() {
+ }
+
+ public XmlSchemaFractionDigitsFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroup.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroup.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroup.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroup.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,55 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class that defines groups at the schema level that are referenced
+ * from the complex types. Groups a set of element declarations so that
+ * they can be incorporated as a group into complex type definitions.
+ * Represents the World Wide Web Consortium (W3C) group element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaGroup extends XmlSchemaAnnotated {
+
+ /**
+ * Creates new XmlSchemaGroup
+ */
+ public XmlSchemaGroup() {
+ }
+
+ String name;
+ XmlSchemaGroupBase particle;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public XmlSchemaGroupBase getParticle() {
+ return particle;
+ }
+
+ public void setParticle(XmlSchemaGroupBase particle) {
+ this.particle = particle;
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupBase.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupBase.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupBase.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupBase.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * An abstract class for XmlSchemaChoice, XmlSchemaAll, or XmlSchemaSequence.
+ *
+ * @author mukund
+ */
+
+public abstract class XmlSchemaGroupBase extends XmlSchemaParticle {
+ XmlSchemaObjectCollection items;
+
+ /**
+ * Creates new XmlSchemaGroupBase
+ */
+ public XmlSchemaGroupBase() {
+ items = new XmlSchemaObjectCollection();
+ }
+
+ public abstract XmlSchemaObjectCollection getItems();
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupRef.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupRef.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupRef.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaGroupRef.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,55 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+import javax.xml.namespace.QName;
+
+
+/**
+ * Class used within complex types that defines the reference to
+ * groups defined at the schema level. Represents the World Wide
+ * Web Consortium (W3C) group element with ref attribute.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaGroupRef extends XmlSchemaParticle {
+
+ /**
+ * Creates new XmlSchemaGroupRef
+ */
+ public XmlSchemaGroupRef() {
+ }
+
+ XmlSchemaGroupBase particle;
+
+ public XmlSchemaGroupBase getParticle() {
+ return this.particle;
+ }
+
+ QName refName;
+
+ public QName getRefName() {
+ return this.refName;
+ }
+
+ public void setRefName(QName refName) {
+ this.refName = refName;
+ }
+
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,63 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for the identity constraints: key, keyref, and unique elements.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - should this be an abstract class ???
+
+public class XmlSchemaIdentityConstraint extends XmlSchemaAnnotated {
+
+ /**
+ * Creates new XmlSchemaIdentityConstraint
+ */
+ public XmlSchemaIdentityConstraint() {
+ fields = new XmlSchemaObjectCollection();
+ }
+
+ XmlSchemaObjectCollection fields;
+
+ public XmlSchemaObjectCollection getFields() {
+ return fields;
+ }
+
+ String name;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ XmlSchemaXPath selector;
+
+ public XmlSchemaXPath getSelector() {
+ return selector;
+ }
+
+ public void setSelector(XmlSchemaXPath selector) {
+ this.selector = selector;
+ }
+
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaImport.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaImport.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaImport.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaImport.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * The class to import schema components from any schema.
+ * Represents the World Wide Web Consortium (W3C) import element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaImport extends XmlSchemaExternal {
+
+ /**
+ * Creates new XmlSchemaImport
+ */
+ public XmlSchemaImport() {
+ super();
+ }
+
+ String namespace;
+
+ public String getNamespace() {
+ return this.namespace;
+ }
+
+ public void setNamespace(String namespace) {
+ this.namespace = namespace;
+ }
+
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaInclude.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaInclude.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaInclude.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaInclude.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class to include declarations and definitions from an external schema.
+ * Allows them to be available for processing in the containing schema.
+ * Represents the World Wide Web Consortium (W3C) include element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaInclude extends XmlSchemaExternal {
+
+ /**
+ * Creates new XmlSchemaInclude
+ */
+ public XmlSchemaInclude() {
+ super();
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKey.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKey.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKey.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKey.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Identifies a key constraint. Represents the World Wide Web Consortium
+ * (W3C) key element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaKey extends XmlSchemaIdentityConstraint {
+
+ /**
+ * Creates new XmlSchemaKey
+ */
+ public XmlSchemaKey() {
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKeyref.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKeyref.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKeyref.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaKeyref.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+import javax.xml.namespace.QName;
+
+
+/**
+ * Identifies a keyref constraint. Represents the World Wide Web
+ * Consortium (W3C) keyref element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaKeyref extends XmlSchemaIdentityConstraint {
+
+ /**
+ * Creates new XmlSchemaKeyref
+ */
+ public XmlSchemaKeyref() {
+ }
+
+ QName refer;
+
+ public QName getRefer() {
+ return refer;
+ }
+
+ public void setRefer(QName refer) {
+ this.refer = refer;
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaLengthFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaLengthFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaLengthFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaLengthFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining length facets. Represents the World Wide Web
+ * Consortium (W3C) length facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaLengthFacet extends XmlSchemaNumericFacet {
+
+ /**
+ * Creates new XmlSchemaLengthFacet
+ */
+ public XmlSchemaLengthFacet() {
+ }
+
+ public XmlSchemaLengthFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxExclusiveFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxExclusiveFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxExclusiveFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxExclusiveFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining maxExclusive facets. Represents the World Wide
+ * Web Consortium (W3C) maxExclusive facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaMaxExclusiveFacet extends XmlSchemaFacet {
+
+ /**
+ * Creates new XmlSchemaMaxExclusiveFacet
+ */
+ public XmlSchemaMaxExclusiveFacet() {
+ }
+
+ public XmlSchemaMaxExclusiveFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxInclusiveFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxInclusiveFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxInclusiveFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxInclusiveFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining maxInclusive facets. Represents the World
+ * Wide Web Consortium (W3C) maxInclusive facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaMaxInclusiveFacet extends XmlSchemaFacet {
+
+ /**
+ * Creates new XmlSchemaMaxInclusiveFacet
+ */
+ public XmlSchemaMaxInclusiveFacet() {
+ }
+
+ public XmlSchemaMaxInclusiveFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxLengthFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxLengthFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxLengthFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMaxLengthFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining maxLength facets. Represents the World Wide
+ * Web Consortium (W3C) maxLength facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaMaxLengthFacet extends XmlSchemaNumericFacet {
+
+ /**
+ * Creates new XmlSchemaMaxLengthFacet
+ */
+ public XmlSchemaMaxLengthFacet() {
+ }
+
+ public XmlSchemaMaxLengthFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinExclusiveFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinExclusiveFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinExclusiveFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinExclusiveFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining minExclusive facets. Represents the World
+ * Wide Web Consortium (W3C) minExclusive facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaMinExclusiveFacet extends XmlSchemaFacet {
+
+ /**
+ * Creates new XmlSchemaMinExclusive
+ */
+ public XmlSchemaMinExclusiveFacet() {
+ }
+
+ public XmlSchemaMinExclusiveFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinInclusiveFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinInclusiveFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinInclusiveFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinInclusiveFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining minInclusive facets. Represents the World Wide
+ * Web Consortium (W3C) minInclusive facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaMinInclusiveFacet extends XmlSchemaFacet {
+
+ /**
+ * Creates new XmlSchemaMinInclusive
+ */
+ public XmlSchemaMinInclusiveFacet() {
+ }
+
+ public XmlSchemaMinInclusiveFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinLengthFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinLengthFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinLengthFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaMinLengthFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining minLength facets. Represents the World Wide
+ * Web Consortium (W3C) minLength facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaMinLengthFacet extends XmlSchemaNumericFacet {
+
+ /**
+ * Creates new XmlSchemaMinLengthFacet
+ */
+ public XmlSchemaMinLengthFacet() {
+ }
+
+ public XmlSchemaMinLengthFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNotation.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNotation.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNotation.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNotation.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,64 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class represents a notation. An XML Schema definition language (XSD)
+ * notation declaration is a reconstruction of XML 1.0 NOTATION
+ * declarations. The purpose of notations is to describe the format of
+ * non-XML data within an XML document. Represents the World Wide Web Consortium
+ * (W3C) notation element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaNotation extends XmlSchemaAnnotated {
+
+ String name, system, publicNotation;
+
+ /**
+ * Creates new XmlSchemaNotation
+ */
+ public XmlSchemaNotation() {
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setString(String name) {
+ this.name = name;
+ }
+
+ public String getPublic() {
+ return publicNotation;
+ }
+
+ public void setPublic(String publicNotation) {
+ this.publicNotation = publicNotation;
+ }
+
+ public String getSystem() {
+ return system;
+ }
+
+ public void setSystem(String system) {
+ this.system = system;
+ }
+
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNumericFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNumericFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNumericFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaNumericFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Abstract class for defining numeric facets.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public abstract class XmlSchemaNumericFacet extends XmlSchemaFacet {
+
+ /**
+ * Creates new XmlSchemaNumericFacet
+ */
+ protected XmlSchemaNumericFacet() {
+ }
+
+ protected XmlSchemaNumericFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObject.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObject.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObject.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObject.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,73 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * @author mukund
+ */
+
+// October 15th - momo - initial implementation
+
+public abstract class XmlSchemaObject {
+ int lineNumber;
+ int linePosition;
+ String sourceURI;
+
+ /**
+ * Creates new XmlSchemaObject
+ */
+ protected XmlSchemaObject() {
+ }
+
+ public int getLineNumber() {
+ return lineNumber;
+ }
+
+ public void setLineNumber(int lineNumber) {
+ this.lineNumber = lineNumber;
+ }
+
+ public int getLinePosition() {
+ return linePosition;
+ }
+
+ public void setLinePosition(int linePosition) {
+ this.linePosition = linePosition;
+ }
+
+ public String getSourceURI() {
+ return sourceURI;
+ }
+
+ public void setSourceURI(String sourceURI) {
+ this.sourceURI = sourceURI;
+ }
+
+ public boolean equals(Object what) {
+ // toDO : implement this once everything completed
+ return true;
+ }
+
+ public String toString(String prefix, int tab) {
+ String xml = new String();
+ for (int i = 0; i < tab; i++)
+ xml += "\t";
+
+ xml += this.getClass().toString() + "\n";
+ return xml;
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectCollection.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectCollection.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectCollection.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectCollection.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,86 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+import java.util.Iterator;
+import java.util.Vector;
+
+/**
+ * An object collection class to handle XmlSchemaObjects when collections
+ * are returned from method calls.
+ *
+ * @author mukund
+ */
+public class XmlSchemaObjectCollection {
+
+ Vector objects;
+
+ /**
+ * Creates new XmlSchemaObjectCollection
+ */
+ public XmlSchemaObjectCollection() {
+ objects = new Vector();
+ }
+
+ public int getCount() {
+ return objects.size();
+ }
+
+ public XmlSchemaObject getItem(int i) {
+ return (XmlSchemaObject) objects.elementAt(i);
+ }
+
+ public void setItem(int i, XmlSchemaObject item) {
+ objects.insertElementAt(item, i);
+ }
+
+ public void add(XmlSchemaObject item) {
+ objects.addElement(item);
+ }
+
+ public boolean contains(XmlSchemaObject item) {
+ return objects.contains(item);
+ }
+
+ public int indexOf(XmlSchemaObject item) {
+ return objects.indexOf(item);
+ }
+
+ public void remove(XmlSchemaObject item) {
+ objects.remove(item);
+ }
+
+ public void removeAt(int index) {
+ objects.removeElementAt(index);
+ }
+
+ public Iterator getIterator() {
+ return objects.iterator();
+ }
+
+ public String toString(String prefix, int tab) {
+ String xml = new String();
+
+ for (int i = 0; i < getCount(); i++) {
+ xml += getItem(i).toString(prefix, tab);
+ }
+
+
+ return xml;
+
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectEnumerator.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectEnumerator.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectEnumerator.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectEnumerator.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * An enumerator class to walk the XmlSchemaObjectCollection collections.
+ *
+ * @author mukund
+ */
+public class XmlSchemaObjectEnumerator {
+
+ /**
+ * Creates new XmlSchemaObjectEnumerator
+ */
+ public XmlSchemaObjectEnumerator() {
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectTable.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectTable.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectTable.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaObjectTable.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,69 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+import javax.xml.namespace.QName;
+import java.util.HashMap;
+import java.util.Iterator;
+
+/**
+ * A collection class that provides read-only helpers for XmlSchemaObject
+ * objects. This class is used to provide the collections for contained
+ * elements that are within the schema as collections that are accessed
+ * from the XmlSchema class (for example, Attributes, AttributeGroups,
+ * Elements, and so on).
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 17th Oct - initial implementation
+
+public class XmlSchemaObjectTable {
+
+ HashMap collection;
+
+ /**
+ * Creates new XmlSchemaObjectTable
+ */
+ public XmlSchemaObjectTable() {
+ this.collection = new HashMap();
+ }
+
+ public int getCount() {
+ return this.collection.size();
+ }
+
+ public XmlSchemaObject getItem(QName name) {
+ return (XmlSchemaObject) collection.get(name);
+ }
+
+ public Iterator getNames() {
+ return collection.keySet().iterator();
+ }
+
+ public Iterator getValues() {
+ return collection.values().iterator();
+ }
+
+ public boolean contains(QName name) {
+ return collection.containsKey(name);
+ }
+
+ public void add(QName name, XmlSchemaObject value) {
+ collection.put(name, value);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaParticle.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaParticle.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaParticle.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaParticle.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Base class for all particle types.
+ *
+ * @author mukund
+ */
+
+// October 15th - momo - initial implementation
+
+public class XmlSchemaParticle extends XmlSchemaAnnotated {
+
+ long maxOccurs = 1;
+ String maxOccursString;
+ long minOccurs = 1;
+ String minOccursString;
+
+ /**
+ * Creates new XmlSchemaParticle
+ * Particle types are usually interchangeable.
+ * A local element declaration or reference to a global element
+ * declaration (element), a compositor ( sequence, choice, or all),
+ * a reference to a named content model group (group), or an element wildcard (any).
+ */
+ public XmlSchemaParticle() {
+ }
+
+ public void setMaxOccurs(long maxOccurs) {
+ this.maxOccurs = maxOccurs;
+ }
+
+ public long getMaxOccurs() {
+ return maxOccurs;
+ }
+
+ public void setMinOccurs(long minOccurs) {
+ this.minOccurs = minOccurs;
+ }
+
+ public long getMinOccurs() {
+ return minOccurs;
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaPatternFacet.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaPatternFacet.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaPatternFacet.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaPatternFacet.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Class for defining pattern facets. Represents the World Wide
+ * Web Consortium (W3C) pattern facet.
+ *
+ * @author mukund
+ */
+
+// Vidyanand - 16th Oct - initial implementation
+
+public class XmlSchemaPatternFacet extends XmlSchemaFacet {
+
+ /**
+ * Creates new XmlSchemaPatternFacet
+ */
+ public XmlSchemaPatternFacet() {
+ }
+
+ public XmlSchemaPatternFacet(Object value, boolean fixed) {
+ super(value, fixed);
+ }
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaRedefine.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaRedefine.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaRedefine.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaRedefine.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,57 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Allows simple and complex types, groups, and attribute groups from
+ * external schema files to be redefined in the current schema. This
+ * class provides versioning for the schema elements. Represents the
+ * World Wide Web Consortium (W3C) redefine element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaRedefine extends XmlSchemaExternal {
+
+ /**
+ * Creates new XmlSchemaRedefine
+ */
+ public XmlSchemaRedefine() {
+ items = new XmlSchemaObjectCollection();
+ }
+
+ XmlSchemaObjectTable attributeGroups, groups, schemaTypes;
+
+ public XmlSchemaObjectTable getAttributeGroup() {
+ return attributeGroups;
+ }
+
+ public XmlSchemaObjectTable getGroup() {
+ return groups;
+ }
+
+ XmlSchemaObjectCollection items;
+
+ public XmlSchemaObjectCollection getItems() {
+ return items;
+ }
+
+ public XmlSchemaObjectTable getSchemaTypes() {
+ return schemaTypes;
+ }
+
+}
Added: webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaSequence.java
URL: http://svn.apache.org/viewcvs/webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaSequence.java?rev=290580&view=auto
==============================================================================
--- webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaSequence.java (added)
+++ webservices/commons/trunk/XmlSchema/src/org/apache/ws/commons/schema/XmlSchemaSequence.java Tue Sep 20 15:55:02 2005
@@ -0,0 +1,62 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ws.commons.schema;
+
+/**
+ * Requires the elements in the group to appear in the specified sequence
+ * within the containing element. Represents the World Wide Web Consortium
+ * (W3C) sequence (compositor) element.
+ *
+ * @author mukund
+ */
+
+public class XmlSchemaSequence extends XmlSchemaGroupBase {
+
+ /**
+ * Creates new XmlSchemaSequence
+ */
+ public XmlSchemaSequence() {
+ }
+
+ /**
+ * The elements contained within the compositor.
+ * Collection of XmlSchemaElement, XmlSchemaGroupRef,
+ * XmlSchemaChoice, XmlSchemaSequence, or XmlSchemaAny.
+ */
+ public XmlSchemaObjectCollection getItems() {
+ return items;
+ }
+
+ public String toString(String prefix, int tab) {
+ String xml = new String();
+ for (int i = 0; i < tab; i++)
+ xml += "\t";
+ if (!prefix.equals("") && prefix.indexOf(":") == -1)
+ prefix += ":";
+
+ xml += "<" + prefix + "sequence>\n";
+ for (int i = 0; i < items.getCount(); i++) {
+ xml += items.getItem(i).toString(prefix, (tab + 1));
+ }
+
+ for (int i = 0; i < tab; i++)
+ xml += "\t";
+
+ xml += "</" + prefix + "sequence>\n";
+ return xml;
+ }
+}