本文整理汇总了Java中org.apache.xmlbeans.XmlObject.substitute方法的典型用法代码示例。如果您正苦于以下问题:Java XmlObject.substitute方法的具体用法?Java XmlObject.substitute怎么用?Java XmlObject.substitute使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.xmlbeans.XmlObject
的用法示例。
在下文中一共展示了XmlObject.substitute方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: qualifySubstitutionGroup
import org.apache.xmlbeans.XmlObject; //导入方法依赖的package包/类
/**
* Qualifies a valid member of a substitution group. This method tries to use the
* built-in {@link XmlObject#substitute(QName, SchemaType)} and if succesful returns
* a valid substitution which is usable (not disconnected). If it fails, it uses
* low-level {@link XmlCursor} manipulation to qualify the substitution group. Note
* that if the latter is the case the resulting document is disconnected and should
* no longer be manipulated. Thus, use it as a final step after all markup is included.
*
* If newType is null, this method will skip {@link XmlObject#substitute(QName, SchemaType)}
* and directly use {@link XmlCursor}. This can be used, if you are sure that the substitute
* is not in the list of (pre-compiled) valid substitutions (this is the case if a schema
* uses another schema's type as a base for elements. E.g. om:Observation uses gml:_Feature
* as the base type).
*
* @param xobj
* the abstract element
* @param newInstance
* the new {@link QName} of the instance
* @param newType the new schemaType. if null, cursors will be used and the resulting object
* will be disconnected.
* @return if successful applied {@link XmlObject#substitute(QName, SchemaType)} a living object with a
* type == newType is returned. Otherwise null is returned as you can no longer manipulate the object.
*/
public static XmlObject qualifySubstitutionGroup(XmlObject xobj, QName newInstance, SchemaType newType) {
XmlObject substitute = null;
if (newType != null) {
substitute = xobj.substitute(newInstance, newType);
if (substitute != null && substitute.schemaType() == newType
&& substitute.getDomNode().getLocalName().equals(newInstance.getLocalPart()))
{
return substitute;
}
}
XmlCursor cursor = xobj.newCursor();
cursor.setName(newInstance);
QName qName = new QName("http://www.w3.org/2001/XMLSchema-instance", "type");
cursor.removeAttribute(qName);
cursor.toNextToken();
if (cursor.isNamespace()) {
cursor.removeXml();
}
cursor.dispose();
return null;
}
示例2: qualifySubstitutionGroup
import org.apache.xmlbeans.XmlObject; //导入方法依赖的package包/类
/**
* Qualifies a valid member of a substitution group. This method tries to use the
* built-in {@link XmlObject#substitute(QName, SchemaType)} and if succesful returns
* a valid substitution which is usable (not disconnected). If it fails, it uses
* low-level {@link XmlCursor} manipulation to qualify the substitution group. Note
* that if the latter is the case the resulting document is disconnected and should
* no longer be manipulated. Thus, use it as a final step after all markup is included.
*
* If newType is null, this method will skip {@link XmlObject#substitute(QName, SchemaType)}
* and directly use {@link XmlCursor}. This can be used, if you are sure that the substitute
* is not in the list of (pre-compiled) valid substitutions (this is the case if a schema
* uses another schema's type as a base for elements. E.g. om:Observation uses gml:_Feature
* as the base type).
*
* @param xobj
* the abstract element
* @param newInstance
* the new {@link QName} of the instance
* @param newType the new schemaType. if null, cursors will be used and the resulting object
* will be disconnected.
* @return if successful applied {@link XmlObject#substitute(QName, SchemaType)} a living object with a
* type == newType is returned. Otherwise null is returned as you can no longer manipulate the object.
*/
public static XmlObject qualifySubstitutionGroup(XmlObject xobj, QName newInstance, SchemaType newType) {
XmlObject substitute = null;
if (newType != null) {
substitute = xobj.substitute(newInstance, newType);
if (substitute != null && substitute.schemaType() == newType
&& substitute.getDomNode().getLocalName().equals(newInstance.getLocalPart()))
{
return substitute;
}
}
XmlCursor cursor = xobj.newCursor();
cursor.setName(newInstance);
QName qName = new QName("http://www.w3.org/2001/XMLSchema-instance", "type");
cursor.removeAttribute(qName);
cursor.toNextToken();
if (cursor.isNamespace()) {
cursor.removeXml();
}
cursor.dispose();
return null;
}