2012-11-30 17 views
7

Eventuali duplicati:
What is the correct way to represent null XML elements?Modo standard per rappresentare valori di attributo nulli in XML?

C'è un modo standard per rappresentare i valori degli attributi nulli in XML?

Abbiamo un formato XML esistente che prevede frammenti simili a:

<items> 
    <item key="key_goes_here" value="value_goes_here" /> 
    ... 
</items> 

Il formato originale non ha previsto la necessità di distinguere tra un valore nullo ed un valore di stringa vuota - tuttavia che è importante (adesso).

Il mio istinto dice di creare un nuovo formato che evita gli attributi per i valori Null, e utilizzare gli elementi per loro, invece:

<items> 
    <item key="key_goes_here_and_is_never_null"> 
    <value xsi:nil="true" /> 
    </item> 
</items> 

Detto questo, preferisco tenere attributi se c'è uno standard modo per rappresentano valori di attributo nulli in XML.

+12

Come è questo un duplicato esatto? La mia domanda riguarda attributi con valori nulli, non elementi con valori null? – jglouie

+1

Questo non è in alcun modo un duplicato. Gli attributi non sono elementi. – Pxtl

risposta

4

Non so di qualsiasi standard, ma come circa usando

<item key="key" /> 

per gli articoli che non hanno un valore,

<item key="key"> 
    <value /> 
</item> 

per gli elementi che hanno una stringa vuota come valore e

<item key="key"> 
    <value>This is the value</value> 
</item> 

per articoli che hanno effettivamente un valore?

+0

Grazie - C'è un vantaggio o una differenza prevista tra e ? – jglouie

+0

@LemonBeagle: Ad essere onesti, non ho mai visto quest'ultimo, ma non sono un esperto di XML. Mi sembra che un semplice tag vuoto trasmetta il messaggio bene ed è facile da capire. –

+1

+1 Vorrei aggiungere che è possibile definire questo nello schema rendendo l'attributo "valore" opzionale ('opzionale =" true "' Credo). – wds