XML:DTD

This module implements the mechanisms to store, maintain, and query the data gathered from an XML document's DTD. An instance of Builder is created by the parser XML:Parser.Parser to hold a document's DTD information.

Import List

    URI
    XML:UnicodeBuffer
    XML:UnicodeCodec
 
Class List
AttValue
AttrDecl
Builder
CP
Characters
ChoiceCP
Declaration
ElementDecl
Entity
EntityRef
Enumeration
ExternalEntity
Fragment
InternalEntity
NameCP
NameNode
Namespace
NamespaceDeclaration
Notation
RegexpInfo
SeqCP
Class Summary: AttValue [Detail]
  +--XML:DTD.AttValue
Field Summary
fragmentList-: Fragment

          
Constructor Summary
InitAttValue(AttValue)

          
Method Summary
Append(Fragment)

          
Clear()

          
Flatten(AttrDecl): String

          Returns the string representation of the attribute value attrDecl.
FlattenNorm(AttrDecl, VAR BOOLEAN): String

          Like AttValue.Flatten, but reports if normalization has been done.
FlattenValue(BOOLEAN, VAR BOOLEAN): String

          Returns the string representation of the attribute value attValue.
Length(): LONGINT

          Calculates the length of the attribute value, as if it were of type CDATA.
 
Class Summary: AttrDecl [Detail]
  +---XML:DTD.Declaration
       |
       +--XML:DTD.AttrDecl
Field Summary
default-: DefaultType

          
defaultValue-: AttValue

          
elementName-: String

          
enumeration-: Enumeration

          
externalMarkupDecl-: BOOLEAN

          
type-: AttributeType

          
Inherited Fields

From XML:DTD.Declaration:

          name, next

Constructor Summary
InitAttrDecl(AttrDecl, String, String, AttributeType, Enumeration, DefaultType, AttValue, BOOLEAN)

          
 
Class Summary: Builder [Detail]
  +--XML:DTD.Builder
Field Summary
attributeList-: Declaration

          
elementNamespace-: Namespace

          Namespace with element declarations.
geNamespace-: Namespace

          Namespace with general entity declarations.
peNamespace-: Namespace

          Namespace with parameter entity declarations.
rootName-: String

          Name of the root name, as given in the DTD.
Constructor Summary
Init(Builder)

          Initializes the DTD builder.
New(): Builder

          
Method Summary
AddAttribute(AttrDecl)

          
AttachAttributes()

          Attaches all attribute declarations in the DTD to the declarations of their element.
IsValidEntityDecl(String, String): BOOLEAN

          Tests if the internal entity declaration is legal.
NewAttValue(): AttValue

          
NewAttrDecl(String, String, AttributeType, Enumeration, DefaultType, AttValue, BOOLEAN): AttrDecl

          
NewCharacters(String, CharPos, CharPos, BOOLEAN): Characters

          
NewChoiceCP(CPModeType, CP): ChoiceCP

          
NewDocumentEntity(URI): ExternalEntity

          
NewElementDecl(String, CP, BOOLEAN): ElementDecl

          
NewEntityRef(String, Entity): EntityRef

          
NewEnumeration(): Enumeration

          
NewExternalDTD(String, String, URI): ExternalEntity

          
NewExternalEntity(String, EntityType, String, String, String, URI, BOOLEAN): ExternalEntity

          
NewInternalEntity(String, EntityType, String, BOOLEAN): InternalEntity

          
NewNameCP(CPModeType, String): NameCP

          
NewNotation(String, String, String, URI): Notation

          
NewSeqCP(CPModeType, CP): SeqCP

          
SetRootName(String)

          
 
Class Summary: CP [Detail]
  +--XML:DTD.CP
Field Summary
cpMode-: SHORTINT

          
next-: CP

          
Method Summary
SetMode(SHORTINT)

          
SetNext(CP)

          
 
Class Summary: Characters [Detail]
  +---XML:DTD.Fragment
       |
       +--XML:DTD.Characters
