Revision 1050

View differences:

org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/XMLSchemaManager.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
5
 * 
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 * 
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 * 
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
19
 * MA  02110-1301, USA.
20
 * 
21
 */
22

  
23
/*
24
 * AUTHORS (In addition to CIT):
25
 * 2010 {Iver T.I.}   {Task}
26
 */
27

  
28
package org.gvsig.xmlschema.lib.api;
29

  
30
import java.io.InputStream;
31

  
32
import org.gvsig.xmlschema.lib.api.exceptions.SchemaCreationException;
33
import org.gvsig.xmlschema.lib.api.som.IXSSchema;
34
import org.gvsig.xmlschema.lib.api.som.IXSTypeDefinition;
35

  
36
/**
37
 * @author <a href="mailto:jpiera@gvsig.org">Jorge Piera</a>
38
 */
39
public interface XMLSchemaManager{
40
	public final static int GEOMETRY = 0;
41
	public final static int POINT = 1;
42
	public final static int LINESTRING = 2;
43
	public final static int POLYGON = 3;
44
	public final static int SOLID = 4;
45
	public final static int MULTIGEOMETRY = 6;
46
	public final static int MULTIPOINT = 7;
47
	public final static int MULTILINESTRING = 8;
48
	public final static int MULTIPOLYGON = 9;
49
	public final static int MULTISOLID = 10;
50

  
51
	public IXSSchema createXSSchema(String providerName, String namespaceURI, String namespacePrefix) throws SchemaCreationException;
52
	
53
	public IXSSchema parse(String providerName, InputStream is) throws SchemaCreationException;
54
	
55
	public void registerFormat(String mimeType, String format);
56

  
57
	public String getFormat(String mimeType);	
58

  
59
	public Object getApplicationDataTypeByFormat(String format, Object parserDataType);
60

  
61
	public Object getParserDataTypeByFormat(String format, Object applicationDataType);
62

  
63
	public Object getApplicationDataTypeByMimeType(String mimeType, Object parserDataType);
64

  
65
	public Object getParserDataTypeByMimeType(String mimeType, Object applicationDataType);
66

  
67
	public Object getApplicationGeometryTypeByFormat(String format, Object parserGeometryType);
68

  
69
	public Object getParserGeometryTypeByFormat(String format, Object applicationGeometry);
70

  
71
	public Object getApplicationGeometryTypeByMimeType(String mimeType, Object parserGeometryType);
72

  
73
	public Object getParserGeometryTypeByMimeType(String mimeType, Object applicationGeometry);	
74

  
75
	public void addParserGeometryType(String format, Object parserGeometryType, int gpeGeometryType);
76

  
77
	public void addParserDataType(String format, Object parserDataType, int gpeDataType);
78
	
79
	public void addParserDataType(Object parserDataType, int gpeDataType);
80

  
81
	public void registerAppGeometryType(Object appGeometrytype, int gpeGeometryType);
82

  
83
	public void registerAppDataType(Object appDataType, int gpeDataType);
84

  
85
	public void registerAppGeometryType(int appGeometrytype, int gpeGeometryType);
86

  
87
	public void registerAppDataType(int appDataType, int gpeDataType);
88
	
89
	public IXSTypeDefinition getTypeDefinition(String typeName);
90
	
91
	public IXSTypeDefinition getTypeDefinition(String format, String typeName);
92
}
93

  
94

  
0 95

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSAll.java
1
package org.gvsig.xmlschema.lib.api.som;
2
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
3
 *
4
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
19
 *
20
 * For more information, contact:
21
 *
22
 *  Generalitat Valenciana
23
 *   Conselleria d'Infraestructures i Transport
24
 *   Av. Blasco Ib??ez, 50
25
 *   46010 VALENCIA
26
 *   SPAIN
27
 *
28
 *      +34 963862235
29
 *   gvsig@gva.es
30
 *      www.gvsig.gva.es
31
 *
32
 *    or
33
 *
34
 *   IVER T.I. S.A
35
 *   Salamanca 50
36
 *   46005 Valencia
37
 *   Spain
38
 *
39
 *   +34 963163400
40
 *   dac@iver.es
41
 */
42
/* CVS MESSAGES:
43
 *
44
 * $Id: IXSAll.java 151 2007-06-14 16:15:05Z jorpiell $
45
 * $Log$
46
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
47
 * builds to create the jars generated and add the schema code to the libGPEProject
48
 *
49
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
50
 * The schema jar name has been changed
51
 *
52
 * Revision 1.1  2007/06/07 14:54:13  jorpiell
53
 * Add the schema support
54
 *
55
 *
56
 */
