Package org.apache.uima.cas
Interface TypeSystem
- All Known Subinterfaces:
TypeSystemMgr
- All Known Implementing Classes:
TypeSystemImpl
The interface to the type system. Used to access information about existing
types
and features
using
their String identifiers.
This is almost a pure access interface. Exception: the call to getArrayType actually will create a new Array Type if it doesn't already exist.
Types and features are defined using Component Descriptors, written in XML.
Get the type system from a CAS
object with getTypeSystem()
.
There are a few methods to list the existing types in a type system. Information about which
feature is appropriate for which type is available through the Type
and
Feature
classes.
Implements Iterable to allow iterating over all types
-
Field Summary
Modifier and TypeFieldDescriptionstatic final char
This is the character that separates a type name from a feature name.static final char
This is the character that separates name spaces.static final String
Add this to the additionalParameters map to skip adding the prebuilt types to the type system. -
Method Summary
Modifier and TypeMethodDescriptiongetArrayType
(Type componentType) Get or Create an array type with component typecomponentType
.getDirectlySubsumedTypes
(Type type) Deprecated.getDirectSubtypes
(Type type) Get a List of the types directly subsumed by a given type.getFeatureByFullName
(String featureName) Get a feature object for a given name.Get a list of features, in no particular order.Return the low-level view of this type system.Get the parent type for input type.getProperlySubsumedTypes
(Type type) Return the list of all types subsumed by the input type.Get the top type, i.e., the root of the type system.Get a type object for a given type name.Get an iterator over all types, in no particular order.getTypeNameSpace
(String name) Create a type name space object for the name parameter.boolean
Does one type inherit from the other?Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Field Details
-
FEATURE_SEPARATOR
static final char FEATURE_SEPARATORThis is the character that separates a type name from a feature name. Ex.:uima.cas.Annotation:begin
.- See Also:
-
NAMESPACE_SEPARATOR
static final char NAMESPACE_SEPARATORThis is the character that separates name spaces. Ex.:uima.cas.Annotation
- See Also:
-
PARAM_EXCLUDE_PREBUILT_TYPES
Add this to the additionalParameters map to skip adding the prebuilt types to the type system. Used by applicaitons only for backwards compatibility with binary serialization forms requiring exactly matching type systems- See Also:
-
-
Method Details
-
getType
Get a type object for a given type name. See documentation on type names.- Parameters:
typeName
- The name of the type.- Returns:
- A type object, or
null
if no such type exists.
-
getArrayType
Get or Create an array type with component typecomponentType
.- Parameters:
componentType
- The type of the elements of the resulting array type. This can be any type, even another array type.- Returns:
- The array type with the corresponding component type. If it doesn't exist, a new TypeImpl_array is created for it.
-
getFeatureByFullName
Get a feature object for a given name. See documentation on feature names.- Parameters:
featureName
- The fully qualified name of the feature.- Returns:
- An feature object, or
null
if no such feature exists.
-
getTypeIterator
Get an iterator over all types, in no particular order.- Returns:
- The iterator.
-
getTopType
Type getTopType()Get the top type, i.e., the root of the type system.- Returns:
- The top type.
-
getDirectlySubsumedTypes
Deprecated.UsegetDirectSubtypes(Type)
instead.Get a vector of the types directly subsumed by a given type.- Parameters:
type
- The input type.- Returns:
- A vector of the directly subsumed types.
-
getDirectSubtypes
Get a List of the types directly subsumed by a given type.- Parameters:
type
- The input type.- Returns:
- A List of the directly subsumed types.
-
getProperlySubsumedTypes
Return the list of all types subsumed by the input type. Note: the list does not include the type itself.- Parameters:
type
- Input type.- Returns:
- The list of types subsumed by
type
.
-
getParent
Get the parent type for input type.- Parameters:
type
- The type we want to know the parent of.- Returns:
- The parent type, or
null
for the top type.
-
subsumes
Does one type inherit from the other?- Parameters:
superType
- Supertype.subType
- Subtype.- Returns:
true
iffsub
inherits fromsuper
.
-
getFeatures
Get a list of features, in no particular order.- Returns:
- An iterator over the features.
-
getTypeNameSpace
Create a type name space object for the name parameter.- Parameters:
name
- The name of the name space.- Returns:
- A
TypeNameSpace
object corresponding toname
, ornull
, ifname
is not a legal type name space identifier.
-
getLowLevelTypeSystem
LowLevelTypeSystem getLowLevelTypeSystem()Return the low-level view of this type system.- Returns:
- The
LowLevelTypeSystem
version of this type system.
-
getDirectSubtypes(Type)
instead.