Field Summary
source-: String

          The array slice `source[sourceStart, sourceEnd[' holds the fragment's character data.
sourceEnd-: CharPos

          
sourceStart-: CharPos

          
Inherited Fields

From XML:DTD.Fragment:

          next

Constructor Summary
InitCharacters(Characters, String, CharPos, CharPos)

          
 
Class Summary: ChoiceCP [Detail]
  +---XML:DTD.CP
       |
       +--XML:DTD.ChoiceCP
Field Summary
list-: CP

          
Inherited Fields

From XML:DTD.CP:

          cpMode, next

Constructor Summary
InitChoiceCP(ChoiceCP, CPModeType, CP)

          
Inherited Methods

From XML:DTD.CP:

          SetMode, SetNext

 
Class Summary: Declaration [Detail]
  +--XML:DTD.Declaration
Field Summary
name-: String

          Name of the declared object.
next-: Declaration

          Next declaration in namespace.
Constructor Summary
InitDeclaration(Declaration, String)

          
 
Class Summary: ElementDecl [Detail]
  +---XML:DTD.Declaration
       |
       +--XML:DTD.ElementDecl
Field Summary
attrNamespace-: Namespace

          The attribute namespace of the element.
contentModel-: CP

          The content model of the element.
contentType-: ContentType

          Type of the content model.
externalMarkupDecl-: BOOLEAN

          Set if the entity is declared in an external markup declaration.
idAttr-: AttrDecl

          If the element has an ID attribute, then this field refers to its attribute declaration after Builder.AttachAttributes has been called.
multipleDecl-: BOOLEAN

          Set to TRUE, if more than one declaration of this element type appears in the DTD.
notationAttr-: AttrDecl

          If the element has a NOTATION attribute, then this field refers to its attribute declaration after Builder.AttachAttributes has been called.
regexp-: RegexpInfo

          Regular expression contructed for `children' element content.
Inherited Fields

From XML:DTD.Declaration:

          name, next

Constructor Summary
InitElementDecl(ElementDecl, String, CP, Namespace, BOOLEAN)

          
Method Summary
IsElementContent(): BOOLEAN

          
IsEmpty(): BOOLEAN

          
SetMultipleDecl()

          
SetRegexp(RegexpInfo)

          
 
Class Summary: Entity [Detail]
  +---XML:DTD.Declaration
       |
       +--XML:DTD.Entity
Field Summary
attValue: AttValue

          This field is used internally by the parser.
entityValue-: String

          This is either the value of an internal entity, or the internalized version of an external entity.
expanding: BOOLEAN

          This field is used internally by the parser.
externalMarkupDecl-: BOOLEAN

          Set if the entity is declared in an external markup declaration.
type-: EntityType

          This field indicates the kind of entity.
Inherited Fields

From XML:DTD.Declaration:

          name, next

Method Summary
IsDocumentEntity(): BOOLEAN

          
LengthValue(): LONGINT

          Returns the length of the entity's value.
SetEntityValue(String)

          
 
Class Summary: EntityRef [Detail]
  +---XML:DTD.Fragment
       |
       +--XML:DTD.EntityRef
Field Summary
entity: Entity

          After the name has been resolved successfully, this field refers to the internal entity declaration that is being referenced.
name-: String

          The name of the reference.
Inherited Fields

From XML:DTD.Fragment:

          next

Constructor Summary
InitEntityRef(EntityRef, String, Entity)

          
 
Class Summary: Enumeration [Detail]
  +--XML:DTD.Enumeration
Field Summary
nameList-: NameNode

          
Method Summary
Append(String)

          
Matches(VAR StringVar): BOOLEAN

          Returns TRUE, if one of the names listed in the enumeration matches the string name.
 
Class Summary: ExternalEntity [Detail]
  +---XML:DTD.Declaration
       |
       +---XML:DTD.Entity
            |
            +--XML:DTD.ExternalEntity
Field Summary
baseURI-: URI

          The base URI of the external entity.
codecFactory-: Factory

          The factory object that produced the Unicode decoder that is used to access the files contents.
encoding-: String

          The encoding string from the XML or text declaration.
ndata-: String

          For a parsed entity declaration, this field is NIL.
public-: String

          Public identifier of the external entity.
standalone-: StandaloneType

          The standalone declaration.
system-: String

          System identifier of the external entity.
version-: String

          The version string from the XML or text declaration.
Inherited Fields

From XML:DTD.Declaration:

          name, next

From XML:DTD.Entity:

          attValue, entityValue, expanding, externalMarkupDecl, type

