
上QQ阅读APP看书,第一时间看更新
5.1 自定义元素解析原理
首先讲解自定义元素的解析入口,这一过程从扩展元素extensionElements的解析开始,自定义元素的解析过程如代码清单5-1所示。
代码清单5-1 BpmnXMLUtil.java

在上述代码中,第2行实例化ExtensionElement类,该类作为扩展元素的属性承载类存在,第3行获取元素的名称,第4~5行获取命名空间,第7~8行获取元素的命名空间前缀,第10~21行遍历并解析该元素下的所有属性(名称、属性值、命名空间以及元素中的子元素),该操作隐含透露如下信息:自定义元素的属性个数不限,元素定义多少个属性,程序就解析多少个属性。第32行开始解析当前元素中的子元素信息。