Attributo condizionale in XML - soluzione più concisa?

6

Ho il compito di impostare il profiling condizionale - un metodo per taggare blocchi di XML con un attributo, che verrà poi utilizzato come valore condizionale per estrarre sottoinsieme di tale XML. Dai un'occhiata ad un'altra definizione / esempio: DITA profiling L'XML è documenti equivalenti ai libri stampati, cioè documenti che vengono spesso guardati da un essere umano, anche se indirettamente. Pertanto sto osservando alcuni requisiti qui:

  1. mantenendo la lista valori breve - in modo che non pregiudichi la leggibilità del documento
  2. essere in grado di elaborare con strumenti XML standard - una lista separata da spazi all'interno di un attributo è probabilmente ancora valida, ma preferirei non usare troppe espressioni regolari per questo
  3. essere ovvio per vari utenti, tra cui terze parti, il cui contenuto va dove
  4. Essere facile da mantenere in futuro

Quindi una soluzione facile è:

<test condition="print epub"/>
<test condition="web kf8 app mobi"/>

Il problema con questo:

  1. Man mano che la lista cresce il valore dell'attributo può essere un po 'prolisso
  2. È necessario dichiarare esplicitamente ogni valore anche se si tratta di uno scenario di questo contro tutto il resto

Pertanto, sto anche esaminando altri approcci come:

  1. Usando i modificatori "+" e "-", Apache htaccess style per sovrascrivere la cascata di default del profiling - per impostazione predefinita tutto il contenuto va ovunque e se vogliamo escludere un po 'diciamo semplicemente "-kindle". Richiede l'analisi dell'intero albero, non è supportato dagli strumenti di modifica e uno ha bisogno di regexp il valore dell'attributo un po 'più profondo ...
  2. Uso di un file intermedio per definire gruppi di valori come "altro" o "non stampabile", esempio di questo in DITA . Permette sia XML concisi che diversi raggruppamenti e valori per ogni documento, ma crea un certo livello di astrazione che potrebbe renderlo un po 'meno ovvio per una terza parte?

Complessivamente, se hai ricevuto tale XML e sei stato incaricato di elaborarlo, quale opzione preferiresti ricevere? Se hai esperienze del genere, anche in aree non correlate come queste, non esitare a commentare!

    
posta Lech Rzedzicki 05.06.2012 - 14:26
fonte

1 risposta

1

potresti usare più di un Attributo, come Condition e Condition1 o qualsiasi cosa avrebbe senso per quello che stai facendo, in modo da avere categorie di Attributi. quindi puoi cercare su un Attributo quando sai che stai cercando qualcosa che sarà elencato sotto un attributo e non un altro, probabilmente accelererebbe un po 'le cose

.. solo un suggerimento, non sono sicuro di sapere di cosa stavi parlando, ma ho pensato di buttarlo lì fuori.

    
risposta data 11.09.2012 - 21:49
fonte

Leggi altre domande sui tag