How to support multiple xs:choice ?
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
The report provides an XML schema and a Rust AngTag example with two #[serde(rename="$value")] fields, which fail with a duplicate-field error. Start by reading quick-xml’s Serde deserialization handling for $value and check how it treats multiple choice fields. Done means a structure can deserialize the demonstrated XML with the two distinct XSD choices represented; no implementation files or tests are named in the issue.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I want to deserialize the following xml:
<any-tag>
<field>...</field>
<choice>
<one>...</one>
<m>....</m>
</choice>
</any-tag>
"one" and "m" belong to different xsd:choice.
The full schema looks like this:
<xsd:complexType name="any-tag">
<xsd:element name="field" type="xsd:string" minOccurs="1" maxOccurs="1"/>
<xsd:choice>
<xsd:element name="one" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="two" type="xsd:string" minOccurs="0" maxOccurs="1"/>
</xsd:choice>
<xsd:choice>
<xsd:element name="m" type="xsd:string" minOccurs="0" maxOccurs="1"/>
<xsd:element name="n" type="xsd:string" minOccurs="0" maxOccurs="1"/>
</xsd:choice>
</xsd:complexType>
I define a structure like this
#[derive(Serialize, Deserialize, Debug)]
pub struct AngTag{
#[serde(rename="$value")]
choice_one:X,
#[serde(rename="$value")]
choice_two:Y,
field:String
}
I get an error:"thread 'main' panicked at 'called Result::unwrap() on an Err value: Custom("duplicate field $value")"
- Lenguaje dominante
- Rust
- Estrellas
- 1.6k
- Forks
- 299
- Merge medio
- 2 d 4 h
- PR fusionados (30 d)
- 9
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de tafia/quick-xml
-
Parser accepts an empty element or attribute namePosiblemente ocupada @ychampion la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
DecodingReader::set_encoding panics when the XML declaration is longer than 64 bytesPosiblemente ocupada @emschwartz la tomó hace 4 días. Abiertobug encoding
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
tafia/quick-xml#1040 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
encoding optimization
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
tafia/quick-xml#1039 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
optimization question
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 4/5 1-2 días Aptitud para principiantes 53/100
tafia/quick-xml#1035 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de tafia/quick-xml
Issues similares
-
[Bug]: opencode_go chat route drops reasoning_effort (even 'none'), while the same endpoint honors it via custom_llm_provider=openaiPosiblemente ocupada @arvindkumar-ship-it la tomó hoy. Abiertollm translation
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
BerriAI/litellm#51871 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
comp-formats
Dificultad 2/5 Medio día Aptitud para principiantes 64/100
ClickHouse/ClickHouse#131694 ·
Los mantenedores suelen responder en 1 día
-
cli: `execCargoMetadata` decodes stdout per chunk, corrupting non-ASCII paths across pipe boundariesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
C-Bug S-Needs-Triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
bevyengine/bevy#26558 ·
Los mantenedores suelen responder en 2 días