我可以使用以下方法使用DTD实体声明替换xml属性值
//in DTD
<!ENTITY varchar "VARCHAR(200)">
// In xml
<column name="attachment_url" type="&varchar;"/>
现在我想替换像
这样的xml标签 <column name="attachment_url" type="VARCHAR(200)"/>
使用DTD实体。
我尝试了
<!ENTITY full_coulumn "<column name="attachment_url" type="VARCHAR(200)"/>">
然后我收到错误
Unexpected column with text: <column name="attachment_url" type="VARCHAR(200)
"/>
是否可以用dtd Entity替换整个xml标签?我怎样才能做到这一点?
我尝试使用liquibase xml文件执行此操作。
答案 0 :(得分:1)
不要逃避实体声明中的标记;通过这样做,您向处理器发信号通知实体的替换文本是一串字符,而不是标记。你想要的是:
<!ENTITY full_column "<column name='attachment_url'
type='VARCHAR(200)' />">