J'aimerais savoir s'il existe des normes de codage 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." />
6 Réponses :
Plus précisément, le XML affiché n'est pas bien formé. Ceux que vous serez intéressé sont: il ne peut y avoir qu'un seul élément de niveau de racine, et chaque étiquette qui ne se ferme pas automatiquement (ne se termine pas avec />) doit avoir une étiquette de fermeture.
Eh bien, je suggérerais de regarder p>
http://www.xfront.com/bestpracticeshomepage.html ou les résultats de Toute recherche Google sous XML Meilleures pratiques. P>
Je dirais que les normes incluent la liaison à un fichier XSD, des caractères d'évacuation appropriés; etc etc p>
Le W3C définit une recommandation de spécification XML: http://www.w3.org/tr/rec-xml/ p>
Étant donné que vous avez réduit votre question au formatage XML, il n'y a pas de réponse "universelle" à la manière dont votre XML devrait être formaté. Au-delà de la DTD ou du schéma, l'importance de l'espacement particulier / l'indentation de vos tags réside avec les personnes qui traiteront de vos données. P>
Si vous créez des données XML à envoyer à travers un réseau dans le cadre d'un service Web ou une sorte, alors vous allez vouloir généralement éliminer les espaces blancs inutiles avant le transfert afin d'optimiser votre taux de transfert de données. Cela signifie pas de pauses de ligne, aucune indentation, aucun commentaire. P>
Si votre création d'un document XML que d'autres lira régulièrement / modifierez régulièrement, vous voudrez évidemment mettre en évidence le document lisible. Ce qui constitue «lisible» est déterminé par toutes les personnes impliquées dans cette équipe ou projet. P>
Précisément. L'espace blanc devrait être complètement dénué de sens pour la sémantique et sa présence ou sa absence est une question de goût. Et puisque XML est principalement pas i> destiné à la lisibilité humaine, le formatage n'est pas une préoccupation particulière.
@Jeff l Je suis sûr quand il a été conçu pour la première fois que XML ne devait pas être largement consommé par les humains. Mais je suis un programmeur de contrat pour .NET / WPF et Android. Dans les deux environnements, je suis à mes coudes tous les jours dans Deep XML, car c'est leur langue de mise en forme de l'interface utilisateur. Microsoft dispose d'un outil appelé Expression Blend pour permettre la conception de WYSIWYG de XAML, mais c'est un outil très coûteux, donc je ne l'ai jamais vu dans aucun magasin que j'ai travaillé. Le propre concepteur visuel de Visual Studio nécessite une modification étendue du XAML résultant. Android / Eclipse nécessite à peu près le codage de la main.
@Galacticcowboy "Les documents XML doivent être humains et raisonnablement clairs." de w3.org/tr/rec-xml/#sec-origin -goals - Point 6.
Il y a une mise en forme de référence, XML Canonical , implémenté dans des outils comme xmllint (option Mais bien sûr, vous n'êtes pas obligé de l'utiliser. Comme toutes les règles de formatage, c'est une question de goût. Juste être cohérent. P> - C14N code>). Ces outils peuvent donc être utilisés comme jolies imprimantes. P>
En fait, c'est une sorte de norme de formatage. IMHO cela répond à la question.
Cela ne stimulera pas cependant de normaliser l'indentation. XML-C14N est schema-agnostique et préserve donc la plupart des espaces (tels que l'indentation) lors de la conversion d'un document à sa forme canonique. Sans connaître le schéma, il n'est pas possible de savoir quelle blancheur est sémantiquement important. Ce qui ressemble à une empreinte d'indentation pourrait être un contenu sémantiquement important dans contenu mixte a> éléments.
Je vous suggère de jeter un coup d'œil à xmlpatterns . Vous ne trouverez pas de suggestions de "style de codage", mais vous trouverez des modèles de conception intéressants (un gangoffour) pour la structure de documents XML. P>
pour "style de codage", je vérifierais des exemples et j'essaie de les imiter. En cas de doute, essayez différentes stratégies et trouvez celui qui est clair et attrayant. Mon opinion sur votre exemple est positive. Les noms de balises / attributs peuvent cependant être un problème: non minuscule sans espacement, cas d'espacement de chameau, cas de chameau, étui de chameau capitalisé? P>
en règle générale: Mettre des données dans des éléments distincts et des métadonnées dans des attributs. P>
Êtes-vous intéressé par des «normes» ou des «normes»?
Question vague, s'il vous plaît élaborer.
XML n'est pas un langage de programmation;)
Je suppose que l'OP est de demander le formatage XML: Whitpace, pauses de ligne, etc.
En fait, vous avez fourni un extrait XML invalide, donc: non, cela n'est pas autorisé!