57
/**
58
 * This interface represents a XML schema all element. 
59
 * Example:
60
 * <p>
61
 * <pre>
62
 * <code>
63
 * &lt;all
64
 *  id = ID
65
 * maxOccurs = 1 : 1
66
 * minOccurs = (0 | 1) : 1
67
 * {any attributes with non-schema namespace . . .}>
68
 * Content: (annotation?, element*)
69
 * &gt;/all&gt;
70
 * </code>
71
 * </pre>
72
 * </p> 
73
 * @see http://www.w3.org/TR/xmlschema-1/#element-sequence
74
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
75
 */
76
public interface IXSAll extends IXSGroup{
77

  
78
}
0 79

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSSequence.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3

  
4
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
5
 *
6
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
7
 *
8
 * This program is free software; you can redistribute it and/or
9
 * modify it under the terms of the GNU General Public License
10
 * as published by the Free Software Foundation; either version 2
11
 * of the License, or (at your option) any later version.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU General Public License
19
 * along with this program; if not, write to the Free Software
20
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
21
 *
22
 * For more information, contact:
23
 *
24
 *  Generalitat Valenciana
25
 *   Conselleria d'Infraestructures i Transport
26
 *   Av. Blasco Ib??ez, 50
27
 *   46010 VALENCIA
28
 *   SPAIN
29
 *
30
 *      +34 963862235
31
 *   gvsig@gva.es
32
 *      www.gvsig.gva.es
33
 *
34
 *    or
35
 *
36
 *   IVER T.I. S.A
37
 *   Salamanca 50
38
 *   46005 Valencia
39
 *   Spain
40
 *
41
 *   +34 963163400
42
 *   dac@iver.es
43
 */
44
/* CVS MESSAGES:
45
 *
46
 * $Id: IXSSequence.java 151 2007-06-14 16:15:05Z jorpiell $
47
 * $Log$
48
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
49
 * builds to create the jars generated and add the schema code to the libGPEProject
50
 *
51
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
52
 * The schema jar name has been changed
53
 *
54
 * Revision 1.3  2007/06/07 14:54:13  jorpiell
55
 * Add the schema support
56
 *
57
 * Revision 1.2  2007/05/30 12:25:48  jorpiell
58
 * Add the element collection
59
 *
60
 * Revision 1.1  2007/05/25 11:55:00  jorpiell
61
 * First update
62
 *
63
 *
64
 */
65
/**
66
 * This interface represents a XML schema sequence element. 
67
 * Example:
68
 * <p>
69
 * <pre>
70
 * <code>
71
 * &lt;sequence
72
 * id = ID
73
 * maxOccurs = (nonNegativeInteger | unbounded)  : 1
74
 * minOccurs = nonNegativeInteger : 1
75
 * {any attributes with non-schema namespace . . .}&gt;
76
 * Content: (annotation?, (element | group | choice | sequence | any)*)
77
 * &gt;/sequence&gt;
78
 * </code>
79
 * </pre>
80
 * </p> 
81
 * @see http://www.w3.org/TR/xmlschema-1/#element-sequence
82
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
83
 */
84
public interface IXSSequence extends IXSGroup {
85

  
86
	
87
}
0 88

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSExtension.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3

  
4
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
5
 *
6
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
7
 *
8
 * This program is free software; you can redistribute it and/or
9
 * modify it under the terms of the GNU General Public License
10
 * as published by the Free Software Foundation; either version 2
11
 * of the License, or (at your option) any later version.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU General Public License
19
 * along with this program; if not, write to the Free Software
20
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
21
 *
22
 * For more information, contact:
23
 *
24
 *  Generalitat Valenciana
25
 *   Conselleria d'Infraestructures i Transport
26
 *   Av. Blasco Ib??ez, 50
27
 *   46010 VALENCIA
28
 *   SPAIN
29
 *
30
 *      +34 963862235
31
 *   gvsig@gva.es
32
 *      www.gvsig.gva.es
33
 *
34
 *    or
35
 *
36
 *   IVER T.I. S.A
37
 *   Salamanca 50
38
 *   46005 Valencia
39
 *   Spain
40
 *
41
 *   +34 963163400
42
 *   dac@iver.es
43
 */
44
/* CVS MESSAGES:
45
 *
46
 * $Id: IXSExtension.java 151 2007-06-14 16:15:05Z jorpiell $
47
 * $Log$
48
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
49
 * builds to create the jars generated and add the schema code to the libGPEProject
50
 *
51
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
52
 * The schema jar name has been changed
53
 *
54
 * Revision 1.2  2007/05/30 12:25:48  jorpiell
55
 * Add the element collection
56
 *
57
 * Revision 1.1  2007/05/25 11:55:00  jorpiell
58
 * First update
59
 *
60
 *
61
 */