Method Summary
IsDocumentEntity(): BOOLEAN

          
SetCodecFactory(Factory)

          
SetEncoding(String)

          
SetStandalone(StandaloneType)

          
SetVersion(String)

          
Inherited Methods

From XML:DTD.Entity:

          IsDocumentEntity, LengthValue, SetEntityValue

 
Class Summary: Fragment [Detail]
  +--XML:DTD.Fragment
Field Summary
next-: Fragment

          Refers to the next fragment in the list AttValue.fragmentList.
Constructor Summary
InitFragment(Fragment)

          
 
Class Summary: InternalEntity [Detail]
  +---XML:DTD.Declaration
       |
       +---XML:DTD.Entity
            |
            +--XML:DTD.InternalEntity
Inherited Fields

From XML:DTD.Declaration:

          name, next

From XML:DTD.Entity:

          attValue, entityValue, expanding, externalMarkupDecl, type

Inherited Methods

From XML:DTD.Entity:

          IsDocumentEntity, LengthValue, SetEntityValue

 
Class Summary: NameCP [Detail]
  +---XML:DTD.CP
       |
       +--XML:DTD.NameCP
Field Summary
name-: String

          
Inherited Fields

From XML:DTD.CP:

          cpMode, next

Constructor Summary
InitNameCP(NameCP, CPModeType, String)

          
Inherited Methods

From XML:DTD.CP:

          SetMode, SetNext

 
Class Summary: NameNode [Detail]
  +--XML:DTD.NameNode
Field Summary
name-: String

          
next-: NameNode

          
 
Class Summary: Namespace [Detail]
  +--XML:DTD.Namespace
Field Summary
declList-: Declaration

          Refers to the first element of the list of declarations.
Constructor Summary
NewNamespace(): Namespace

          
Method Summary
Add(Declaration): BOOLEAN

          Adds the declaration decl to the namespace ns.
Get(String): Declaration

          
 
Class Summary: NamespaceDeclaration [Detail]
  +--XML:DTD.NamespaceDeclaration
Field Summary
prefix-: String

          The prefix being declared.
uri-: StringURI

          The absolute URI (plus optional fragment identifier) of the namespace being declared.
Constructor Summary
NewNamespaceDeclaration(String, StringURI): NamespaceDeclaration

          
 
Class Summary: Notation [Detail]
  +---XML:DTD.Declaration
       |
       +--XML:DTD.Notation
Field Summary
baseURI-: URI

          The base URI of the external entity.
public-: String

          Public identifier.
system-: String

          System identifier.
Inherited Fields

From XML:DTD.Declaration:

          name, next

 
Class Summary: RegexpInfo [Detail]
  +--XML:DTD.RegexpInfo
 
Class Summary: SeqCP [Detail]
  +---XML:DTD.CP
       |
       +--XML:DTD.SeqCP
Field Summary
list-: CP

          
Inherited Fields

From XML:DTD.CP:

          cpMode, next

Constructor Summary
InitSeqCP(SeqCP, CPModeType, CP)

          
Inherited Methods

From XML:DTD.CP:

          SetMode, SetNext

 
Type Summary
AttributeType = SHORTINT

          Indicates the type of an attribute.
CPModeType = SHORTINT

          
Char = Char

          Character type used to store names and character data from an XML document.
CharPos = CharPos

          This integer type is used to store the position of a character in the input buffer or in a string.
ContentType = SHORTINT

          
DefaultType = SHORTINT

          Indicates the defaulting mode of an attribute declaration.
ElementWhitespaceType = SHORTINT

          
EntityType = SHORTINT

          Values of this type indicate the type of an entity.
