org.ccil.cowan.tagsoup

Class Schema


public abstract class Schema
extends java.lang.Object

Abstract class representing a TSSL schema. Actual TSSL schemas are compiled into concrete subclasses of this class.

Field Summary

static int
F_CDATA
static int
F_NOFORCE
static int
F_RESTART
static int
M_ANY
static int
M_EMPTY
static int
M_PCDATA
static int
M_ROOT

Method Summary

void
attribute(String elemName, String attrName, String type, String value)
Add or replace a default attribute for an element type in this schema.
void
elementType(String name, int model, int memberOf, int flags)
Add or replace an element type for this schema.
void
entity(String name, int value)
Add to or replace a character entity in this schema.
ElementType
getElementType(String name)
Get an ElementType by name.
int
getEntity(String name)
Get an entity value by name.
String
getPrefix()
Return the prefix of this schema.
String
getURI()
Return the URI (namespace name) of this schema.
void
parent(String name, String parentName)
Specify natural parent of an element in this schema.
ElementType
rootElementType()
Get the root element of this schema
void
setPrefix(String prefix)
Change the prefix of this schema.
void
setURI(String uri)
Change the URI (namespace name) of this schema.

Field Details

F_CDATA

public static final int F_CDATA
Field Value:
2

F_NOFORCE

public static final int F_NOFORCE
Field Value:
4

F_RESTART

public static final int F_RESTART
Field Value:
1

M_ANY

public static final int M_ANY
Field Value:
-1

M_EMPTY

public static final int M_EMPTY
Field Value:
0

M_PCDATA

public static final int M_PCDATA
Field Value:
1073741824

M_ROOT

public static final int M_ROOT
Field Value:
-2147483648

Method Details

attribute

public void attribute(String elemName,
                      String attrName,
                      String type,
                      String value)
Add or replace a default attribute for an element type in this schema.
Parameters:
elemName - Name (Qname) of the element type
attrName - Name (Qname) of the attribute
type - Type of the attribute
value - Default value of the attribute; null if no default

elementType

public void elementType(String name,
                        int model,
                        int memberOf,
                        int flags)
Add or replace an element type for this schema.
Parameters:
name - Name (Qname) of the element
model - Models of the element's content as a vector of bits
memberOf - Models the element is a member of as a vector of bits
flags - Flags for the element

entity

public void entity(String name,
                   int value)
Add to or replace a character entity in this schema.
Parameters:
name - Name of the entity
value - Value of the entity

getElementType

public ElementType getElementType(String name)
Get an ElementType by name.
Parameters:
name - Name (Qname) of the element type
Returns:
The corresponding ElementType

getEntity

public int getEntity(String name)
Get an entity value by name.
Parameters:
name - Name of the entity
Returns:
The corresponding character, or 0 if none

getPrefix

public String getPrefix()
Return the prefix of this schema.

getURI

public String getURI()
Return the URI (namespace name) of this schema.

parent

public void parent(String name,
                   String parentName)
Specify natural parent of an element in this schema.
Parameters:
name - Name of the child element
parentName - Name of the parent element

rootElementType

public ElementType rootElementType()
Get the root element of this schema

setPrefix

public void setPrefix(String prefix)
Change the prefix of this schema.

setURI

public void setURI(String uri)
Change the URI (namespace name) of this schema.

Licence: Academic Free License 3.0 and/or GPL 2.0