62
/**
63
 * This interface represents a XML schema extension element. 
64
 * Example:
65
 * <p>
66
 * <pre>
67
 * <code>
68
 * &lt;extension
69
 * base = QName
70
 * id = ID
71
 * {any attributes with non-schema namespace . . .}&gt;
72
 * Content: (annotation?, ((attribute | attributeGroup)*, anyAttribute?))
73
 * &lt;/extensiont&gt;
74
 * </code>
75
 * </pre>
76
 * </p> 
77
 * @see http://www.w3.org/TR/xmlschema-1/#Complex_Type_Definition_details
78
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
79
 */
80
public interface IXSExtension extends IXSComponent{
81
    
82
        public IXSGroup getGroup();
83
}
0 84

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSContentType.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
import org.gvsig.xmlschema.lib.api.utils.SchemaTags;
4

  
5

  
6
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
7
 *
8
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
9
 *
10
 * This program is free software; you can redistribute it and/or
11
 * modify it under the terms of the GNU General Public License
12
 * as published by the Free Software Foundation; either version 2
13
 * of the License, or (at your option) any later version.
14
 *
15
 * This program is distributed in the hope that it will be useful,
16
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18
 * GNU General Public License for more details.
19
 *
20
 * You should have received a copy of the GNU General Public License
21
 * along with this program; if not, write to the Free Software
22
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
23
 *
24
 * For more information, contact:
25
 *
26
 *  Generalitat Valenciana
27
 *   Conselleria d'Infraestructures i Transport
28
 *   Av. Blasco Ib??ez, 50
29
 *   46010 VALENCIA
30
 *   SPAIN
31
 *
32
 *      +34 963862235
33
 *   gvsig@gva.es
34
 *      www.gvsig.gva.es
35
 *
36
 *    or
37
 *
38
 *   IVER T.I. S.A
39
 *   Salamanca 50
40
 *   46005 Valencia
41
 *   Spain
42
 *
43
 *   +34 963163400
44
 *   dac@iver.es
45
 */
46
/* CVS MESSAGES:
47
 *
48
 * $Id: IXSContentType.java 157 2007-06-22 12:22:53Z jorpiell $
49
 * $Log$
50
 * Revision 1.2  2007/06/22 12:20:48  jorpiell
51
 * The typeNotFoundException has been deleted. It never was thrown
52
 *
53
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
54
 * builds to create the jars generated and add the schema code to the libGPEProject
55
 *
56
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
57
 * The schema jar name has been changed
58
 *
59
 * Revision 1.2  2007/06/08 11:35:16  jorpiell
60
 * IXSSchema interface updated
61
 *
62
 * Revision 1.1  2007/06/07 14:54:13  jorpiell
63
 * Add the schema support
64
 *
65
 *
66
 */
67
/**
68
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
69
 */
70
public interface IXSContentType extends IXSComponent{
71
	public static final String WITOUT_CONTENT = "N";
72
	public static final String COMPLEX_CONTENT = SchemaTags.COMPLEX_CONTENT;
73
	public static final String SIMPLE_CONTENT = SchemaTags.SIMPLE_CONTENT;
74
	//restrictions
75
	public static final String WITOUT_RESTRICTION = "N";
76
	public static final String EXTENSION = SchemaTags.EXTENSION;
77
	public static final String RESTRICTION = SchemaTags.RESTRICTION;
78
	
79
	/**
80
	 * @return the content type restriction
81
	 */
82
	public IXSRestriction getRestriction();
83
	
84
	/**
85
	 * @returnm the content type extension
86
	 */
87
	public IXSExtension getExtension();
88
}
0 89

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSDocument.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3

  
4
/* gvSIG. Geographic Information System of the Valencian Government
5
*
6
* Copyright (C) 2007-2008 Infrastructures and Transports Department
7
* of the Valencian Government (CIT)
8
* 
9
* This program is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public License
11
* as published by the Free Software Foundation; either version 2
12
* of the License, or (at your option) any later version.
13
* 
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
* GNU General Public License for more details.
18
* 
19
* You should have received a copy of the GNU General Public License
20
* along with this program; if not, write to the Free Software
21
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
22
* MA  02110-1301, USA.
23
* 
24
*/
25

  
26
/*
27
* AUTHORS (In addition to CIT):
28
* 2010 {Prodevelop T.I.}   {Task}
29
*/
30

  
31
public interface IXSDocument {
32

  
33
	public IXSElement getDocumentElement();
34

  
35
	public IXSElement createElement(String addXSQname);
36

  
37
}
0 38

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSNodeList.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
/* gvSIG. Geographic Information System of the Valencian Government
4
*
5
* Copyright (C) 2007-2008 Infrastructures and Transports Department
6
* of the Valencian Government (CIT)
7
* 
8
* This program is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License
10
* as published by the Free Software Foundation; either version 2
11
* of the License, or (at your option) any later version.
12
* 
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
* GNU General Public License for more details.
17
* 
18
* You should have received a copy of the GNU General Public License
19
* along with this program; if not, write to the Free Software
20
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
21
* MA  02110-1301, USA.
22
* 
23
*/
24

  
25
/*
26
* AUTHORS (In addition to CIT):
27
* 2010 {Prodevelop T.I.}   {Task}
28
*/
29

  
30
public interface IXSNodeList {
31

  
32
	public int getLength();
33

  
34
	public IXSNode item(int i);
35

  
36

  
37
}
0 38

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSComplexTypeDefinition.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
import java.util.Collection;
4

  
5
import org.gvsig.xmlschema.lib.api.utils.SchemaTags;
6

  
7

  
8
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
9
 *