StandaloneType = SHORTINT

          Used to store information about the `standalone' of an XML declaration.
String = CharArray

          A pointer to an array of Char.
StringURI = POINTER TO ARRAY OF CHAR

          
StringVar = ARRAY OF Char

          An open array with Char as element type.
Procedure Summary
GetString(VAR ARRAY OF Char, LONGINT, LONGINT): String

          
GetStringURI(VAR ARRAY OF CHAR, LONGINT, LONGINT): StringURI

          
GetStringValue(ARRAY OF Char): String

          
Variable Summary
undefAttr-: AttrDecl

          
Constant Summary
attrCDATA

          
attrDefault

          
attrENTITIES

          
attrENTITY

          
attrENUMERATED

          
attrFixed

          
attrID

          
attrIDREF

          
attrIDREFS

          
attrImplied

          
attrNMTOKEN

          
attrNMTOKENS

          
attrNOTATION

          
attrRequired

          
contentANY

          
contentChildren

          
contentEMPTY

          
contentMixed

          
cpOnce

          
cpOptional

          
cpRepeat0

          
cpRepeat1

          
elementWhitespaceNo

          If the document source for a character sequence does not match the S production (for example, because it includes a non-whitespace character, a character reference, or is a CDATA section), then XML:Builder.Characters.elementWhitespace is elementWhitespaceNo.
elementWhitespaceUnknown

          If the document source matches the production S, but the parser does not know if the current element permits only element content, then the character data is flagged as elementWhitespaceUnknown.
elementWhitespaceYes

          This flag is used if the document source matches the production S, the parser is validating, and the current element only permits element content.
entityDocument

          Document entity.
entityExternalDTDSubset

          Entity representing the external DTD subset.
entityExternalGeneral

          External general entity.
entityExternalParameter

          External parameter entity.
entityInternalGeneral

          Internal general entity.
entityInternalParameter

          Internal parameter entity.
entityUnparsed

          Unparsed external general entity.
standaloneNo

          
standaloneNotApplicable

          
standaloneNotPresent

          
standaloneYes

          

Class Detail: AttValue
Field Detail

fragmentList

FIELD fragmentList-: Fragment
Constructor Detail

InitAttValue

PROCEDURE InitAttValue(attValue: AttValue)
Method Detail

Append

PROCEDURE (attValue: AttValue) Append(fragment: Fragment)

Clear

PROCEDURE (attValue: AttValue) Clear()

Flatten

PROCEDURE (attValue: AttValue) Flatten(attrDecl: AttrDecl): String

Returns the string representation of the attribute value attrDecl. If attrDecl is not NIL, and the attribute's type is not attrCDATA, then sequences of spaces are collapsed into a single space, and leading and trailing whitespace is removed from the string.


FlattenNorm

PROCEDURE (attValue: AttValue) FlattenNorm(attrDecl: AttrDecl; 
                      VAR didNormalization: BOOLEAN): String

Like AttValue.Flatten, but reports if normalization has been done. On completion, didNormalization is TRUE if, and only if, the value was modified by normalizing whitespace.


FlattenValue

PROCEDURE (attValue: AttValue) FlattenValue(normalizeWhitespace: BOOLEAN; 
                       VAR didNormalization: BOOLEAN): String

Returns the string representation of the attribute value attValue. If normalizeWhitespace is TRUE, then sequences of spaces are collapsed into a single space, and leading and trailing whitespace is removed from the string. On completion, didNormalization is TRUE if, and only if, the value was modified by normalizing whitespace.


Length

PROCEDURE (attValue: AttValue) Length(): LONGINT

Calculates the length of the attribute value, as if it were of type CDATA.

 
Class Detail: AttrDecl
Field Detail

default

FIELD default-: DefaultType

defaultValue

FIELD defaultValue-: AttValue

elementName

FIELD elementName-: String

enumeration

FIELD enumeration-: Enumeration

externalMarkupDecl

FIELD externalMarkupDecl-: BOOLEAN

type

FIELD type-: AttributeType
Constructor Detail

InitAttrDecl

PROCEDURE InitAttrDecl(attrDecl: AttrDecl; 
                       elementName: String; 
                       name: String; 
                       type: AttributeType; 
                       enum: Enumeration; 
                       default: DefaultType; 
                       defaultValue: AttValue; 
                       externalMarkupDecl: BOOLEAN)
 
Class Detail: Builder
Field Detail

attributeList

FIELD attributeList-: Declaration

elementNamespace

FIELD elementNamespace-: Namespace

Namespace with element declarations.


geNamespace

FIELD geNamespace-: Namespace

Namespace with general entity declarations.


peNamespace

FIELD peNamespace-: Namespace

Namespace with parameter entity declarations.


rootName

FIELD rootName-: String

Name of the root name, as given in the DTD.

Constructor Detail

Init

PROCEDURE Init(b: Builder)

Initializes the DTD builder. Also registers the predefined general entities `lt', `gt', `amp', `apos', and `quot'.


