Content-type: text/html
onsgmls [-BCdeghlnpRrsuvx] [-atype_lien] [-Aarchitecture] [-bbctf] [-csysid...] [-Drépertoire] [-Eerreurs_max] [-ffichier] [-inom] [-ooption_sortie...] [-tfichier] [-wtype_avertissement...] [sysid...]
onsgmls analyse et valide le document SGML dont l'entité document est spécifiée par les identificateurs système [sysid...] et affiche sur la sortie standard une représentation texte simple de son jeu d'informations de structure des éléments (NdT : Element Structure Information Set). (Il s'agit de l'ensemble d'informations sur lequel une application structurée conforme à SGML devrait agir.) Lorsque plusieurs identificateurs système sont spécifiés, les entités correspondantes sont concaténées pour former l'entité document. Ainsi, l'entité document peut être répartie sur plusieurs fichiers ; par exemple, la déclaration SGML, le prologue et les instances du document peuvent chacun se trouver dans des fichiers séparés. Si aucun identificateur système n'est spécifié, alors onsgmls lira l'entité document depuis l'entrée standard. Un identificateur système, sur la ligne de commande, de valeur « - » peut être utilisé pour faire référence à l'entrée standard. (Normalement, dans un identificateur système, <OSFD>0 est utilisé pour se référer à l'entrée standard.)
Les options suivantes sont disponibles :
Si l'option -tnom_de_fichier est également spécifiée, alors le nom de fichier indiqué servira de préfixe aux sysid pour composer les noms de fichiers du résultat RAST (NdT : Reference Application for SGML Testing) pour chaque sysid.
<!ENTITY % nom "INCLUDE">
au début du sous-ensemble de déclaration de type de document dans l'entité document SGML. Puisque que des définitions répétées d'une entité sont ignorées, cette définition aura la préséance sur toutes autres définitions de cette entité dans la déclaration de type de document. Plusieurs options -i sont permises. Si la déclaration SGML remplace le nom réservé INCLUDE, alors le nouveau nom réservé sera le texte de remplacement de l'entité. Typiquement, la déclaration de type de document contiendra
<!ENTITY % nom "IGNORE">
et utilisera %nom; dans la spécification du mot clé de statut d'une déclaration de section marquée. Dans ce cas, l'effet de l'option sera que la section marquée ne sera pas ignorée.
entity Produit les définitions de toutes les entités générales, pas seulement pour les entités de données ou « subdoc » qui sont référencées ou nommées dans un attribut ENTITY ou ENTITIES.
id Distingue les attributs dont la valeur déclarée est ID.
line Produit des commandes « L » donnant le numéro de ligne et le nom de fichier courants.
included Produit une commande « i » pour les sous-éléments inclus.
empty Produit une commande « e » pour des éléments qui ne sont pas autorisés à avoir une balise fermante, c'est ainsi avec un contenu déclaré « empty » ou avec un attribut de référence de contenu.
notation-sysid Produit une commande « f » avant une commande « N », si un identificateur système peut être généré pour cette notation.
nonsgml Dans le mode de jeu de caractères fixé, produit des séquences d'échappement pour les caractères de données non SGML. Les caractères de données non SGML peuvent être le résultat d'appels de caractères numériques.
data-attribute Produit en sortie le nom et les attributs de notation pour les attributs DATA. Autrement, les attributs DATA sont traités comme des attributs CDATA. Pour plus de détails, voir la clause 4.4.3 de l'annexe K de la norme ISO 8879.
comment Produit en sortie une commande « _ » avec les contenus d'un commentaire. Plusieurs commentaires dans une seule déclaration de commentaire produiront plusieurs commandes « _ » distinctes, comme si les commentaires étaient chacun dans une déclaration de commentaire séparée.
omitted Produit en sortie une commande « o » avant une commande qui était impliquée par le document d'entrée mais omise du balisage réel. Cela affecte actuellement les commandes « ( », « ) » et « A ».
tagomit Comme omitted, mais seulement pour les commandes « ( » et « ) »
attromit Comme omitted, mais seulement pour les commandes « A »
Plusieurs options -o sont permises.
xml Avertit sur les constructions non permises par XML.
mixed Avertit sur les modèles de contenu mixte qui ne permettent nulle part « #PCDATA ».
sgmldecl Avertit sur différentes constructions douteuses dans la déclaration SGML.
should Avertit sur différentes recommandations faites dans l'ISO 8879 avec lesquelles le document n'est pas conforme. (Les recommandations sont exprimées avec « should », ce qui est distinct des exigences qui sont généralement exprimées avec « shall »).
default Avertit sur les références utilisant l'entité par défaut.
duplicate Avertit sur les déclarations d'entité dupliquées.
undefined Avertit sur les éléments non définis : éléments utilisés dans la DTD mais non définis.
unclosed Avertit sur les balises ouvrantes et fermantes non terminées.
empty Avertit sur les balises ouvrantes et fermantes vides.
net Avertit sur les balises ouvrantes autorisant les balises fermantes nulles, et sur les balises fermantes nulles (NdT : net=null end tag).
min-tag Avertit sur les balises ouvrantes et fermantes minimisées. Équivaut à une combinaison des avertissements « unclosed », « empty » et « net ».
unused-map Avertit sur les tables d'appels abrégés (NdT : short reference maps) inutilisées : tables déclarées dans une déclaration de table d'appels abrégés, mais jamais utilisées dans une déclaration d'utilisation d'appels abrégés dans la DTD. (NdT : pour plus d'informations sur les appels abrégés, vous pouvez consulter la page, en anglais, http://www.sgml.u-net.com/book/sgml-7.htm#SHORTREF)
unused-param Avertit sur les entités paramètres définies mais non utilisées dans une DTD. Les entités paramètres internes inutilisées dont le texte est INCLUDE ou IGNORE ne produisent pas d'avertissement.
notation-sysid Avertit sur les notations pour lesquelles aucun identificateur système n'a pu être généré.
all Avertit sur les conditions qui pourraient être évitées (de l'avis de l'auteur). Équivalent à : « mixed », « should », « default », « undefined », « sgmldecl », « unused-map », « unused-param », « empty » et « unclosed ».
immediate-recursion Avertit sur les éléments immédiatement récursifs. Pour plus de détails, voir la clause 2.2.5 de l'annexe K de la norme ISO 8879.
fully-declared Avertit si l'instance de document n'est pas pleinement déclarée. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie IMPLYDEF ATTLIST NO ELEMENT NO ENTITY NO NOTATION NO. Pour plus de détails, voir la clause 2.2.1 de l'annexe K de la norme ISO 8879.
fully-tagged Avertit si l'instance de document n'est pas pleinement balisée. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie DATATAG NO, RANK NO, OMITTAG NO, SHORTTAG STARTTAG EMPTY NO et SHORTTAG ATTRIB OMITNAME NO. Pour plus de détails, voir la clause 2.2.2 de l'annexe K de la norme ISO 8879.
amply-tagged, amply-tagged-recursive Avertit si l'instance de document n'est pas amplement balisée. Les éléments définis implicitement peuvent être immédiatement récursifs si amply-tagged-recursive est spécifié. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie DATATAG NO, RANK NO, OMITTAG NO, SHORTTAG ATTRIB OMITNAME NO et soit IMPLYDEF ELEMENT ANYOTHER ou IMPLYDEF ELEMENT YES. Pour plus de détails, voir la clause 2.2.4 de l'annexe K de la norme ISO 8879.
type-valid Avertit si l'instance de document n'est pas valide par le type. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie VALIDITY YES. Pour plus de détails, voir la clause 2.2.3 de l'annexe K de la norme ISO 8879.
entity-ref Avertit sur les appels d'entités non prédéfinies. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie ENTITIES REF NONE. Pour plus de détails, voir la clause 2.3.2 de l'annexe K de la norme ISO 8879.
external-entity-ref Avertit sur les appels d'entités externes. Cela inclut les références à un sous-ensemble de DTD externe. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie ENTITIES REF INTERNAL. Pour plus de détails, voir la clause 2.3.3 de l'annexe K de la norme ISO 8879.
integral Avertit si l'instance de document n'est pas intégralement stockée. Cela a pour effet de modifier la déclaration SGML afin qu'elle spécifie ENTITIES INTEGRAL YES.Pour plus de détails, voir la clause 2.3.1 de l'annexe K de la norme ISO 8879.
Un avertissement peut être désactivé en utilisant son nom préfixé par « no- ». Ainsi -wall -wno-duplicate active tous les avertissements sauf ceux concernant les déclarations d'entités dupliquées.
Les valeurs suivantes de type_avertissement désactivent les erreurs :
no-idref Ne signale pas d'erreur pour une valeur de référence à un ID qui n'est présent dans aucun élément. Chaque attribut déclaré en tant que « idref » se comportera comme s'il avait été déclaré en tant que « name ».
no-significant Ne produit pas d'erreur lorsqu'un caractère qui n'est pas un caractère significatif dans la syntaxe concrète de référence apparaît dans une chaîne littérale de la déclaration SGML. Cela peut être utile avec certaines batteries de test boguées.
no-valid N'exige pas que le document soit valide par le type. Cela a pour effet de modifier la déclaration SGML pour qu'elle spécifie VALIDITY NOASSERT et IMPLYDEF ATTLIST YES ELEMENT YES. Une option -wvalid a pour effet de modifier la déclaration SGML pour qu'elle spécifie VALIDITY TYPE et IMPLYDEF ATTLIST NO ELEMENT NO. Si ni -wvalid ni -wno-valid ne sont spécifiées, alors les VALIDITY et IMPLYDEF spécifiées dans la déclaration SGML seront utilisées.
no-afdr Ne produit pas d'erreur lorsque les fonctionnalités de notation AFDR des méta-DTDs sont utilisées. Les erreurs sont normalement produites lors de l'analyse des DTDs, mais supprimées lors de l'analyse des méta-DTDs.
Les options suivantes sont également acceptées afin d'assurer une compatibilité descendante avec sgmls :
ospent(1), ospam(1), onsgmlnorm(1), osx(1)
Alain Portal <aportal AT univ-montp2 DOT fr>, 16 juin 2004
Je remercie infiniment Éric Bischoff sans lequel cette traduction aurait eu du mal à voir le jour.
Jean-Marc Destabeaux <jmdestabeaux AT free DOT fr>
Il est possible que cette traduction soit imparfaite ou périmée. En cas de doute, veuillez vous reporter au document original en langue anglaise fourni avec le programme.