10
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
11
 *
12
 * This program is free software; you can redistribute it and/or
13
 * modify it under the terms of the GNU General Public License
14
 * as published by the Free Software Foundation; either version 2
15
 * of the License, or (at your option) any later version.
16
 *
17
 * This program is distributed in the hope that it will be useful,
18
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20
 * GNU General Public License for more details.
21
 *
22
 * You should have received a copy of the GNU General Public License
23
 * along with this program; if not, write to the Free Software
24
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
25
 *
26
 * For more information, contact:
27
 *
28
 *  Generalitat Valenciana
29
 *   Conselleria d'Infraestructures i Transport
30
 *   Av. Blasco Ib??ez, 50
31
 *   46010 VALENCIA
32
 *   SPAIN
33
 *
34
 *      +34 963862235
35
 *   gvsig@gva.es
36
 *      www.gvsig.gva.es
37
 *
38
 *    or
39
 *
40
 *   IVER T.I. S.A
41
 *   Salamanca 50
42
 *   46005 Valencia
43
 *   Spain
44
 *
45
 *   +34 963163400
46
 *   dac@iver.es
47
 */
48
/* CVS MESSAGES:
49
 *
50
 * $Id: IXSComplexTypeDefinition.java 157 2007-06-22 12:22:53Z jorpiell $
51
 * $Log$
52
 * Revision 1.2  2007/06/22 12:20:48  jorpiell
53
 * The typeNotFoundException has been deleted. It never was thrown
54
 *
55
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
56
 * builds to create the jars generated and add the schema code to the libGPEProject
57
 *
58
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
59
 * The schema jar name has been changed
60
 *
61
 * Revision 1.4  2007/06/08 11:35:16  jorpiell
62
 * IXSSchema interface updated
63
 *
64
 * Revision 1.3  2007/06/07 14:54:13  jorpiell
65
 * Add the schema support
66
 *
67
 * Revision 1.2  2007/05/30 12:25:48  jorpiell
68
 * Add the element collection
69
 *
70
 * Revision 1.1  2007/05/25 11:55:00  jorpiell
71
 * First update
72
 *
73
 *
74
 */
75
/**
76
 * This interface represents a XML schema complex type element. 
77
 * Example:
78
 * <p>
79
 * <pre>
80
 * <code>
81
 * &lt;complexType
82
 * abstract = boolean : false
83
 * block = (#all | List of (extension | restriction))
84
 * final = (#all | List of (extension | restriction))
85
 * id = ID
86
 * mixed = boolean : false
87
 * name = NCName
88
 * {any attributes with non-schema namespace . . .}&gt;
89
 * Content: (annotation?, (simpleContent | complexContent | ((group | all | choice | sequence)?, ((attribute | attributeGroup)*, anyAttribute?))))
90
 * &lt;/complexType&gt;
91
 * </code>
92
 * </pre>
93
 * </p> 
94
 * @see http://www.w3.org/TR/xmlschema-1/#Complex_Type_Definition_details
95
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
96
 */
97
public interface IXSComplexTypeDefinition extends IXSTypeDefinition {
98
	public static final String SEQUENCE = SchemaTags.SEQUENCE;
99
	public static final String CHOICE = SchemaTags.CHOICE;
100
	public static final String ALL = SchemaTags.ALL;
101
	public static final String GROUP = SchemaTags.GROUP;		
102
		
103
	/**
104
	 * Add a element to the complex type
105
	 * @param name
106
	 * Element name
107
	 * @param typeName
108
	 * Element type name
109
	 * @param nillable
110
	 * If is nillable
111
	 * @param minOccurs
112
	 * The minimum numebr of elements
113
	 * @param maxOccurs
114
	 * The maximum numbre of elements
115
	 * @return
116
	 * The XML schema element
117
	 */
118
	public IXSElementDeclaration addElement(String name, String typeName, boolean nillable, int minOccurs, int maxOccurs);
119
	
120
	/**
121
	 * Add a element to the complex type
122
	 * @param name
123
	 * Element name
124
	 * @param typeName
125
	 * Element type name
126
	 * @return
127
	 * The XML schema element
128
	 */
129
	public IXSElementDeclaration addElement(String name, String typeName);
130
	
131
	/**
132
	 * @return the content type (simple or complex)
133
	 */
134
	public IXSContentType getContentType();
135
	
136
	/**
137
	 @return the group elements. Can be a group, a 
138
	 sequence, a choice or a all
139
	 */
140
	public IXSGroup getGroup();
141
	
142
	public Collection getItems();
143
}
0 144

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSSimpleContent.java
1
package org.gvsig.xmlschema.lib.api.som;
2
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
3
 *
