http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Release Info

Installation
Download
Build

FAQs
Samples
API Docs

DOM C++ Binding
Programming
Migration Guide

Feedback
Bug-Reporting
PDF Document

CVS Repository
Mail Archive

API Docs for SAX and DOM
 

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XSModel Class Reference

Inheritance diagram for XSModel:

Inheritance graph
[legend]
Collaboration diagram for XSModel:

Collaboration graph
[legend]
List of all members.

Public Methods

Constructors
 XSModel (XMLGrammarPool *grammarPool, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 The constructor to be used when a grammar pool contains all needed info. More...

 XSModel (XSModel *baseModel, GrammarResolver *grammarResolver, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 The constructor to be used when the XSModel must represent all components in the union of an existing XSModel and a newly-created Grammar(s) from the GrammarResolver. More...

Destructor
 ~XSModel ()
XSModel methods
StringListgetNamespaces ()
 Convenience method. More...

XSNamespaceItemListgetNamespaceItems ()
 A set of namespace schema information information items ( of type XSNamespaceItem), one for each namespace name which appears as the target namespace of any schema component in the schema used for that assessment, and one for absent if any schema component in the schema had no target namespace. More...

XSNamedMap< XSObject > * getComponents (XSConstants::COMPONENT_TYPE objectType)
 [schema components]: a list of top-level components, i.e. More...

XSNamedMap< XSObject > * getComponentsByNamespace (XSConstants::COMPONENT_TYPE objectType, const XMLCh *compNamespace)
 Convenience method. More...

XSAnnotationListgetAnnotations ()
 [annotations]: a set of annotations. More...

XSElementDeclarationgetElementDeclaration (const XMLCh *name, const XMLCh *compNamespace)
 Convenience method. More...

XSAttributeDeclarationgetAttributeDeclaration (const XMLCh *name, const XMLCh *compNamespace)
 Convenience method. More...

XSTypeDefinitiongetTypeDefinition (const XMLCh *name, const XMLCh *compNamespace)
 Convenience method. More...

XSAttributeGroupDefinitiongetAttributeGroup (const XMLCh *name, const XMLCh *compNamespace)
 Convenience method. More...

XSModelGroupDefinitiongetModelGroupDefinition (const XMLCh *name, const XMLCh *compNamespace)
 Convenience method. More...

XSNotationDeclarationgetNotationDeclaration (const XMLCh *name, const XMLCh *compNamespace)
 Convenience method. More...

XSObjectgetXSObjectById (unsigned int compId, XSConstants::COMPONENT_TYPE compType)
 Optional. More...

XMLStringPoolgetURIStringPool ()
XSNamespaceItemgetNamespaceItem (const XMLCh *const key)
XSObjectgetXSObject (void *key)
 Get the XSObject (i.e. More...


Protected Attributes

MemoryManager *const fMemoryManager
StringListfNamespaceStringList
XSNamespaceItemListfXSNamespaceItemList
RefVectorOf< XSObject > * fIdVector [XSConstants::MULTIVALUE_FACET]
XSNamedMap< XSObject > * fComponentMap [XSConstants::MULTIVALUE_FACET]
XMLStringPoolfURIStringPool
XSAnnotationListfXSAnnotationList
RefHashTableOf< XSNamespaceItem > * fHashNamespace
XSObjectFactory * fObjFactory
RefVectorOf< XSNamespaceItem > * fDeleteNamespace
XSModel * fParent
bool fDeleteParent
bool fAddedS4SGrammar

Friends

class XSObjectFactory
class XSObject

Constructor & Destructor Documentation

XSModel::XSModel XMLGrammarPool   grammarPool,
MemoryManager *const    manager = XMLPlatformUtils::fgMemoryManager
 

The constructor to be used when a grammar pool contains all needed info.

Parameters:
grammarPool  the grammar pool containing the underlying data structures
manager  The configurable memory manager

XSModel::XSModel XSModel *    baseModel,
GrammarResolver *    grammarResolver,
MemoryManager *const    manager = XMLPlatformUtils::fgMemoryManager
 

The constructor to be used when the XSModel must represent all components in the union of an existing XSModel and a newly-created Grammar(s) from the GrammarResolver.

Parameters:
baseModel  the XSModel upon which this one is based
grammarResolver  the grammar(s) whose components are to be merged
manager  The configurable memory manager

XSModel::~XSModel  
 


Member Function Documentation

XSAnnotationList* XSModel::getAnnotations  
 

[annotations]: a set of annotations.

XSAttributeDeclaration* XSModel::getAttributeDeclaration const XMLCh *    name,
const XMLCh *    compNamespace
 

Convenience method.

Returns a top-level attribute declaration.

Parameters:
name  The name of the declaration.
compNamespace  The namespace of the declaration, null if absent.
Returns:
A top-level attribute declaration or null if such declaration does not exist.

XSAttributeGroupDefinition* XSModel::getAttributeGroup const XMLCh *    name,
const XMLCh *    compNamespace
 

Convenience method.

Returns a top-level attribute group definition.

Parameters:
name  The name of the definition.
compNamespace  The namespace of the declaration, null if absent.
Returns:
A top-level attribute group definition or null if such definition does not exist.

XSNamedMap<XSObject>* XSModel::getComponents XSConstants::COMPONENT_TYPE    objectType
 

[schema components]: a list of top-level components, i.e.

element declarations, attribute declarations, etc.

Parameters:
objectType  The type of the declaration, i.e. ELEMENT_DECLARATION, TYPE_DEFINITION and any other component type that may be a property of a schema component.
Returns:
A list of top-level definition of the specified type in objectType or null.

XSNamedMap<XSObject>* XSModel::getComponentsByNamespace XSConstants::COMPONENT_TYPE    objectType,
const XMLCh *    compNamespace
 

Convenience method.

Returns a list of top-level component declarations that are defined within the specified namespace, i.e. element declarations, attribute declarations, etc.

Parameters:
objectType  The type of the declaration, i.e. ELEMENT_DECLARATION.
compNamespace  The namespace to which declaration belongs or null (for components with no target namespace).
Returns:
A list of top-level definitions of the specified type in objectType and defined in the specified namespace or null.

XSElementDeclaration* XSModel::getElementDeclaration const XMLCh *    name,
const XMLCh *    compNamespace
 

Convenience method.

Returns a top-level element declaration.

Parameters:
name  The name of the declaration.
compNamespace  The namespace of the declaration, null if absent.
Returns:
A top-level element declaration or null if such declaration does not exist.

XSModelGroupDefinition* XSModel::getModelGroupDefinition const XMLCh *    name,
const XMLCh *    compNamespace
 

Convenience method.

Returns a top-level model group definition.

Parameters:
name  The name of the definition.
compNamespace  The namespace of the declaration, null if absent.
Returns:
A top-level model group definition definition or null if such definition does not exist.

XSNamespaceItem* XSModel::getNamespaceItem const XMLCh *const    key
 

XSNamespaceItemList * XSModel::getNamespaceItems  
 

A set of namespace schema information information items ( of type XSNamespaceItem), one for each namespace name which appears as the target namespace of any schema component in the schema used for that assessment, and one for absent if any schema component in the schema had no target namespace.

For more information see schema information.

StringList * XSModel::getNamespaces  
 

Convenience method.

Returns a list of all namespaces that belong to this schema. The value null is not a valid namespace name, but if there are components that don't have a target namespace, null is included in this list.

XSNotationDeclaration* XSModel::getNotationDeclaration const XMLCh *    name,
const XMLCh *    compNamespace
 

Convenience method.

Returns a top-level notation declaration.

Parameters:
name  The name of the declaration.
compNamespace  The namespace of the declaration, null if absent.
Returns:
A top-level notation declaration or null if such declaration does not exist.

XSTypeDefinition* XSModel::getTypeDefinition const XMLCh *    name,
const XMLCh *    compNamespace
 

Convenience method.

Returns a top-level simple or complex type definition.

Parameters:
name  The name of the definition.
compNamespace  The namespace of the declaration, null if absent.
Returns:
An XSTypeDefinition or null if such definition does not exist.

XMLStringPool * XSModel::getURIStringPool  
 

XSObject* XSModel::getXSObject void *    key
 

Get the XSObject (i.e.

XSElementDeclaration) that corresponds to to a schema grammar component (i.e. SchemaElementDecl)

Parameters:
key  schema component object
Returns:
the corresponding XSObject

XSObject* XSModel::getXSObjectById unsigned int    compId,
XSConstants::COMPONENT_TYPE    compType
 

Optional.

Return a component given a component type and a unique Id. May not be supported for all component types.

Parameters:
compId  unique Id of the component within its type
compType  type of the component
Returns:
the component of the given type with the given Id, or 0 if no such component exists or this is unsupported for this type of component.


Friends And Related Function Documentation

friend class XSObject [friend]
 

friend class XSObjectFactory [friend]
 


Member Data Documentation

bool XSModel::fAddedS4SGrammar [protected]
 

XSNamedMap<XSObject>* XSModel::fComponentMap[XSConstants::MULTIVALUE_FACET] [protected]
 

RefVectorOf<XSNamespaceItem>* XSModel::fDeleteNamespace [protected]
 

bool XSModel::fDeleteParent [protected]
 

RefHashTableOf<XSNamespaceItem>* XSModel::fHashNamespace [protected]
 

RefVectorOf<XSObject>* XSModel::fIdVector[XSConstants::MULTIVALUE_FACET] [protected]
 

MemoryManager* const XSModel::fMemoryManager [protected]
 

StringList* XSModel::fNamespaceStringList [protected]
 

XSObjectFactory* XSModel::fObjFactory [protected]
 

XSModel* XSModel::fParent [protected]
 

XMLStringPool* XSModel::fURIStringPool [protected]
 

XSAnnotationList* XSModel::fXSAnnotationList [protected]
 

XSNamespaceItemList* XSModel::fXSNamespaceItemList [protected]
 


The documentation for this class was generated from the following file:


Copyright © 1994-2004 The Apache Software Foundation. All Rights Reserved.