Symfony Serializer xml,按顺序包含复杂的 xsd 类型

问题描述 投票:0回答:1
xml symfony xsd xmlserializer symfony-serializer
1个回答
0
投票

在大多数 API 中处理此类结构是很棘手的。我首先使用 XSLT 将数据转换为更规则的结构:

<xsl:for-each-group select="*" group-starting-with="EMAIL">
  <ENTRY email="{EMAIL}">
    <xsl:copy-of select="PUBLIC_KEY"/>
  </ENTRY>
</xsl:for-each-group>

这会将其变成:

<ENTRY email="A">
  <PUBLIC_KEY>A1</PUBLIC_KEY>
  <PUBLIC_KEY>A2</PUBLIC_KEY>
</ENTRY>
<ENTRY email="B">
  <PUBLIC_KEY>B1</PUBLIC_KEY>
  <PUBLIC_KEY>B2</PUBLIC_KEY>
</ENTRY>

作为一般原则,如果您的 XML 格式难以处理,最好在处理的第一阶段将其清理,以避免使实际应用程序的逻辑复杂化。

© www.soinside.com 2019 - 2024. All rights reserved.