1 /*
2 * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
3 * @LastModified: Nov 2017
4 */
5 /*
6 * Licensed to the Apache Software Foundation (ASF) under one or more
7 * contributor license agreements. See the NOTICE file distributed with
8 * this work for additional information regarding copyright ownership.
9 * The ASF licenses this file to You under the Apache License, Version 2.0
10 * (the "License"); you may not use this file except in compliance with
11 * the License. You may obtain a copy of the License at
12 *
13 * http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 */
21
22 package com.sun.org.apache.xerces.internal.impl.dv.xs;
23
24 import com.sun.org.apache.xerces.internal.impl.dv.SchemaDVFactory;
25 import com.sun.org.apache.xerces.internal.impl.dv.XSFacets;
26 import com.sun.org.apache.xerces.internal.impl.dv.XSSimpleType;
27 import com.sun.org.apache.xerces.internal.util.SymbolHash;
28 import com.sun.org.apache.xerces.internal.xs.XSConstants;
29 import com.sun.org.apache.xerces.internal.xs.XSObjectList;
30
31 /**
32 * the factory to create/return built-in schema DVs and create user-defined DVs
33 *
34 * @xerces.internal
35 *
36 * @author Neeraj Bajaj, Sun Microsystems, inc.
37 * @author Sandy Gao, IBM
38 *
39 */
40 public class BaseDVFactory extends SchemaDVFactory {
41
42 static final String URI_SCHEMAFORSCHEMA = "http://www.w3.org/2001/XMLSchema";
43
44 // there are 27 types. 53 is the closest prime number to 27*2=54.
45 static SymbolHash fBaseTypes = new SymbolHash(53);
46 static {
47 createBuiltInTypes(fBaseTypes);
48 }
49
50 /**
51 * Get a built-in simple type of the given name
52 * REVISIT: its still not decided within the Schema WG how to define the
53 * ur-types and if all simple types should be derived from a
54 * complex type, so as of now we ignore the fact that anySimpleType
55 * is derived from anyType, and pass 'null' as the base of
56 * anySimpleType. It needs to be changed as per the decision taken.
57 *
58 * @param name the name of the datatype
|
1 /*
2 * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
3 */
4 /*
5 * Licensed to the Apache Software Foundation (ASF) under one or more
6 * contributor license agreements. See the NOTICE file distributed with
7 * this work for additional information regarding copyright ownership.
8 * The ASF licenses this file to You under the Apache License, Version 2.0
9 * (the "License"); you may not use this file except in compliance with
10 * the License. You may obtain a copy of the License at
11 *
12 * http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 */
20
21 package com.sun.org.apache.xerces.internal.impl.dv.xs;
22
23 import com.sun.org.apache.xerces.internal.impl.dv.SchemaDVFactory;
24 import com.sun.org.apache.xerces.internal.impl.dv.XSFacets;
25 import com.sun.org.apache.xerces.internal.impl.dv.XSSimpleType;
26 import com.sun.org.apache.xerces.internal.util.SymbolHash;
27 import com.sun.org.apache.xerces.internal.xs.XSConstants;
28 import com.sun.org.apache.xerces.internal.xs.XSObjectList;
29
30 /**
31 * the factory to create/return built-in schema DVs and create user-defined DVs
32 *
33 * @xerces.internal
34 *
35 * @author Neeraj Bajaj, Sun Microsystems, inc.
36 * @author Sandy Gao, IBM
37 *
38 * @LastModified: Nov 2017
39 */
40 public class BaseDVFactory extends SchemaDVFactory {
41
42 static final String URI_SCHEMAFORSCHEMA = "http://www.w3.org/2001/XMLSchema";
43
44 // there are 27 types. 53 is the closest prime number to 27*2=54.
45 static SymbolHash fBaseTypes = new SymbolHash(53);
46 static {
47 createBuiltInTypes(fBaseTypes);
48 }
49
50 /**
51 * Get a built-in simple type of the given name
52 * REVISIT: its still not decided within the Schema WG how to define the
53 * ur-types and if all simple types should be derived from a
54 * complex type, so as of now we ignore the fact that anySimpleType
55 * is derived from anyType, and pass 'null' as the base of
56 * anySimpleType. It needs to be changed as per the decision taken.
57 *
58 * @param name the name of the datatype
|