New

PROCEDURE New(): Builder
Method Detail

AddAttribute

PROCEDURE (b: Builder) AddAttribute(attrDecl: AttrDecl)

AttachAttributes

PROCEDURE (b: Builder) AttachAttributes()

Attaches all attribute declarations in the DTD to the declarations of their element.


IsValidEntityDecl

PROCEDURE (b: Builder) IsValidEntityDecl(name: String; 
                            entityValue: String): BOOLEAN

Tests if the internal entity declaration is legal. If the name name refers to a predefined entity, but entityValue is no legal replacement text for the entity, then this function returns FALSE. Otherwise, it returns TRUE.


NewAttValue

PROCEDURE (b: Builder) NewAttValue(): AttValue

NewAttrDecl

PROCEDURE (b: Builder) NewAttrDecl(elementName: String; 
                      name: String; 
                      type: AttributeType; 
                      enum: Enumeration; 
                      default: DefaultType; 
                      defaultValue: AttValue; 
                      externalMarkupDecl: BOOLEAN): AttrDecl

NewCharacters

PROCEDURE (b: Builder) NewCharacters(source: String; 
                        start: CharPos; 
                        end: CharPos; 
                        createCopy: BOOLEAN): Characters

NewChoiceCP

PROCEDURE (b: Builder) NewChoiceCP(cpMode: CPModeType; 
                      list: CP): ChoiceCP

NewDocumentEntity

PROCEDURE (b: Builder) NewDocumentEntity(baseURI: URI): ExternalEntity

NewElementDecl

PROCEDURE (b: Builder) NewElementDecl(name: String; 
                         contentModel: CP; 
                         externalMarkupDecl: BOOLEAN): ElementDecl

NewEntityRef

PROCEDURE (b: Builder) NewEntityRef(name: String; 
                       entity: Entity): EntityRef

NewEnumeration

PROCEDURE (b: Builder) NewEnumeration(): Enumeration

NewExternalDTD

PROCEDURE (b: Builder) NewExternalDTD(public: String; 
                         system: String; 
                         baseURI: URI): ExternalEntity

NewExternalEntity

PROCEDURE (b: Builder) NewExternalEntity(name: String; 
                            type: EntityType; 
                            public: String; 
                            system: String; 
                            ndata: String; 
                            baseURI: URI; 
                            externalMarkupDecl: BOOLEAN): ExternalEntity

NewInternalEntity

PROCEDURE (b: Builder) NewInternalEntity(name: String; 
                            type: EntityType; 
                            entityValue: String; 
                            externalMarkupDecl: BOOLEAN): InternalEntity

NewNameCP

PROCEDURE (b: Builder) NewNameCP(cpMode: CPModeType; 
                    name: String): NameCP

NewNotation

PROCEDURE (b: Builder) NewNotation(name: String; 
                      public: String; 
                      system: String; 
                      baseURI: URI): Notation

NewSeqCP

PROCEDURE (b: Builder) NewSeqCP(cpMode: CPModeType; 
                   list: CP): SeqCP

SetRootName

PROCEDURE (b: Builder) SetRootName(name: String)
 
Class Detail: CP
Field Detail

cpMode

FIELD cpMode-: SHORTINT

next

FIELD next-: CP
Method Detail

SetMode

PROCEDURE (cp: CP) SetMode(cpMode: SHORTINT)

SetNext

PROCEDURE (cp: CP) SetNext(next: CP)
 
Class Detail: Characters
Field Detail

source

FIELD source-: String