4
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
19
 *
20
 * For more information, contact:
21
 *
22
 *  Generalitat Valenciana
23
 *   Conselleria d'Infraestructures i Transport
24
 *   Av. Blasco Ib??ez, 50
25
 *   46010 VALENCIA
26
 *   SPAIN
27
 *
28
 *      +34 963862235
29
 *   gvsig@gva.es
30
 *      www.gvsig.gva.es
31
 *
32
 *    or
33
 *
34
 *   IVER T.I. S.A
35
 *   Salamanca 50
36
 *   46005 Valencia
37
 *   Spain
38
 *
39
 *   +34 963163400
40
 *   dac@iver.es
41
 */
42
/* CVS MESSAGES:
43
 *
44
 * $Id: IXSSimpleContent.java 151 2007-06-14 16:15:05Z jorpiell $
45
 * $Log$
46
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
47
 * builds to create the jars generated and add the schema code to the libGPEProject
48
 *
49
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
50
 * The schema jar name has been changed
51
 *
52
 * Revision 1.1  2007/06/07 14:54:13  jorpiell
53
 * Add the schema support
54
 *
55
 *
56
 */
57
/**
58
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
59
 */
60
public interface IXSSimpleContent extends IXSContentType {
61

  
62
}
0 63

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSNode.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
4
 *
5
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
6
 *
7
 * This program is free software; you can redistribute it and/or
8
 * modify it under the terms of the GNU General Public License
9
 * as published by the Free Software Foundation; either version 2
10
 * of the License, or (at your option) any later version.
11
 *
12
 * This program is distributed in the hope that it will be useful,
13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
 * GNU General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU General Public License
18
 * along with this program; if not, write to the Free Software
19
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
20
 *
21
 * For more information, contact:
22
 *
23
 *  Generalitat Valenciana
24
 *   Conselleria d'Infraestructures i Transport
25
 *   Av. Blasco Ib??ez, 50
26
 *   46010 VALENCIA
27
 *   SPAIN
28
 *
29
 *      +34 963862235
30
 *   gvsig@gva.es
31
 *      www.gvsig.gva.es
32
 *
33
 *    or
34
 *
35
 *   IVER T.I. S.A
36
 *   Salamanca 50
37
 *   46005 Valencia
38
 *   Spain
39
 *
40
 *   +34 963163400
41
 *   dac@iver.es
42
 */
43
/* CVS MESSAGES:
44
 *
45
 * $Id: IXSNode.java 151 2007-06-14 16:15:05Z jorpiell $
46
 * $Log$
47
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
48
 * builds to create the jars generated and add the schema code to the libGPEProject
49
 *
50
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
51
 * The schema jar name has been changed
52
 *
53
 * Revision 1.2  2007/05/30 12:25:48  jorpiell
54
 * Add the element collection
55
 *
56
 * Revision 1.1  2007/05/25 11:55:00  jorpiell
57
 * First update
58
 *
59
 *
60
 */
61
/**
62
 * This interface must to be implemented by all the
63
 * schema elements. It has methods to manage the 
64
 * DOM tree.
65
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
66
 */
67
public interface IXSNode {
68
	
69
	public IXSElement getElement();
70
	
71
	public void setElement(IXSElement element);
72

  
73
	public short getNodeType();
74

  
75
	public String getNodeName();
76

  
77
	public String getNodeValue();
78
}
0 79

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/XSQName.java
1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
5
 *
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 *
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 *
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
 * MA  02110-1301, USA.
20
 *
21
 */
22
package org.gvsig.xmlschema.lib.api.som;
23

  
24
import org.gvsig.xmlpull.lib.api.stream.IQName;
25

  
26

  
27
/**
28
 * @author gvSIG Team
29
 * @version $Id$
30
 *
31
 */
