第十九章 控制 XML 元素和属性名称 - 控制简单属性的标签

在支持 XML 的对象中,每个简单属性都被投影为 XML 元素或属性,具体取决于它的映射方式。无论哪种情况,默认情况下, IRIS 属性名称都用作 XML 元素或属性名称。要为属性提供不同的 XML 名称,请指定该属性的 XMLNAME 参数。

Property Zip As %String (XMLNAME = "PostalCode");

上一个示例的输出将如下所示:

<HomeAddress>
  <Street>5064 Elm Street</Street>
  <City>Jackson</City>
  <State>PA</State>
  <PostalCode>27621</PostalCode>
</HomeAddress>

请注意,如果属性又是另一个 IRIS 对象类,则 XML 映射会忽略该类的类名和 XMLNAME 参数。例如,假设 Person 类有一个名为 Address 的属性,该属性是对 Address 类的引用。 Person 对象的投影如下所示:

<Person>
 <Name>Zevon,Juanita Q.</Name>
 <DOB>1986-08-18</DOB>
 <Address>
   <Street>5064 Elm Street</Street>
   <City>Jackson</City>
   <State>PA</State>
   <Zip>27621</Zip>
 </Address>
</Person>

<Address> 元素的名称由 Person 对象中相应属性的名称确定。这是因为地址对象是正在导入或导出的对象的属性(而不是直接导入或导出的对象)。

与任何其他属性一样,可以通过指定属性的 XMLNAME 参数来覆盖此名称。例如:

Property Address As MyApp.Address (XMLNAME = "EmployeeAddress");

上一个示例的输出将如下所示:

<Person>
 <Name>Zevon,Juanita Q.</Name>
 <DOB>1986-08-18</DOB>
 <EmployeeAddress>
   <Street>5064 Elm Street</Street>
   <City>Jackson</City>
   <State>PA</State>
   <Zip>27621</Zip>
 </EmployeeAddress>
</Person>
12-04 00:05