The array slice `source[sourceStart, sourceEnd[' holds the fragment's character data.


sourceEnd

FIELD sourceEnd-: CharPos

sourceStart

FIELD sourceStart-: CharPos
Constructor Detail

InitCharacters

PROCEDURE InitCharacters(chars: Characters; 
                         source: String; 
                         start: CharPos; 
                         end: CharPos)
 
Class Detail: ChoiceCP
Field Detail

list

FIELD list-: CP
Constructor Detail

InitChoiceCP

PROCEDURE InitChoiceCP(choiceCP: ChoiceCP; 
                       cpMode: CPModeType; 
                       list: CP)
 
Class Detail: Declaration
Field Detail

name

FIELD name-: String

Name of the declared object.


next

FIELD next-: Declaration

Next declaration in namespace.

Constructor Detail

InitDeclaration

PROCEDURE InitDeclaration(decl: Declaration; 
                          name: String)
 
Class Detail: ElementDecl
Field Detail

attrNamespace

FIELD attrNamespace-: Namespace

The attribute namespace of the element.


contentModel

FIELD contentModel-: CP

The content model of the element.


contentType

FIELD contentType-: ContentType

Type of the content model.


externalMarkupDecl

FIELD externalMarkupDecl-: BOOLEAN

Set if the entity is declared in an external markup declaration.


idAttr

FIELD idAttr-: AttrDecl

If the element has an ID attribute, then this field refers to its attribute declaration after Builder.AttachAttributes has been called. If the element has no ID attribute, then this field is NIL. If it has multiple ID attributes, it has the value undefAttr.


multipleDecl

FIELD multipleDecl-: BOOLEAN

Set to TRUE, if more than one declaration of this element type appears in the DTD.


notationAttr

FIELD notationAttr-: AttrDecl

If the element has a NOTATION attribute, then this field refers to its attribute declaration after Builder.AttachAttributes has been called. If the element has no NOTATION attribute, then this field is NIL. If it has multiple NOTATION attributes, it has the value undefAttr.


regexp

FIELD regexp-: RegexpInfo

Regular expression contructed for `children' element content.

Constructor Detail

InitElementDecl

PROCEDURE InitElementDecl(elemDecl: ElementDecl; 
                          name: String; 
                          contentModel: CP; 
                          attrNamespace: Namespace; 
                          externalMarkupDecl: BOOLEAN)
Method Detail

IsElementContent

PROCEDURE (elemDecl: ElementDecl) IsElementContent(): BOOLEAN

IsEmpty

PROCEDURE (elemDecl: ElementDecl) IsEmpty(): BOOLEAN

SetMultipleDecl

PROCEDURE (elemDecl: ElementDecl) SetMultipleDecl()

SetRegexp

PROCEDURE (elemDecl: ElementDecl) SetRegexp(regexp: RegexpInfo)
 
Class Detail: Entity
Field Detail

attValue

FIELD attValue: AttValue

This field is used internally by the parser. If an entity is ever expanded within an attribute value, this field holds the expanded text before non-CDATA normalization.


entityValue

FIELD entityValue-: String

This is either the value of an internal entity, or the internalized version of an external entity. For an internal entity, this field is never NIL. This string is not terminated with an 0X, use Entity.LengthValue to determine its length.


expanding

FIELD expanding: BOOLEAN

This field is used internally by the parser. While expanding the entity, it is set to TRUE.


externalMarkupDecl

FIELD externalMarkupDecl-: BOOLEAN

Set if the entity is declared in an external markup declaration.


type

FIELD type-: EntityType

This field indicates the kind of entity. It distinguishes between general/parameter, internal/external, and parsed/unparsed.

Method Detail

IsDocumentEntity

PROCEDURE (entity: Entity) IsDocumentEntity(): BOOLEAN

LengthValue

PROCEDURE (entity: Entity) LengthValue(): LONGINT

Returns the length of the entity's value.


SetEntityValue

PROCEDURE (entity: Entity) SetEntityValue(entityValue: String)
 
Class Detail: EntityRef
Field Detail

entity

FIELD entity: Entity

After the name has been resolved successfully, this field refers to the internal entity declaration that is being referenced.


name

FIELD name-: String

The name of the reference.

Constructor Detail

InitEntityRef

PROCEDURE InitEntityRef(entRef: EntityRef; 
                        name: String; 
                        entity: Entity)
 
Class Detail: Enumeration
Field Detail

nameList

FIELD nameList-: NameNode
Method Detail

Append

PROCEDURE (enum: Enumeration) Append(name: String)

Matches

PROCEDURE (enum: Enumeration) Matches(VAR name: StringVar): BOOLEAN

Returns TRUE, if one of the names listed in the enumeration matches the string name.

 
Class Detail: ExternalEntity
Field Detail

baseURI

