- java.lang.Object
-
- javax.swing.text.html.parser.DTD
-
- All Implemented Interfaces:
-
DTDConstants
public class DTD extends Object implements DTDConstants
SGML DTD的表示。 DTD描述文档语法,用于解析HTML文档。 它包含元素及其属性列表以及DTD中定义的实体列表。- 另请参见:
-
Element
,AttributeList
,ContentModel
,Parser
-
-
Field Summary
Fields Modifier and Type Field 描述 Element
applet
与applet对应的元素。Element
base
元素对应于基数。Element
body
元素对应于身体。Hashtable<String,Element>
elementHash
散列表包含元素的名称和相应的元素。Vector<Element>
elements
元素的向量Hashtable<Object,Entity>
entityHash
哈希表包含一个Object
和相应的Entity
static int
FILE_VERSION
文件的版本Element
head
元素对应头。Element
html
元素对应于html。Element
isindex
与isindex相对应的元素。Element
meta
元素对应于元。String
name
DTD的名称Element
p
元素对应于p。Element
param
与param对应的元素Element
pcdata
与pcdata对应的元素。Element
title
与标题对应的元素。-
Fields inherited from interface javax.swing.text.html.parser.DTDConstants
ANY, CDATA, CONREF, CURRENT, DEFAULT, EMPTY, ENDTAG, ENTITIES, ENTITY, FIXED, GENERAL, ID, IDREF, IDREFS, IMPLIED, MD, MODEL, MS, NAME, NAMES, NMTOKEN, NMTOKENS, NOTATION, NUMBER, NUMBERS, NUTOKEN, NUTOKENS, PARAMETER, PI, PUBLIC, RCDATA, REQUIRED, SDATA, STARTTAG, SYSTEM
-
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 protected AttributeList
defAttributeList(String name, int type, int modifier, String value, String values, AttributeList atts)
创建并返回一个AttributeList
响应一个新属性。protected ContentModel
defContentModel(int type, Object obj, ContentModel next)
创建并返回新的内容模型。protected Element
defElement(String name, int type, boolean omitStart, boolean omitEnd, ContentModel content, String[] exclusions, String[] inclusions, AttributeList atts)
创建并返回一个Element
。Entity
defEntity(String name, int type, int ch)
创建并返回一个字符Entity
。protected Entity
defEntity(String name, int type, String str)
创建并返回一个Entity
。void
defineAttributes(String name, AttributeList atts)
定义Element
属性。Element
defineElement(String name, int type, boolean omitStart, boolean omitEnd, ContentModel content, BitSet exclusions, BitSet inclusions, AttributeList atts)
返回匹配指定参数的Element
。Entity
defineEntity(String name, int type, char[] data)
定义一个实体。static DTD
getDTD(String name)
返回指定的name
的DTD。Element
getElement(int index)
通过索引获取元素。Element
getElement(String name)
通过名称获取元素。Entity
getEntity(int ch)
获取一个字符实体。Entity
getEntity(String name)
通过名称获取实体。String
getName()
获取DTD的名称。static void
putDTDHash(String name, DTD dtd)
将名称和适当的DTD放在散列表中。void
read(DataInputStream in)
从归档格式重新创建DTD。String
toString()
返回此DTD的字符串表示形式。
-
-
-
字段详细信息
-
name
public String name
DTD的名称
-
pcdata
public final Element pcdata
与pcdata对应的元素。
-
html
public final Element html
元素对应于html。
-
meta
public final Element meta
元素对应于元。
-
base
public final Element base
元素对应于基数。
-
isindex
public final Element isindex
与isindex相对应的元素。
-
head
public final Element head
元素对应头。
-
body
public final Element body
元素对应于身体。
-
applet
public final Element applet
与applet对应的元素。
-
param
public final Element param
与param对应的元素
-
p
public final Element p
元素对应于p。
-
title
public final Element title
与标题对应的元素。
-
FILE_VERSION
public static final int FILE_VERSION
文件的版本- 另请参见:
- Constant Field Values
-
-
构造方法详细信息
-
DTD
protected DTD(String name)
创建具有指定名称的新DTD。- 参数
-
name
- 名称,作为新的DTD的String
-
-
方法详细信息
-
getName
public String getName()
获取DTD的名称。- 结果
- DTD的名称
-
getEntity
public Entity getEntity(int ch)
获取一个字符实体。- 参数
-
ch
- 字符 - 结果
-
Entity
对应ch
字符
-
getElement
public Element getElement(String name)
通过名称获取元素。 如果元素不存在,则创建一个新元素。- 参数
-
name
- 请求的String
- 结果
-
Element
对应name
,可能是新创建的
-
getElement
public Element getElement(int index)
通过索引获取元素。- 参数
-
index
- 请求的索引 - 结果
-
Element
对应index
-
defineEntity
public Entity defineEntity(String name, int type, char[] data)
定义一个实体。 如果Entity
由指定name
,type
,并data
存在,则返回; 否则将创建一个新的Entity
并返回。- 参数
-
name
-该名Entity
为String
-
type
-该类型Entity
-
data
-Entity
的资料 - 结果
-
Entity
要求或新的Entity
如果没有找到
-
defineElement
public Element defineElement(String name, int type, boolean omitStart, boolean omitEnd, ContentModel content, BitSet exclusions, BitSet inclusions, AttributeList atts)
返回匹配指定参数的Element
。 如果不存在,则创建并返回一个新的。- 参数
-
name
-该名Element
-
type
-该类型Element
-
omitStart
-true
如果启动应该省略 -
omitEnd
-true
如果结尾应该省略 -
content
-ContentModel
-
exclusions
- 元素中不能出现的元素集 -
inclusions
- 可以在元素内部发生的元素集 -
atts
-AttributeList
指定Element
- 结果
-
指定了
Element
-
defineAttributes
public void defineAttributes(String name, AttributeList atts)
定义Element
属性。- 参数
-
name
-该名Element
-
atts
-AttributeList
指定Element
-
defEntity
public Entity defEntity(String name, int type, int ch)
创建并返回一个字符Entity
。- 参数
-
name
- 实体的名称 -
type
- 实体的类型 -
ch
- 实体的值(字符) - 结果
-
新角色
Entity
-
defEntity
protected Entity defEntity(String name, int type, String str)
创建并返回一个Entity
。- 参数
-
name
- 实体的名称 -
type
- 实体的类型 -
str
- 实体的数据部分 - 结果
-
新的
Entity
-
defElement
protected Element defElement(String name, int type, boolean omitStart, boolean omitEnd, ContentModel content, String[] exclusions, String[] inclusions, AttributeList atts)
创建并返回一个Element
。- 参数
-
name
- 元素的名称 -
type
- 元素的类型 -
omitStart
-true
如果元素不需要起始标签 -
omitEnd
-true
如果元素不需要结束标签 -
content
- 元素的内容 -
exclusions
- 必须从元素的内容中排除的元素 -
inclusions
- 可以作为元素的内容包含的元素 -
atts
- 元素的属性 - 结果
-
新的
Element
-
defAttributeList
protected AttributeList defAttributeList(String name, int type, int modifier, String value, String values, AttributeList atts)
创建并返回一个AttributeList
响应一个新属性。- 参数
-
name
- 属性的名称 -
type
- 属性的类型 -
modifier
- 属性的修饰符 -
value
- 属性的默认值 -
values
- 属性的允许值(多个值可以用“|”分隔) -
atts
- 元素的以前的属性; 被放置到AttributeList.next
,创建一个链表 - 结果
-
新的
AttributeList
-
defContentModel
protected ContentModel defContentModel(int type, Object obj, ContentModel next)
创建并返回新的内容模型。- 参数
-
type
- 新内容模型的类型 -
obj
- 内容模型的内容 -
next
- 指向下一个内容模型的指针 - 结果
-
新的
ContentModel
-
putDTDHash
public static void putDTDHash(String name, DTD dtd)
将名称和适当的DTD放在散列表中。- 参数
-
name
- DTD的名称 -
dtd
- DTD
-
getDTD
public static DTD getDTD(String name) throws IOException
返回指定的name
的DTD。 如果具有该名称的DTD不存在,则创建并返回一个。 名称中的任何大写字符都将转换为小写。- 参数
-
name
- DTD的名称 - 结果
-
对应于
name
的DTD - 异常
-
IOException
- 如果发生I / O错误
-
read
public void read(DataInputStream in) throws IOException
从归档格式重新创建DTD。- 参数
-
in
- 要阅读的DataInputStream
- 异常
-
IOException
- 如果发生I / O错误
-
-