32
public class XSQName implements IQName{
33
    private String attributeNamespace;
34
    private String attributeName;
35
    
36
    public XSQName(String attributeNamespace, String attributeName) {
37
        this.attributeNamespace = attributeNamespace;
38
        this.attributeName = attributeName;
39
    }
40
    
41
    public XSQName(String attributeName) {  
42
        this.attributeName = attributeName;
43
    }
44

  
45
    public String getLocalPart() {
46
        return attributeName;
47
    }
48

  
49
    public String getNamespaceURI() {
50
        return attributeNamespace;
51
    }
52

  
53
}
0 54

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSNamedNodeMap.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
/* gvSIG. Geographic Information System of the Valencian Government
4
*
5
* Copyright (C) 2007-2008 Infrastructures and Transports Department
6
* of the Valencian Government (CIT)
7
* 
8
* This program is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License
10
* as published by the Free Software Foundation; either version 2
11
* of the License, or (at your option) any later version.
12
* 
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
* GNU General Public License for more details.
17
* 
18
* You should have received a copy of the GNU General Public License
19
* along with this program; if not, write to the Free Software
20
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
21
* MA  02110-1301, USA.
22
* 
23
*/
24

  
25
/*
26
* AUTHORS (In addition to CIT):
27
* 2010 {Prodevelop T.I.}   {Task}
28
*/
29

  
30
public interface IXSNamedNodeMap {
31

  
32
	public int getLength();
33

  
34
	public IXSNode item(int i);
35

  
36
}
0 37

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSElement.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
/* gvSIG. Geographic Information System of the Valencian Government
4
*
5
* Copyright (C) 2007-2008 Infrastructures and Transports Department
6
* of the Valencian Government (CIT)
7
* 
8
* This program is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public License
10
* as published by the Free Software Foundation; either version 2
11
* of the License, or (at your option) any later version.
12
* 
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
* GNU General Public License for more details.
17
* 
18
* You should have received a copy of the GNU General Public License
19
* along with this program; if not, write to the Free Software
20
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
21
* MA  02110-1301, USA.
22
* 
23
*/
24

  
25
/*
26
* AUTHORS (In addition to CIT):
27
* 2010 {Prodevelop T.I.}   {Task}
28
*/
29

  
30
public interface IXSElement {
31

  
32
	public void appendChild(IXSElement element);
33

  
34
	public String getAttribute(String targetNamespace);
35

  
36
	public IXSNodeList getChildNodes();
37

  
38
	public void removeChild(IXSNode item);
39

  
40
	public void removeAttribute(String type);
41

  
42
	public void setAttribute(String name, String name2);
43

  
44
	public IXSNamedNodeMap getAttributes();
45

  
46
}
0 47

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSTypeDefinition.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
import org.gvsig.tools.dataTypes.DataType;
4

  
5
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
6
 *
7
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
8
 *
9
 * This program is free software; you can redistribute it and/or
10
 * modify it under the terms of the GNU General Public License
11
 * as published by the Free Software Foundation; either version 2
12
 * of the License, or (at your option) any later version.
13
 *
14
 * This program is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 * GNU General Public License for more details.
18
 *
19
 * You should have received a copy of the GNU General Public License
20
 * along with this program; if not, write to the Free Software
21
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
22
 *
23
 * For more information, contact:
24
 *
25
 *  Generalitat Valenciana
26
 *   Conselleria d'Infraestructures i Transport
27
 *   Av. Blasco Ib??ez, 50
28
 *   46010 VALENCIA
29
 *   SPAIN
30
 *
31
 *      +34 963862235
32
 *   gvsig@gva.es
33
 *      www.gvsig.gva.es
34
 *
35
 *    or
36
 *
37
 *   IVER T.I. S.A
38
 *   Salamanca 50
39
 *   46005 Valencia
40
 *   Spain
41
 *
42
 *   +34 963163400
43
 *   dac@iver.es
44
 */
45
/* CVS MESSAGES:
46
 *
47
 * $Id: IXSTypeDefinition.java 151 2007-06-14 16:15:05Z jorpiell $
48
 * $Log$
49
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
50
 * builds to create the jars generated and add the schema code to the libGPEProject
51
 *
52
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
53
 * The schema jar name has been changed
54
 *
55
 * Revision 1.3  2007/06/07 14:54:13  jorpiell
56
 * Add the schema support
57
 *
58
 * Revision 1.2  2007/05/30 12:25:48  jorpiell
59
 * Add the element collection
60
 *
61
 * Revision 1.1  2007/05/25 11:55:00  jorpiell
62
 * First update
63
 *
64
 *
65
 */
66
/**
67
 * This interface represents a XML schema type. It contains
68
 * common methods to the simple and complex types.
69
 * @see http://www.w3.org/TR/xmlschema-2
70
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
71
 */