FIELD baseURI-: URI

The base URI of the external entity. For a document entity, this is the URI passed to XML:Parser.NewChannel, and therefore may be NIL. For other entities, it is either derived from the public or system identifier, and always present.


codecFactory

FIELD codecFactory-: Factory

The factory object that produced the Unicode decoder that is used to access the files contents. If encoding is NIL, the factory is derived by auto detection. Otherwise, the encoding declaration encoding is used to retrieve it.


encoding

FIELD encoding-: String

The encoding string from the XML or text declaration. NIL, if no encoding is given.


ndata

FIELD ndata-: String

For a parsed entity declaration, this field is NIL. For an unparsed entity, it holds the name of the NDATA.


public

FIELD public-: String

Public identifier of the external entity. May be NIL.


standalone

FIELD standalone-: StandaloneType

The standalone declaration. Only applicable to the document entity.


system

FIELD system-: String

System identifier of the external entity. This field is never NIL.


version

FIELD version-: String

The version string from the XML or text declaration. NIL, if the version is omitted.

Method Detail

IsDocumentEntity

PROCEDURE (entity: ExternalEntity) IsDocumentEntity(): BOOLEAN

Redefines: IsDocumentEntity


SetCodecFactory

PROCEDURE (entity: ExternalEntity) SetCodecFactory(codecFactory: Factory)

SetEncoding

PROCEDURE (entity: ExternalEntity) SetEncoding(encoding: String)

SetStandalone

PROCEDURE (entity: ExternalEntity) SetStandalone(standalone: StandaloneType)

SetVersion

PROCEDURE (entity: ExternalEntity) SetVersion(version: String)
 
Class Detail: Fragment
Field Detail

next

FIELD next-: Fragment

Refers to the next fragment in the list AttValue.fragmentList.

Constructor Detail

InitFragment

PROCEDURE InitFragment(f: Fragment)
 
Class Detail: InternalEntity
 
Class Detail: NameCP
Field Detail

name

FIELD name-: String
Constructor Detail

InitNameCP

PROCEDURE InitNameCP(nameCP: NameCP; 
                     cpMode: CPModeType; 
                     name: String)
 
Class Detail: NameNode
Field Detail

name

FIELD name-: String

next

FIELD next-: NameNode
 
Class Detail: Namespace
Field Detail

declList

FIELD declList-: Declaration

Refers to the first element of the list of declarations. The other declarations can be reached through Declaration.next.

Constructor Detail

NewNamespace

PROCEDURE NewNamespace(): Namespace
Method Detail

Add

PROCEDURE (ns: Namespace) Add(decl: Declaration): BOOLEAN

Adds the declaration decl to the namespace ns. Nothing is done if the namespace already contains a declaration of the same name. In this case, the value FALSE is returned. If the declaration was added to the namespace, then the result is TRUE.


Get

PROCEDURE (ns: Namespace) Get(name: String): Declaration
 
Class Detail: NamespaceDeclaration
Field Detail

prefix

FIELD prefix-: String

The prefix being declared. Syntactically, this is the part of the attribute name following the xmlns: prefix. If the attribute name is simply xmlns, this field is NIL.


uri

FIELD uri-: StringURI

The absolute URI (plus optional fragment identifier) of the namespace being declared. It may be NIL if the attribute name is xmlns.

Constructor Detail

NewNamespaceDeclaration

PROCEDURE NewNamespaceDeclaration(prefix: String; 
                                  uri: StringURI): NamespaceDeclaration
 
Class Detail: Notation
Field Detail

baseURI

FIELD baseURI-: URI

The base URI of the external entity. For a document entity, this is the URI passed to XML:Parser.NewChannel, and therefore may be NIL. For other entities, it is either derived from the public or system identifier, and always present.


public

FIELD public-: String

Public identifier. May be NIL.


system

FIELD system-: String

System identifier. May be NIL.

 
Class Detail: RegexpInfo
 
Class Detail: SeqCP
Field Detail

list

FIELD list-: CP
Constructor Detail

InitSeqCP

PROCEDURE InitSeqCP(seqCP: SeqCP; 
                    cpMode: CPModeType; 
                    list: CP)
 
Type Detail

AttributeType

TYPE AttributeType = SHORTINT

