Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion:
[Actualités]
Windows 11 : le menu Démarrer ne fonctionne parfois plus après la mise à jour
[Actualités]
Test Legacy of Kain Soul Reaver 1&2 Remastered (PS5) - Raziel de retour
[Actualités]
2025 nous apportera le nouvel iPad abordable : nouveaux détails de lancement
[Actualités]
Découvrons quand le Père Noël arrivera pour livrer nos cadeaux, avec Santa Tr...
[Actualités]
Nintendo Switch 2, la date d'annonce et le mois de sortie ont-ils été révélÃ...
[Actualités]
WhatsApp nous permet désormais de réagir à un message en « tirant des confet...
[Actualités]
Les pliables ne décollent pas ? Samsung réduit ses plans de production
[Actualités]
PS5, Sony bannit-il les utilisateurs qui utilisent le navigateur "caché" de la ...
[Actualités]
Test The Thing Remastered (PS5) - Une refonte du classique de 2002
[Actualités]
L'iPhone le plus fin de tous les temps sera aussi le moins cher : ce que l'on sa...
[Articles]
Legacy of Kain Soul Reaver 1&2 Remastered
[Articles]
The Thing Remastered
[Articles]
Mario & Luigi : L'épopée fraternelle
[Articles]
Deel acquiert la plateforme mondiale de gestion de la rémunération Assemble
[Articles]
Xuan Yuan Sword: The Gate of Firmament
[Articles]
Cyber-sécurité : bilan 2024 et regard vers 2025 par Andy Garth, directeur Aff...
[Articles]
Diesel Legacy: The Brazen Age
[Articles]
FANTASIAN Neo Dimension
[Articles]
Fairy Tail 2
[Articles]
Réseaux sociaux inondés d'arnaques deepfake ; Formbook, voleur d'informations ...
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Editer un article
Titre
Mots Clés
Texte
.de Sh " Subsection [b][/b] .if t .Sp .ne 5 [b][/b]$1 .. .de Sp " Vertical space (when we can't use .PP) .if t .5v .if n .. .de Ip " List item [b][/b] .ie (.$>=3 .ne $3 .el .ne 3 [/col][/row][/table] [size=18] [b]Nom[/b] [/size] openjade - applique une feuille de style DSSSL à un document SGML ou XML [size=18] [b]Résumé[/b] [/size] .nf [b]openjade[/b] [[b]-vCegG2s[/b]] [[b]-b[/b] [i]encodage[/i]] [[b]-f[/b] [i]fichier_erreur[/i]] [[b]-c[/b] [i]catalog_sysid[/i]] [[b]-D[/b] [i]répertoire[/i]] [[b]-a[/b] [i]type_lien[/i]] [[b]-A[/b] [i]arch[/i]] [[b]-E[/b] [i]erreurs_max[/i]] [[b]-i[/b] [i]entité[/i]] [[b]-w[/b] [i]type_avertissement[/i]] [[b]-d[/b] [i]dsssl_spec[/i]] [[b]-V[/b] [i]variable[/i][b]=[/b][i]valeur[/i]] [[b]-t[/b] [i]type_sortie[/i]] [[b]-o[/b] [i]fichier_sortie[/i]] [[b][/b][i]sysid[/i]...] .fi [size=18] [b]Description[/b] [/size] [b]openjade[/b] est une implémentation du langage DSSSL défini par la norme ISO/IEC 10179:1996. Le moteur DSSSL reçoit en entrée un document SGML ou XML et le transforme en des formats tels que : * la représentation, en XML, du graphe d'objets flux, * le format RTF, qui peut être rendu et imprimé avec le logiciel libre « Word Viewer 97 » de Microsoft, * le format TeX * le format MIF, qui peut être rendu et imprimé avec Framemaker, * le format SGML ou XML. Il est utilisé conjointement avec des classes d'objets flux non-standards pour générer du SGML, permettant ainsi à [b]openjade[/b] d'être utilisé pour des transformations SGML/XML. L'identifiant système du document à traiter est spécifié comme argument à [b]openjade[/b]. Si celui-ci est omis, l'entrée standard sera lue. [b]openjade[/b] détermine l'identifiant système pour la spécification DSSSL de la façon suivante : 1. Si l'option -d est spécifiée, il utilisera l'argument comme identifiant système. 2. Autrement, il cherchera les instructions de traitement dans le prologue du document. Deux sortes d'instructions de traitement sont reconnues : La composante système de l'instruction de traitement est analysée comme une balise ouvrante SGML. Elle sera analysée selon la syntaxe concrète de référence, quelle que soit la syntaxe concrète réelle du document. Le nom qui démarre l'instruction de traitement peut être « stylesheet », « xml-stylesheet » ou « xml:stylesheet ». L'instruction de traitement sera ignorée à moins que la valeur de l'attribut « type » ne soit « text/dsssl », « text/x-dsssl », « application/dsssl », ou bien « application/x-dsssl ». La valeur de l'attribut « href » est l'identifiant système de la spécification DSSSL. L'identifiant système est la partie de la composante système de l'instruction de traitement suivant le premier nom et l'espace. Bien que l'instruction de traitement ne soit seulement reconnue que dans le prologue, il n'est pas nécessaire qu'elle apparaisse dans l'entité document. Par exemple, elle peut se trouver dans une DTD. L'identifiant système sera interprété relativement à l'endroit où l'instruction de traitement apparaît. 3. Autrement, il utilisera l'identifiant système du document avec son extension changée en [i].dsl[/i]. Un document de spécification DSSSL peut contenir plus d'une spécification de style. Si l'identifiant système de la spécification DSSSL est suivi par « #id », alors [b]openjade[/b] utilisera la spécification de style dont l'identifiant unique est « #id ». Ceci est autorisé simultanément avec l'option [b]-d[/b] et les instructions de traitement. La spécification DSSSL doit être un document SGML conforme à l'architecture DSSSL. Pour un exemple, voir [i]dsssl/demo.dsl[/i]. [b]openjade[/b] accepte les options suivantes en plus des options OpenSP (voir [b]onsgmls(1)[/b]) régulières (notez que toutes les options sont sensibles à la casse, c.-à -d. que [b]-g[/b] et [b]-G[/b] sont des options différentes) : [table][row][col] [/col][col][b]-d[/b] [i]dsssl_spec[/i] Elle spécifie que [i]dsssl_spec[/i] est l'identifiant système de la spécification DSSSL à utiliser. [/col][/row][/table] [table][row][col] [/col][col][b]-G[/b] Mode débogage. Lorsqu'une erreur survient dans l'évaluation d'une expression, [b]openjade[/b] affiche le contenu de la pile d'appels. Notez que cela désactive l'optimisation des appels récursifs terminaux. [/col][/row][/table] [table][row][col] [/col][col][b]-c[/b] [i]catalog_sysid[/i] Les arguments [i]catalog_sysid[/i] spécifient les fichiers catalogues plutôt que l'entité document. L'entité document est spécifiée par la première entrée DOCUMENT dans les fichiers catalogues. [/col][/row][/table] [table][row][col] [/col][col][b]-s[/b] Mode de stricte conformité. Actuellement, le seul effet est que jade n'utilise ni nom de caractères prédéfinis, ni table de correspondance pour les entités « sdata », ni caractères de noms. Cela est utile pour vérifier que votre feuille de style est portable vers d'autres implémentations DSSSL et qu'elle est strictement conforme aux spécifications DSSSL. [/col][/row][/table] [table][row][col] [/col][col][b]-t[/b] [i]type_sortie[/i] [i]type_sortie[/i] spécifie le type de sortie comme suit : [b]fot[/b] Une représentation XML du graphe d'objets flux [b]rtf[/b] [b]rtf-95[/b] RTF (utilisée pour des transformations de SGML/XML vers RTF) Rich Text Format de Microsoft. rtf-95 produit une sortie optimisée pour Word 95 plutôt que Word 97. [b]tex[/b] TeX (utilisée pour des transformations de SGML/XML vers TeX) [b]sgml[/b] [b]sgml-raw[/b] SGML (utilisée pour des transformations de SGML/XML vers SGML). [b]sgml-raw[/b] n'insère pas de sauts de ligne à l'intérieur des balises. [b]xml[/b] [b]xml-raw[/b] XML (utilisée pour des transformations de SGML/XML vers XML). [b]xml-raw[/b] n'insère pas de sauts de ligne à l'intérieur des balises. [b]html[/b] HTML (utilisée pour des transformations de SGML/XML vers HTML) [b]mif[/b] MIF (utilisée pour des transformations de SGML/XML vers MIF) [/col][/row][/table] [table][row][col] [/col][col][b]-o[/b] [i]fichier_sortie[/i] Écrit la sortie dans [i]fichier_sortie[/i] plutôt que dans la sortie par défaut. Le nom de fichier par défaut est le nom du dernier fichier d'entrée avec son extension remplacée par le nom du type de sortie. S'il n'y a pas de nom de fichier d'entrée, alors l'extension est ajoutée à jade-out. [/col][/row][/table] [table][row][col] [/col][col][b]-V[/b] [i]variable[/i] Ceci est équivalent à faire (define variable #t), excepté que cette définition aura priorité sur toute autre définition de « variable » dans une feuille de style. [/col][/row][/table] [table][row][col] [/col][col][b]-V[/b] [i]variable=valeur[/i] Ceci est équivalent à faire (define [i]variable[/i] "[i]value[/i]"), excepté que cette définition aura priorité sur toute autre définition de « variable » dans une feuille de style. [/col][/row][/table] [table][row][col] [/col][col][b]-V[/b] (define [i]variable[/i] valeur) Ceci est équivalent à faire (define variable valeur), excepté que cette définition aura priorité sur toute autre définition de « variable » dans une feuille de style. Notez que vous devrez probablement utiliser un mécanisme d'échappement des espaces pour que l'expression entière, en langage scheme, soit analysée comme un seul argument de la ligne de commande. [/col][/row][/table] [table][row][col] [/col][col][b]-w[/b][i]type_avertissement[/i] Contrôle les avertissements et les erreurs. Plusieurs options [b]-w[/b] sont autorisées. Les valeurs suivantes de [i]type[/i] activent les avertissements : [b]xml[/b] Avertissement sur les constructions non permises par XML. [b]mixed[/b] Avertissement sur les modèles de contenu mixte qui ne permettent nulle part « #pcdata ». [b]sgmldecl[/b] Avertissement sur différentes constructions douteuses dans la déclaration SGML. [b]should[/b] Avertissement 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 »). [b]default[/b] Avertissement sur les références manquantes. [b]duplicate[/b] Avertissement sur les déclarations d'entité doubles. [b]undefined[/b] Avertissement sur les éléments non définis : éléments utilisés dans la DTD mais non définis. [b]unclosed[/b] Avertissement sur les balises ouvrantes et fermantes non appareillées. [b]empty[/b] Avertissement sur les balises ouvrantes et fermantes vides. [b]net[/b] Avertissement sur les balises ouvrantes rendant possible les balises fermantes nulles et sur les balises fermantes nulles (NdT : net=[b]n[/b]ull [b]e[/b]nd [b]t[/b]ag). [b]min-tag[/b] Avertissement sur les balises ouvrantes et fermantes minimisées. Équivalent à une combinaison des avertissements [b]unclosed[/b], [b]empty[/b] et [b]net[/b]. [b]unused-map[/b] Avertissement sur la non utilisation d'assignations d'appels abrégés (NdT : short reference map) : ces assignations sont déclarées dans une déclaration d'assignation 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) [b]unused-param[/b] Avertissement sur les entités paramètres définies mais non utilisées dans une DTD. Les entités paramètres internes non utilisées, dont le texte est INCLUDE ou IGNORE, ne produisent pas d'avertissement. [b]notation-sysid[/b] Avertissement sur les notations pour lesquelles aucun identifiant système ne peut être généré. [b]all[/b] Avertissement sur les conditions qui pourraient être évitées (de l'avis de l'auteur). Équivalent à  : [b]mixed[/b], [b]should[/b], [b]default[/b], [b]undefined[/b], [b]sgmldecl[/b], [b]unused-map[/b], [b]unused-param[/b], [b]empty[/b] et [b]unclosed[/b]. Un avertissement peut être désactivé en utilisant son nom préfixé par « no- ». Ainsi [b]-wall[/b] [b]-wno-duplicate[/b] activent tous les avertissements exceptés ceux concernant les déclarations d'entités dupliquées. Les valeurs suivantes de [i]type_avertissement[/i] désactivent les erreurs : [b]no-idref[/b] Ne pas signaler d'erreur lorqu'on fait une référence à un identifiant, alors qu'aucun élément n'a cet identifiant. L'effet en est que chaque attribut déclaré comme une référence à un identifiant se comporte comme un nom ordinaire. [b]no-significant[/b] Ne pas produire 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 un nom de la déclaration SGML. Cela peut être pratique conjointement avec des suites logicielles de test. [b]no-valid[/b] Ne nécessite pas que le document soit de type valide. Cela a pour effet de modifier la déclaration SGML pour spécifier VALIDITY NOASSERT et IMPLYDEF ATTLIST YES ELEMENT YES. Une option [b]-wvalid[/b] a pour effet de modifier la déclaration SGML pour spécifier VALIDITY TYPE et IMPLYDEF ATTLIST NO ELEMENT NO. Si ni [b]-wvalid[/b] ni [b]-wno-valid[/b] ne sont spécifiées, alors VALIDITY et IMPLYDEF, spécifiées dans la déclaration SGML, seront utilisées. [/col][/row][/table] [size=18] [b]Environnement[/b] [/size] OpenJade ignore les variables d'environnement SP_CHARSET_FIXED et SP_SYSTEM_CHARSET et utilise toujours Unicode comme jeu de caractères interne, comme si SP_CHARSET_FIXED vallait 1 et SP_SYSTEM_CHARSET n'était pas fixée. Par conséquent, seule la variable d'environnement SP_ENCODING joue un rôle dans la gestion des jeux de caractères de OpenJade. [size=18] [b]Extensions openjade[/b] [/size] Les procédures externes suivantes sont disponibles. Ces procédures externes sont définies par un prototype de la même manière que dans la norme. Pour utiliser l'une de ces procédures externes, vous devez utiliser la procédure standard « external-procedure », utilisant un identifiant public "UNREGISTERED::James Clark//Procedure::name" où « name » est le nom donné ici, typiquement en incluant ce qui suit dans la spécification DSSSL : (define name (external-procedure "UNREGISTERED::James Clark//Procedure::name")) Notez que « external-procedure » retourne « #f » si elle ne connaît pas l'identifiant public spécifié (NdT : dans la syntaxe DSSSL, « #f » signifie « false »). Vous pouvez utiliser ceci pour permettre à vos spécifications DSSSL de travailler gracieusement avec d'autres implémentations qui ne supportent pas ces extensions. Pour les procédures externes ajoutées par l'équipe d'OpenJade, utilisez un identifiant public de la forme "UNREGISTERED::OpenJade//Procedure::name". Un moyen facile pour accéder à toutes les procédures externes est d'utiliser la spécification de style dsssl/extensions.dsl#procedures. Le fichier [i]dsssl/extensions.dsl[/i] contient également des spécifications de style qui rendent les classes d'objets flux non-standards et les caractéristiques héritées supportables, de manière pratique, par les backends disponibles. [b]Débogage[/b] (debug obj) Génère un message incluant la valeur de « obj » et ensuite retourne « obj ». [b]Contrôle[/b] en-tête/pied de page d'une séquence « Simple-page-sequence » (if-first-page sosofo1 sosofo2) Ceci ne peut être utilisé que dans la spécification de la valeur de l'une des caractéristiques en-tête/pied de page d'une séquence « simple-page-sequence ». Une séquence « sosofo » est retournée, qui sera rendue en tant que « sosofo1 » si la page est la première page d'une séquence « simple-page-sequence » et « sosofo2 » autrement. (NdT : dans le jargon DSSSL, « sosofo » signifie « [b]s[/b]pecification [b]o[/b]f a [b]s[/b]equence [b]o[/b]f [b]f[/b]low [b]o[/b]bjects » (if-front-page sosofo1 sosofo2) Ceci ne peut être utilisé que dans la spécification de la valeur de l'une des caractéristiques en-tête/pied de page d'une séquence « simple-page-sequence ». Une séquence « sosofo » est retournée, qui sera rendue en tant que « sosofo1 » si la page est une page de face (c.-à -d. recto, impaire) et « sosofo2 » si c'est une page de dos (c.-à -d. verso, paire). [b]Numérotage[/b] (all-element-number) (all-element-number osnl) C'est la même chose que « element-number », excepté qu'il compte les éléments avec un identifiant générique. Si « osnl » n'est pas un élément, il retourne #f, autrement il retourne 1 plus le nombre d'éléments qui ont commencé avant « osnl ». Cela fournit un moyen efficace pour créer un identifiant unique pour tous les éléments d'un document. [b]Accès[/b] aux entités externes (read-entity string) Elle retourne une chaîne composée du contenu de l'entité externe avec la chaine identifiant système. Ceci ne peut être utilisé qu'avec des entités texte (CDATA et SDATA), pas avec des entités binaires (NDATA). [b]Accès[/b] aux locales POSIX (language lang country) Cette procédure retourne un objet de type langue, si le système supporte la langue spécifiée. « lang » est une chaîne de caractères ou un symbole donnant les deux lettres du code de la langue. « country » est une chaîne de caractères ou un symbole donnant les deux lettres du code du pays. Cette procédure utilise les locales POSIX. C'est un ajout OpenJade. Ceci n'est pas supporté par tous les systèmes d'exploitation. [b]Procédures[/b] standards étendues (sgml-parse sysid #!key active: parent: architecture:) Cela vous permet de spécifier une architecture SGML en respect de laquelle le document doit être analysé. C'est un ajout OpenJade. (expt q k) Cela vous permet d'élever une quantité à une puissance entière. C'est un ajout OpenJade. [size=18] [b]Limitations[/b] [/size] Cette section décrit les limitations de l'interface d'entrée (le moteur DSSSL universel) ; chaque interface de sortie a également ses propres limitations. [b]openjade[/b] ne permet pas de définitions internes au début des corps et dans la variante (test => destinataire) des clauses conditionnelles. [b]openjade[/b] accepte seulement un unique plan « bosquet » fixé qui comprend les modules suivants (NdT : un « bosquet » est un ensemble d'« arbres » de propriétés DSSSL ; la phrase originale cite « a single, fixed grove plan », où grove est l'acronyme de [b]G[/b]raph [b]R[/b]epresentation of [b]P[/b]roperty [b]V[/b]alu[b]E[/b]s) : * baseabs * prlgabs0 * prlgabs1 * instabs * basesds0 * instsds0 * subdcabs Il n'implémente pas les parties suivantes de SDQL : support HyTime (NdT : Hypermedia/Time-based Structuring Language), analyse auxiliaire, expressions régulières de noeud. Règles d'interrogation, synchronisation « sosofo », « sosofos » indirectes, valeurs de référence, zones de décoration et propriétés de polices de caractères ne sont pas supportées. Veuillez noter que seules les caractéristiques héritées, applicables à des objets flux supportés, peuvent être spécifiées. [b]Gestion[/b] des caractères et des glyphes Il gère seulement un répertoire unique de caractères prédéfinis. Un nom de caractère de la forme U-XXXX, où XXXX sont quatre caractères alphanumériques hexadécimaux majuscules, est reconnu comme se référant au caractère Unicode du code concerné. Pour bien des caractères, il est également possible d'utiliser le nom « ISO/IEC 10646 » en minuscule avec des mots séparés par des traits d'union. Certains noms courants d'entités SDATA du jeu d'entités ISO sont reconnus et assignés à des caractères. De plus, un nom d'entité SDATA de la forme U-XXXX, où XXXX sont quatre caractères alphanumériques hexadécimaux majuscules, est assigné au caractère Unicode avec ce code. OpenJade accepte maintenant les formes de déclarations d'éléments « standard-chars », « map-sdata-entity », « add-name-chars », « add-separator-chars » et « char-repertoire », permettant à une feuille de style de définir des noms de caractères, des assignations d'entités « sdata », des caractères de noms (c.-à -d. des caractères autorisés dans les identifiants) et des caractères séparateurs supplémentaires. Actuellement, le seul répertoire de caractères reconnu est le répertoire intégré. Il a un identifiant public "UNREGISTERED::OpenJade//Character Repertoire::OpenJade". [b]Validation[/b] Plusieurs choses qu'il aurait été souhaitable de vérifier ne le sont pas : * Quand la valeur autorisée d'une caractéristique héritée est un symbole, OpenJade vérifie seulement que la valeur est un symbole autorisé comme la valeur d'une caractéristique ; #t et #f sont traités, dans ce cas, comme une sorte spéciale de symbole. * OpenJade ne vérifie pas si un objet flux apparaît dans un contexte où il est autorisé. * OpenJade n'empêche pas des objets flux d'être attachés au port principal d'un objet quand l'objet flux ne devrait pas avoir de port principal. * La plupart des vérifications de type sont faites à l'exécution, pas à la compilation. * OpenJade n'effectue pas de vérifications sur les caractéristiques non héritées qui nécessitent d'être spécifiées. * Il ne vérifie pas si les fonctionnalités optionelles, qui doivent être utilisées, sont déclarées dans la forme des fonctionnalités. [b]Autres[/b] limitations Les primitives suivantes ne sont que des squelettes : [b]char-script-case[/b] Retourne toujours le dernier argument. [b]address-visited?[/b] Retourne toujours #f. [size=18] [b]Exemples[/b] [/size] Pour un fichier SGML [b]file.sgml[/b] donné, utiliser la feuille de style [b]file.dsl[/b] et le publier au format rtf. openjade -t rtf file.sgml Utiliser une feuille de style différente : openjade -t rtf -d docbook.dsl file.sgml Utiliser la spécification de style [b]print[/b] contenue dans la feuille de style openjade -t rtf -d docbook.dsl#print file.sgml Et utiliser la spécification html de la feuille de style pour convertir vers html openjade -t sgml -i html -d docbook.dsl#html file.sgml [size=18] [b]Voir aussi[/b] [/size] [b]onsgmls(1)[/b] [size=18] [b]Auteurs[/b] [/size] James Clark, Ian Castle
. [size=18] [b]Traduction[/b] [/size] Alain PORTAL
, 20 janvier 2004. Je remercie infiniment Éric Bischoff sans lequel cette traduction aurait eu du mal à voir le jour.
Fichier
Forum
-
Derniers messages
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Software
problème sur windows 10
Réseaux et Télécom
Administrateur Réseau - Cisco
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Hardware
conseil matos réseau?
Hardware
nVidia Shield Android TV
Actualités
-
Archives
Windows
Windows 11 : le menu Démarrer ne fonctionne parfois plus après la mise à jour
Jeux Vidéos
Test Legacy of Kain Soul Reaver 1&2 Remastered (PS5) - Raziel de retour
Tablettes
2025 nous apportera le nouvel iPad abordable : nouveaux détails de lancement
Google
Découvrons quand le Père Noël arrivera pour livrer nos cadeaux, avec Santa Tracker de Google
Consoles
Nintendo Switch 2, la date d'annonce et le mois de sortie ont-ils été révélés par un leaker ?
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2024
Akretio
SPRL - Generated via
Kelare
The Akretio Network:
Akretio
-
Freedelity
-
KelCommerce
-
Votre publicité sur informaticien.be ?