IRISLIB database
SchemaHandler Class Reference

A SAX content handler that processes XML Schema files. More...

Inheritance diagram for SchemaHandler:
Collaboration diagram for SchemaHandler:

Public Member Functions

 UnpackAttrs (_.Library.List attrs, _.Library.String array)
 Converts list of attrs into an array keyed by attr name.
 
 characters (_.Library.String chars, _.Library.Integer length)
 Receive notification of character data inside an element. More...
 
 endElement (_.Library.String uri, _.Library.String local, _.Library.String qname)
 Receive notification of the end of an element. More...
 
 endPrefixMapping (_.Library.String prefix)
 Receive notification of the end of an namespace prefix mapping. More...
 
 startDocument ()
 Receive notification of the beginning of the document. More...
 
 startElement (_.Library.String uri, _.Library.String local, _.Library.String qname, _.Library.List attrs)
 Receive notification of the start of an element. More...
 
 startPrefixMapping (_.Library.String prefix, _.Library.String uri)
 Receive notification of the start of an namespace prefix mapping. More...
 
- Public Member Functions inherited from ContentHandler
_.Library.Status LocatePosition (_.Library.Integer Line, _.Library.Integer Offset)
 Locate the current position within the parsed document. More...
 
_.Library.Integer Mask ()
 Calculate MASK for call to xerces parser. More...
 
_.Library.Status OnPostParse ()
 Callback after XML parse complete.
 
_.Library.Status PopHandler ()
 Return to the previous handler.
 
_.Library.Status PushHandler (_.XML.SAX.ContentHandler Handler)
 Push a new handler on the stack. More...
 
 comment (_.Library.String chars, _.Library.Integer length)
 Receive notification of comments. More...
 
 endCDATA ()
 Receive notification of the end of a CDATA section. More...
 
 endDTD ()
 Receive notification of the end of the DTD declarations. More...
 
 endDocument ()
 Receive notification of the end of the document. More...
 
 endEntity (_.Library.String name)
 Receive notification of the end of an entity. More...
 
 error (_.Library.String error)
 Receive notification of a recoverable parser error. More...
 
 fatalError (_.Library.String fatalerror)
 Report a fatal XML parsing error. More...
 
 ignorableWhitespace (_.Library.String chars, _.Library.Integer length)
 Receive notification of ignorable whitespace in element content. More...
 
 processingInstruction (_.Library.String target, _.Library.String data)
 Receive notification of a processing instruction in element content. More...
 
 skippedEntity (_.Library.String name)
 Receive notification of a skipped entity. More...
 
 startCDATA ()
 Receive notification of the start of a CDATA section. More...
 
 startDTD (_.Library.String name, _.Library.String publicId, _.Library.String systemId)
 Receive notification of the start of the DTD declarations. More...
 
 startEntity (_.Library.String name)
 Receive notification of the start of an entity. More...
 
 warning (_.Library.String warning)
 Receive notification of a parser warning. More...
 
- Public Member Functions inherited from RegisteredObject
_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject object, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 

Static Public Member Functions

_.Library.String GetFullPath (_.Library.String base, _.Library.String file)
 A SAX content handler that processes XML Schema files. More...
 
_.Library.Status ParseFile (_.Library.String filename, _.XML.Utils.SchemaReader reader, _.Library.String target, _.Library.Boolean bInclude)
 Parse an XML Schema file.
 
_.Library.Status ParseStream (_.Library.AbstractStream stream, _.XML.Utils.SchemaReader reader)
 Parse an XML Schema stream.
 
_.Library.Status ParseURL (_.Library.String url, _.XML.Utils.SchemaReader reader, _.Library.String target, _.Library.Boolean bInclude)
 Parse an XML Schema from a URL.
 

Public Attributes

 ElStack
 Stack of parsed elements. More...
 
 InSchema
 Are we in a schema? More...
 
 Included
 included or imported schema being processed More...
 
 Level
 Stack level. More...
 
 PrefixMap
 List of namespace prefixes and their mappings
More...
 
 Reader
 The <class>SchemaReader</class> that invoked us. More...
 
 SourceName
 The file we are parsing. More...
 
 TargetNS
 current target namespace for this schema More...
 
 Tree
 Integer tree id within ^IRIS.Temp. More...
 

Private Attributes

 __SaveTargetNS
 Save original target namespace when starting processing of schema. More...
 

Additional Inherited Members

- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Detailed Description

A SAX content handler that processes XML Schema files.


This class is used by the XML Schema Wizard; it is not for direct use within applications.

This class is used internally by InterSystems IRIS. You should not make direct use of it within your applications. There is no guarantee made about either the behavior or future operation of this class.

Member Function Documentation

◆ GetFullPath()

_.Library.String GetFullPath ( _.Library.String  base,
_.Library.String  file 
)
static

A SAX content handler that processes XML Schema files.


This class is used by the XML Schema Wizard; it is not for direct use within applications.

This class is used internally by InterSystems IRIS. You should not make direct use of it within your applications. There is no guarantee made about either the behavior or future operation of this class.

◆ characters()

characters ( _.Library.String  chars,
_.Library.Integer  length 
)

Receive notification of character data inside an element.

<p>
By default, do nothing.  Application writers may override this
method to take specific actions for each chunk of character data
(such as adding the data to a node or buffer, or printing it to
a file).
</P>
<p>
<ul>
<li>chars: The characters.</li>
<li>length: The number of characters to use from the character
array.</li>
</ul>

Reimplemented from ContentHandler.

◆ endElement()

endElement ( _.Library.String  uri,
_.Library.String  localname,
_.Library.String  qname 
)

Receive notification of the end of an element.

<p>
By default, do nothing.  Application writers may override this
method in a subclass to take specific actions at the end of
each element (such as finalising a tree node or writing
output to a file).
</p>

<p>
<ul>
<li>uri: The URI of the associated namespace for this element</li>
<li>localname: The local part of the element name</li>
<li>qname: The QName of this element</li>
</ul>
</p>

Reimplemented from ContentHandler.

◆ endPrefixMapping()

endPrefixMapping ( _.Library.String  prefix)

Receive notification of the end of an namespace prefix mapping.

<p>
By default, do nothing.  Application writers may override this
method in a subclass to take specific actions at the end of
each namespace prefix mapping.</p>
</p>

<p>
<ul>
<li>prefix: The namespace prefix used</li>
</ul>
</p>

Reimplemented from ContentHandler.

◆ startDocument()

startDocument ( )

Receive notification of the beginning of the document.

<p>
By default, do nothing.  Application writers may override this
method in a subclass to take specific actions at the beginning
of a document (such as allocating the root node of a tree or 
creating an output file)
<p>

Reimplemented from ContentHandler.

◆ startElement()

startElement ( _.Library.String  uri,
_.Library.String  localname,
_.Library.String  qname,
_.Library.List  attrs 
)

Receive notification of the start of an element.

<p>
By default, do nothing.  Application writers may override this
method in a subclass to take specific actions at the start of
each element (such as allocating a new tree node or writin
output to a file).
</p>
<p>
<ul>
<li>uri: The URI of the associated namespace for this element</li>
<li>localname: the local part of the element name</li>
<li>qname: the QName of this element</li>
<li>attrs: a list in <a target="_top" href="/csp/docbook/Doc.View.cls?FIND=OBJECTSCRIPT+$LIST+FUNCTION">$List</a> format consisting of a repeating group of attributes.</li>
</ul>
<p>
The format of the repeating group is as follows:
<ul>
<li>+0 - uri: The URI of the associated namespace for this attribute</li>
<li>+1 - localname: The local part of the name of this attribute</li>
<li>+2 - qname: The QName of this attribute</li>
<li>+3 - type: The type of this attribute ("CDATA", NMTOKEN", "ENTITY", etc.)</li>
<li>+4 - value: The value of this attribute</li>
</ul>
</p>

Reimplemented from ContentHandler.

◆ startPrefixMapping()

startPrefixMapping ( _.Library.String  prefix,
_.Library.String  uri 
)

Receive notification of the start of an namespace prefix mapping.

<p>
By default, do nothing.  Application writers may override this
method in a subclass to take specific actions at the start of
each namespace prefix mapping.
</p>

<p>
<ul>
<li>prefix: The namespace prefix used</li>
<li>uri: The namespace URI used.</li>
</ul>
</p>

Reimplemented from ContentHandler.

Member Data Documentation

◆ ElStack

ElStack

Stack of parsed elements.


Each entry contains: $LB(local, elno)

 

◆ InSchema

InSchema

Are we in a schema?

 

◆ Included

Included

included or imported schema being processed

 

◆ Level

Level

Stack level.

 

◆ PrefixMap

PrefixMap

List of namespace prefixes and their mappings

PrefixMap(prefix) = uri
PrefixMap(prefix,#) = uri (for "stacked" prefixes)  

◆ Reader

The <class>SchemaReader</class> that invoked us.

 

◆ __SaveTargetNS

__SaveTargetNS
private

Save original target namespace when starting processing of schema.

 

◆ SourceName

SourceName

The file we are parsing.

 

◆ TargetNS

TargetNS

current target namespace for this schema

 

◆ Tree

Tree

Integer tree id within ^IRIS.Temp.