Indicates the type of an attribute. See attrCDATA et al.


CPModeType

TYPE CPModeType = SHORTINT

Char

TYPE Char = Char

Character type used to store names and character data from an XML document.


CharPos

TYPE CharPos = CharPos

This integer type is used to store the position of a character in the input buffer or in a string.


ContentType

TYPE ContentType = SHORTINT

DefaultType

TYPE DefaultType = SHORTINT

Indicates the defaulting mode of an attribute declaration. One of attrRequired, attrImplied, attrDefault, or attrFixed.


ElementWhitespaceType

TYPE ElementWhitespaceType = SHORTINT

EntityType

TYPE EntityType = SHORTINT

Values of this type indicate the type of an entity. See entityInternalGeneral et al.


StandaloneType

TYPE StandaloneType = SHORTINT

Used to store information about the `standalone' of an XML declaration. One of standaloneYes, standaloneNo, standaloneNotPresent, or standaloneNotApplicable.


String

TYPE String = CharArray

A pointer to an array of Char.


StringURI

TYPE StringURI = POINTER TO ARRAY OF CHAR

StringVar

TYPE StringVar = ARRAY OF Char

An open array with Char as element type.

Procedure Detail

GetString

PROCEDURE GetString(VAR string: ARRAY OF Char; 
                    start: LONGINT; 
                    end: LONGINT): String

GetStringURI

PROCEDURE GetStringURI(VAR string: ARRAY OF CHAR; 
                       start: LONGINT; 
                       end: LONGINT): StringURI

GetStringValue

PROCEDURE GetStringValue(string: ARRAY OF Char): String
Variable Detail

undefAttr

VAR undefAttr-: AttrDecl
Constant Detail

attrCDATA

CONST attrCDATA 

attrDefault

CONST attrDefault 

attrENTITIES

CONST attrENTITIES 

attrENTITY

CONST attrENTITY 

attrENUMERATED

CONST attrENUMERATED 

attrFixed

CONST attrFixed 

attrID

CONST attrID 

attrIDREF

CONST attrIDREF 

attrIDREFS

CONST attrIDREFS 

attrImplied

CONST attrImplied 

attrNMTOKEN

CONST attrNMTOKEN 

attrNMTOKENS

CONST attrNMTOKENS 

attrNOTATION

CONST attrNOTATION 

attrRequired

CONST attrRequired 

contentANY

CONST contentANY 

contentChildren

CONST contentChildren 

contentEMPTY

CONST contentEMPTY 

contentMixed

CONST contentMixed 

cpOnce

CONST cpOnce 

cpOptional

CONST cpOptional 

cpRepeat0

CONST cpRepeat0 

cpRepeat1

CONST cpRepeat1 

elementWhitespaceNo

CONST elementWhitespaceNo 

If the document source for a character sequence does not match the S production (for example, because it includes a non-whitespace character, a character reference, or is a CDATA section), then XML:Builder.Characters.elementWhitespace is elementWhitespaceNo.


elementWhitespaceUnknown

CONST elementWhitespaceUnknown 

If the document source matches the production S, but the parser does not know if the current element permits only element content, then the character data is flagged as elementWhitespaceUnknown.


elementWhitespaceYes

CONST elementWhitespaceYes 

This flag is used if the document source matches the production S, the parser is validating, and the current element only permits element content.


entityDocument

CONST entityDocument 

Document entity. It represents the top-level entity of a document, the one that holds the internal DTD subset and the root element.


entityExternalDTDSubset

CONST entityExternalDTDSubset 

Entity representing the external DTD subset.


entityExternalGeneral

CONST entityExternalGeneral 

External general entity.


entityExternalParameter

CONST entityExternalParameter 

External parameter entity. Such entities do not appear in the XML infoset.


entityInternalGeneral

CONST entityInternalGeneral 

Internal general entity.


entityInternalParameter

CONST entityInternalParameter 

Internal parameter entity. Such entities do not appear in the XML infoset.


entityUnparsed

CONST entityUnparsed 

Unparsed external general entity.


standaloneNo

CONST standaloneNo 

standaloneNotApplicable

CONST standaloneNotApplicable 

standaloneNotPresent

CONST standaloneNotPresent 

standaloneYes

CONST standaloneYes