72
public interface IXSTypeDefinition extends IXSComponent{
73

  
74
	public String getTypeName();
75
		   
76
    public DataType getDataType();
77
    
78
    public boolean isGeometry();
79
    
80
    public boolean isComplex();
81

  
82
}
0 83

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSChoice.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3

  
4
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
5
 *
6
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
7
 *
8
 * This program is free software; you can redistribute it and/or
9
 * modify it under the terms of the GNU General Public License
10
 * as published by the Free Software Foundation; either version 2
11
 * of the License, or (at your option) any later version.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
 * GNU General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU General Public License
19
 * along with this program; if not, write to the Free Software
20
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
21
 *
22
 * For more information, contact:
23
 *
24
 *  Generalitat Valenciana
25
 *   Conselleria d'Infraestructures i Transport
26
 *   Av. Blasco Ib??ez, 50
27
 *   46010 VALENCIA
28
 *   SPAIN
29
 *
30
 *      +34 963862235
31
 *   gvsig@gva.es
32
 *      www.gvsig.gva.es
33
 *
34
 *    or
35
 *
36
 *   IVER T.I. S.A
37
 *   Salamanca 50
38
 *   46005 Valencia
39
 *   Spain
40
 *
41
 *   +34 963163400
42
 *   dac@iver.es
43
 */
44
/* CVS MESSAGES:
45
 *
46
 * $Id: IXSChoice.java 151 2007-06-14 16:15:05Z jorpiell $
47
 * $Log$
48
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
49
 * builds to create the jars generated and add the schema code to the libGPEProject
50
 *
51
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
52
 * The schema jar name has been changed
53
 *
54
 * Revision 1.4  2007/06/07 14:54:13  jorpiell
55
 * Add the schema support
56
 *
57
 * Revision 1.3  2007/05/30 12:53:33  jorpiell
58
 * Not used libraries deleted
59
 *
60
 * Revision 1.2  2007/05/30 12:25:48  jorpiell
61
 * Add the element collection
62
 *
63
 * Revision 1.1  2007/05/25 11:55:00  jorpiell
64
 * First update
65
 *
66
 *
67
 */
68
/**
69
 * This interface represents a XML schema choice element. 
70
 * Example:
71
 * <p>
72
 * <pre>
73
 * <code>
74
 * &lt;choice
75
 * id = ID
76
 * maxOccurs = (nonNegativeInteger | unbounded)  : 1
77
 * minOccurs = nonNegativeInteger : 1
78
 * {any attributes with non-schema namespace . . .}&gt;
79
 * Content: (annotation?, (element | group | choice | sequence | any)*)
80
 * &lt;/choice&gt;
81
 * </code>
82
 * </pre>
83
 * </p> 
84
 * @see http://www.w3.org/TR/xmlschema-1/#element-choice
85
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
86
 */
87
public interface IXSChoice extends IXSGroup {
88

  
89
	
90
}
0 91

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSGroup.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
import java.util.Collection;
4

  
5
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
6
 *
7
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
8
 *
9
 * This program is free software; you can redistribute it and/or
10
 * modify it under the terms of the GNU General Public License
11
 * as published by the Free Software Foundation; either version 2
12
 * of the License, or (at your option) any later version.
13
 *
14
 * This program is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 * GNU General Public License for more details.
18
 *
19
 * You should have received a copy of the GNU General Public License
20
 * along with this program; if not, write to the Free Software
21
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
22
 *
23
 * For more information, contact:
24
 *
25
 *  Generalitat Valenciana
26
 *   Conselleria d'Infraestructures i Transport
27
 *   Av. Blasco Ib??ez, 50
28
 *   46010 VALENCIA
29
 *   SPAIN
30
 *
31
 *      +34 963862235
32
 *   gvsig@gva.es
33
 *      www.gvsig.gva.es
34
 *
35
 *    or
36
 *
37
 *   IVER T.I. S.A
38
 *   Salamanca 50
39
 *   46005 Valencia
40
 *   Spain
41
 *
42
 *   +34 963163400
43
 *   dac@iver.es
44
 */
45
/* CVS MESSAGES:
46
 *
47
 * $Id: IXSGroup.java 151 2007-06-14 16:15:05Z jorpiell $
48
 * $Log$
49
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
50
 * builds to create the jars generated and add the schema code to the libGPEProject
51
 *
52
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
53
 * The schema jar name has been changed
54
 *
55
 * Revision 1.2  2007/06/07 14:54:13  jorpiell
56
 * Add the schema support
57
 *
58
 * Revision 1.1  2007/05/30 12:25:48  jorpiell
59
 * Add the element collection
60
 *
61
 *
62
 */
