Un cas de bordure XSD autorise-t-il un contenu d'élément XML (non-masqué) à l'intérieur d'un noeud de texte? Par exemple. pouvez-vous mettre un élément CDATA à l'intérieur d'un tag défini comme xs: string et le faire valider (sans déclarer de contenu mixte)?Un cas de bordure XSD autorise-t-il le contenu d'éléments XML à l'intérieur d'un noeud de texte?
0
A
Répondre
0
Si vous avez un élément qui contient une chaîne-à-dire
<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid Studio 2018 (https://www.liquid-technologies.com)-->
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Root" type="xs:string" />
</xs:schema>
Ensuite, qui peut contenir CDATA-à-dire
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\Temp\XSDFile2.xsd">
Optional Text
<![CDATA[
<someXmlData></someXmlData>
]]>
Optional Text
</Root>
Comme ce passe bien que certains parseurs il peut s'évadés revenir, mais les deux sont valides et équivalents.
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="XSDFile2.xsd">
Optional Text
<someXmlData></someXmlData>
Optional Text
</Root>