java notation_Java Node.NOTATION_NODE属性代码示例

/**

* A notation declaration

*

* @param name The name of the notation.

* @param identifier An object containing all location information

* pertinent to this notation.

* @param augs Additional information that may include infoset

* augmentations.

*

* @throws XNIException Thrown by handler to signal an error.

*/

public void notationDecl (String name, XMLResourceIdentifier identifier,

Augmentations augs) throws XNIException {

// internal subset string

String publicId = identifier.getPublicId ();

String literalSystemId = identifier.getLiteralSystemId ();

if (fInternalSubset != null && !fInDTDExternalSubset) {

fInternalSubset.append ("

fInternalSubset.append (name);

if (publicId != null) {

fInternalSubset.append (" PUBLIC '");

fInternalSubset.append (publicId);

if (literalSystemId != null) {

fInternalSubset.append ("' '");

fInternalSubset.append (literalSystemId);

}

}

else {

fInternalSubset.append (" SYSTEM '");

fInternalSubset.append (literalSystemId);

}

fInternalSubset.append ("'>\n");

}

// NOTE: We only know how to create these nodes for the Xerces

// DOM implementation because DOM Level 2 does not specify

// that functionality. -Ac

// create full node

if (fDocumentImpl !=null && fDocumentType != null) {

NamedNodeMap notations = fDocumentType.getNotations ();

if (notations.getNamedItem (name) == null) {

NotationImpl notation = (NotationImpl)fDocumentImpl.createNotation (name);

notation.setPublicId (publicId);

notation.setSystemId (literalSystemId);

notation.setBaseURI (identifier.getBaseSystemId ());

notations.setNamedItem (notation);

}

}

// create deferred node

if (fDocumentTypeIndex != -1) {

boolean found = false;

int nodeIndex = fDeferredDocumentImpl.getLastChild (fDocumentTypeIndex, false);

while (nodeIndex != -1) {

short nodeType = fDeferredDocumentImpl.getNodeType (nodeIndex, false);

if (nodeType == Node.NOTATION_NODE) {

String nodeName = fDeferredDocumentImpl.getNodeName (nodeIndex, false);

if (nodeName.equals (name)) {

found = true;

break;

}

}

nodeIndex = fDeferredDocumentImpl.getPrevSibling (nodeIndex, false);

}

if (!found) {

int notationIndex = fDeferredDocumentImpl.createDeferredNotation (

name, publicId, literalSystemId, identifier.getBaseSystemId ());

fDeferredDocumentImpl.appendChild (fDocumentTypeIndex, notationIndex);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值