63
/**
64
 * This interface represents a XML schema group element. 
65
 * Example:
66
 * <p>
67
 * <pre>
68
 * <code>
69
 * &lt;group
70
 * id = ID
71
 * maxOccurs = (nonNegativeInteger | unbounded)  : 1
72
 * minOccurs = nonNegativeInteger : 1
73
 * name = NCName
74
 * ref = QName
75
 * {any attributes with non-schema namespace . . .}&gt;
76
 * Content: (annotation?, (all | choice | sequence)?)
77
 * &lt;/group>&gt;
78
 * </code>
79
 * </pre>
80
 * </p> 
81
 * @see http://www.w3.org/TR/xmlschema-1/#element-group
82
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
83
 */
84
public interface IXSGroup extends IXSComponent{
85
    
86
    public void addChildElement(IXSElement element);
87
        
88
    public Collection getItems();
89
}
0 90

  
org.gvsig.xmlschema/library/tags/org.gvsig.xmlschema-2.0.22/org.gvsig.xmlschema.lib/org.gvsig.xmlschema.lib.api/src/main/java/org/gvsig/xmlschema/lib/api/som/IXSSchemaDocument.java
1
package org.gvsig.xmlschema.lib.api.som;
2

  
3
import java.net.URI;
4
import java.util.Enumeration;
5

  
6
import org.gvsig.xmlschema.lib.api.exceptions.SchemaCreationException;
7

  
8

  
9
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
10
 *
11
 * Copyright (C) 2004 IVER T.I. and Generalitat Valenciana.
12
 *
13
 * This program is free software; you can redistribute it and/or
14
 * modify it under the terms of the GNU General Public License
15
 * as published by the Free Software Foundation; either version 2
16
 * of the License, or (at your option) any later version.
17
 *
18
 * This program is distributed in the hope that it will be useful,
19
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21
 * GNU General Public License for more details.
22
 *
23
 * You should have received a copy of the GNU General Public License
24
 * along with this program; if not, write to the Free Software
25
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
26
 *
27
 * For more information, contact:
28
 *
29
 *  Generalitat Valenciana
30
 *   Conselleria d'Infraestructures i Transport
31
 *   Av. Blasco Ib??ez, 50
32
 *   46010 VALENCIA
33
 *   SPAIN
34
 *
35
 *      +34 963862235
36
 *   gvsig@gva.es
37
 *      www.gvsig.gva.es
38
 *
39
 *    or
40
 *
41
 *   IVER T.I. S.A
42
 *   Salamanca 50
43
 *   46005 Valencia
44
 *   Spain
45
 *
46
 *   +34 963163400
47
 *   dac@iver.es
48
 */
49
/* CVS MESSAGES:
50
 *
51
 * $Id: IXSSchemaDocument.java 175 2007-11-20 16:14:37Z jpiera $
52
 * $Log$
53
 * Revision 1.2  2007/06/22 12:20:48  jorpiell
54
 * The typeNotFoundException has been deleted. It never was thrown
55
 *
56
 * Revision 1.1  2007/06/14 16:15:03  jorpiell
57
 * builds to create the jars generated and add the schema code to the libGPEProject
58
 *
59
 * Revision 1.1  2007/06/14 13:50:07  jorpiell
60
 * The schema jar name has been changed
61
 *
62
 * Revision 1.2  2007/06/08 13:00:40  jorpiell
63
 * Add the targetNamespace to the file
64
 *
65
 * Revision 1.1  2007/06/07 14:54:13  jorpiell
66
 * Add the schema support
67
 *
68
 *
69
 */
70
/**
71
 * This interface represents a XML file. It could has some
72
 * associated schemas.
73
 * @author Jorge Piera LLodr? (jorge.piera@iver.es)
74
 */
75
public interface IXSSchemaDocument {
76
	
77
	/**
78
	 * @return <true> if the document has a schema
79
	 */
80
	public boolean hasSchemas();
81
	
82
	/**
83
	 * @return <true> if the document has namespace prefixes
84
	 */
85
	public boolean hasPrefixes();
86
	
87
	/**
88
	 * Adds a new Schema from a URI. It downloads the file
89
	 * and creates the schema
90
	 * @param uri
91
	 * URI tha contains the schema
92
	 * @param schema
93
	 * Schema to add
94
	 */
95
	public void addSchema(URI uri) throws SchemaCreationException;	
96
	
97
	/**
98
	 * Adds a new Schema from a URI
99
	 * @param uri
100
	 * URI tha contains the schema
101
	 * @param schema
102
	 * Schema to add
103
	 */
104
	public void addSchema(URI uri, IXSSchema schema);
105
	
106
	/**
107
	 * Add a schema location.
108
	 * @param uri
109
	 * @param schemaLocation
110
	 */
111
	public void addSchemaLocation(URI uri, String schemaLocation);
112
	
113
	/**
114
	 * Gets the schema location
115
	 * @param uri
116
	 * Schema URI
117
	 * @return
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff