%XML.Utils.SchemaResult
class %XML.Utils.SchemaResult extends %Library.RegisteredObject
This class manages and contains the list of class defintions that are created from an XML Schema. This class is intended for internal use by the XML Schema Wizard. 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.Property Inventory
Method Inventory
- AddToXSchema()
- CompileClasses()
- CreateClassDef()
- CreateResult()
- DisplayClass()
- DisplayClassHTML()
- DisplayClasses()
- DisplayClassesHTML()
- ElementsToXSchema()
- GetTypeRef()
- IsSQLWord()
- IsValidClassName()
- OutputXSchema()
- SaveClass()
- SaveClasses()
- SetupResult()
- XSchemaToFile()
Parameters
parameter DOMAIN = %TemplateMessages;
Messages for localization of XML Schema Wizard result.
Properties
property Classes as %String [ MultiDimensional ];
A multi-dimensional array of class names
Classes(name) = key (in original ClassTree)
Classes(name) = key (in original ClassTree)
Property methods: ClassesDisplayToLogical(), ClassesGet(), ClassesIsValid(), ClassesLogicalToDisplay(), ClassesLogicalToOdbc(), ClassesNormalize(), ClassesSet()
property Features as %String [ MultiDimensional ];
Array of feature codes for generated classes:
The possible nodes are as follows:
Features("DEFAULTSEQUENCE") If this node exists, the wizard does not set the XMLSEQUENCE parameter in the generated classes.
Features("JAVA") If this node exists, each class includes a Java projection.
Features("NOSEQUENCE") If this node exists, the wizard sets the XMLSEQUENCE parameter to 0 in the generated classes.
Features("POPULATE") If this node exists, each class extends %Populate in addition to %XML.Adaptor.
Features("SQLCOLUMNS") If this node exists, each class property specifies a value for the SqlColumnNumber keyword, so that the properties have the same order in SQL that they have in the schema.
Features("IGNORENULL") If this node is set, the XMLIGNORENULL parameter is set to this value for each class. Features("BINARYASSTREAM") If this node exists, then use %Stream.GlobalBinary for base64Binary type Features("XMLFORMAT") If this node is set, the XMLFORMAT parameter is set to this value for each class.
Features("DEFAULTSEQUENCE") If this node exists, the wizard does not set the XMLSEQUENCE parameter in the generated classes.
Features("JAVA") If this node exists, each class includes a Java projection.
Features("NOSEQUENCE") If this node exists, the wizard sets the XMLSEQUENCE parameter to 0 in the generated classes.
Features("POPULATE") If this node exists, each class extends %Populate in addition to %XML.Adaptor.
Features("SQLCOLUMNS") If this node exists, each class property specifies a value for the SqlColumnNumber keyword, so that the properties have the same order in SQL that they have in the schema.
Features("IGNORENULL") If this node is set, the XMLIGNORENULL parameter is set to this value for each class. Features("BINARYASSTREAM") If this node exists, then use %Stream.GlobalBinary for base64Binary type Features("XMLFORMAT") If this node is set, the XMLFORMAT parameter is set to this value for each class.
Property methods: FeaturesDisplayToLogical(), FeaturesGet(), FeaturesIsValid(), FeaturesLogicalToDisplay(), FeaturesLogicalToOdbc(), FeaturesNormalize(), FeaturesSet()
property PrefixIndex as %Integer [ InitialExpression = 0 ];
Index for creating namespace prefixes.
Property methods: PrefixIndexDisplayToLogical(), PrefixIndexGet(), PrefixIndexIsValid(), PrefixIndexLogicalToDisplay(), PrefixIndexNormalize(), PrefixIndexSet()
property Reader as SchemaReader;
SchemaReader that created this result
Property methods: ReaderGet(), ReaderGetSwizzled(), ReaderIsValid(), ReaderNewObject(), ReaderSet()
property Tree as %Integer;
Integer tree id within ^IRIS.Temp
Property methods: TreeDisplayToLogical(), TreeGet(), TreeIsValid(), TreeLogicalToDisplay(), TreeNormalize(), TreeSet()
Methods
Create the XSchema data Structure for one class
Compile all the class definitions in this result
method CreateClassDef(pClassName As %String, test As %Boolean = 0, ByRef pCDef As %Dictionary.ClassDefinition) as %Status
Create a class definition for an entry in the class tree.
classmethod CreateResult(pReader As SchemaReader, pPackage As %String = "", ByRef pFeatures As %String) as SchemaResult
Create a Schema Result given a SchemaReader
classmethod DisplayClass(cdef As %Dictionary.ClassDefinition) as %Status
Write out a formatted version of a class definition
method DisplayClassHTML(row As %Integer, cdef As %Dictionary.ClassDefinition) as %Status
method DisplayClasses()
List all the classes in this Result.
method DisplayClassesHTML() as %Status
Provide an HTML list of classes (for Wizard)
method ElementsToXSchema() as %Status
Add top level elements to the XSchema data structure
method GetTypeRef(ns As %Integer, key As %Integer, ByRef nsno As %Integer, ByRef localname As %String) as %String
Test if name is an SQL reserved word
!!!Test if name is a valid class name
method OutputXSchema(nsno As %Integer)
Output the XSchema data structure to a file
method SaveClass(cdef As %Dictionary.ClassDefinition, verbose As %Boolean = 0) as %Status
Save all the class definitions in this result to the database.
method SetupResult(pReader As SchemaReader, pPackage As %String = "", ByRef pFeatures As %String) as SchemaResult
Setup a new Schema Result given a SchemaReader
Output an XSchema format file based on the parsed XML schema.
Inherited Members
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %ValidateObject()