2009-07-01 11 views
8

Vorrei sapere se esistono standard di codifica xml.Esistono standard di codifica per i file XML?

<?xml version="1.0"?> 
<overlay id="tutorboy-toolbar-Overlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> 
    <toolbox id="navigator-toolbox"> 
     <toolbar id="tutorboy-toolbar-Toolbar" 
        toolbarname="TutorBoy Toolbar" 
        accesskey="T" 
        class="chromeclass-toolbar" 
        context="toolbar-context-menu" 
        hidden="false" 
        persist="hidden"> 
       <toolbarbutton label="TutorBoy" 
           id="tutorboy-toolbar-button-home" 
           accesskey="d" 
           image="chrome://tutorboy-toolbar/skin/logo.png" 
           oncommand="loadURL('http://tutorboy.com');" 
           tooltiptext="Click here to go to the Tutorboy.com homepage." /> 

è consentito questo modo di sistemazione?

+0

Siete interessati a "standerd" o "standers"? –

+0

Vaga domanda, si prega di elaborare. – VolkerK

+1

xml non è un linguaggio di programmazione;) –

risposta

13

Il W3C definisce una raccomandazione specifica XML: http://www.w3.org/TR/REC-xml/

Dal momento che avete limitato la tua domanda per la formattazione XML, non c'è nessuna risposta "universale" per come il vostro XML deve essere formattato. Oltre a conformarsi a qualsiasi DTD o schema con cui si abbia a che fare, l'importanza di una particolare spaziatura/indentazione dei tag risiede nelle persone che gestiranno i tuoi dati.

Se si stanno creando dati XML da inviare attraverso una rete come parte di un servizio Web o di qualche tipo, in generale si vorrà eliminare tutti gli spazi non necessari prima del trasferimento per ottimizzare la velocità di trasferimento dei dati . Ciò significa nessuna interruzione di riga, nessun rientro, nessun commento.

Se si sta creando un documento XML che altri leggeranno/modificheranno su base regolare, ovviamente si vorrà prendere in considerazione la possibilità di tenere il documento leggibile. Ciò che costituisce "leggibile" è determinato da tutti coloro che sono coinvolti in quella particolare squadra o progetto.

+1

Precisamente. Lo spazio bianco dovrebbe essere completamente privo di significato per la semantica e la sua presenza o assenza è una questione di gusto. E poiché XML è principalmente * non * destinato alla leggibilità umana, la formattazione non è di particolare interesse. – GalacticCowboy

+2

@Jeff L Sono sicuro che quando fu concepito per la prima volta non ci si aspettava che l'XML fosse ampiamente consumato dagli umani. Ma io sono un programmatore di contratto per .Net/WPF e Android. In entrambi gli ambienti sono aggiornato ogni giorno con i gomiti in XML profondo perché è il loro linguaggio di formattazione dell'interfaccia utente. Microsoft ha uno strumento chiamato Expression Blend per consentire la progettazione WYSIWYG di XAML, ma è uno strumento molto costoso, quindi non l'ho mai visto in uso in nessun negozio in cui ho lavorato. Il visual designer grafico di Visual Studio richiede un ampio aggiustamento del XAML risultante. Android/Eclipse richiede praticamente la codifica manuale. – user316117

+1

@GalacticCowboy "I documenti XML devono essere leggibili e ragionevolmente chiari." da http://www.w3.org/TR/REC-xml/#sec-origin-goals - punto 6. –

2

http://en.wikipedia.org/wiki/XML

alle voci "ben formati"

non ci sono molti standard in quanto è pensata per essere molto flessibile.

+0

In particolare, l'XML inviato non è ben formato. Quelli che ti interessano sono: ci può essere solo un elemento di livello root, e ogni tag che non si chiude automaticamente (non termina con />) deve avere un tag di chiusura. – GalacticCowboy

4

Beh, vorrei suggerire guardando

http://www.xfront.com/BestPracticesHomepage.html oi risultati di qualsiasi ricerca google sotto XML migliori pratiche.

Direi che gli standard includono il collegamento a un file XSD, caratteri di escape corretti; etc etc

3

C'è una formattazione di riferimento, XML Canonical, che è implementata in strumenti come xmllint (opzione --c14n). Questi strumenti possono quindi essere usati come graziose stampanti.

Ma ovviamente non sei obbligato a usarlo. Come ogni regola di formattazione, è una questione di gusti. Basta essere coerenti.

+0

In realtà questo è il tipo di standard di formattazione. IMHO questo risponde alla domanda. – Boldewyn

+1

Tuttavia, questo non standardizzerà il rientro. xml-c14n è schema-agnostico e quindi conserva la maggior parte degli spazi bianchi (come il rientro) quando si converte un documento nella sua forma canonica. Senza conoscere lo schema, non è possibile sapere quale spazio bianco è semanticamente importante. Quello che sembra uno spazio bianco di indentazione potrebbe essere un contenuto semanticamente importante negli elementi [mixed content] (http://www.w3.org/TR/REC-xml/#sec-mixed-content). –

0

Ti suggerisco di dare un'occhiata a XMLPatterns. Non troverai suggerimenti di "stile di codifica", ma troverai modelli di design interessanti (a la GangOfFour) per la struttura dei documenti XML.

Per "stile di codifica", vorrei controllare gli esempi e provare a imitarli. In caso di dubbi, prova diverse strategie e trova quello che è chiaro e accattivante. La mia opinione sul tuo esempio è positiva. i nomi di tag/attributi possono tuttavia essere un problema: minuscole non spaziate, minuscole sottolineatura minuscole, caso cammello, caso maiuscole di cammello?

1

come regola generale: Inserire i dati in elementi separati e i metadati negli attributi.

Problemi correlati