Pregunta

Estoy escribiendo algunos archivos XSD para la comunicación del servicio web entre una aplicación y SharePoint. Estoy tratando de hacer que mis parámetros sean "requeridos", pero incluso si pongo Minoccurs en 1, no podrían especificarse ...

como puedo resolver este problema? Aquí está uno de los míos XSD:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="RemoveGroup"
targetNamespace="http://tempuri.org/RemoveGroup.xsd"
elementFormDefault="qualified"
xmlns="http://tempuri.org/RemoveGroup.xsd"
xmlns:mstns="http://tempuri.org/RemoveGroup.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
<xs:element name="RemoveGroup">
<xs:complexType>
  <xs:sequence>
    <xs:element name="tt_group_id" type="xs:long" />
    <xs:element name="tt_network_id" type="xs:string"/>
  </xs:sequence>
  </xs:complexType>
 </xs:element>
 </xs:schema>

Espero que haya una manera de no escribir a Houndred de "if (input.parameter! = Null)" ...

¿Fue útil?

Solución

Usando minOccurs="1" en cualquiera <element/> o <sequence/> El nivel es lo correcto. ¿Qué error específico estás recibiendo?

ACTUALIZAR

En realidad dentro de un <sequence/> Los analizadores deben esperar exactamente una instancia de un elemento

ACTUALIZAR

Su analizador puede estar emitiendo errores como eventos que debe manejar para capturar los errores: muchos analizadores comunes tienen este comportamiento.

Algo que podría causar un error es un valor nulo en el long Tipo simple: este tipo no permite espacios en blanco. Si desea indicar que se le permiten nulos, debe usar nil=true del espacio de nombres http://www.w3.org/2001/XMLSchema-instance.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top