Sto ricevendo un messaggio xml con gli elementi dei nomi delle variabili sconosciute ... cioè non sono predefiniti ...come posso definire un file xsd che consente di elementi (caratteri jolly) sconosciuti?
So solo che possono esserci 0 o più di questi elementi, a parte altri che sono obbligatoria ...
ad esempio
<root>
<service>my service</service>
<resource>my resource</resource>
<action>update</action>
<parameters>
<field1>value1</field1>
<field2>value2</field2>
<field3>value3</field3>
</parameters>
</root>
Cioè, non so cosa sarà passato come "parametri", so solo ci saranno 0 o più elementi con un valore, non più profondo tag nidificazione consentito ....
Stavo pensando a qualcosa di simile
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:element name="service" type="xs:string" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="resource" type="xs:string" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="action" type="xs:string" minOccurs="1" maxOccurs="1" nillable="false"/>
<xs:element name="parameters">
<xs:complexType>
<xs:element name="*" maxOccurs="unbounded">
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
naturalmente, la parte più difficile è
<xs:element name="*" maxOccurs="unbounded">
è possibile fare Sucha una cosa?
come è possibile definire un file xsd che convalida tale messaggio?
-
ho controllato il riferimento W3C presso
http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#NCName
e dice:
"Il · spazio lessicale · del NCName è l'insieme di tutte le stringhe che · partita · La produzione NCName di [Namespace in XML]. "
quindi cosa significa?
inoltre ... potresti consigliarmi un modo semplice per verificare la conformità con una definizione xsd?