Types de documents extensibles dans Dreamweaver

XML est doté d'un système performant pour définir des documents et des structures de données complexes. Dreamweaver organise selon plusieurs schémas XML les informations sur les comportements de serveur, les balises et les boîtes de dialogue de balises, les composants, les types de documents et des références.

Lorsque vous créez et utilisez des extensions dans Dreamweaver, vous pouvez souvent créer ou modifier les fichiers XML existants afin de gérer les données utilisées par ces extensions. Dans la plupart des cas, vous pouvez copier un fichier existant du sous-dossier approprié du dossier Configuration vers le dossier à utiliser comme modèle.

Fichier de définition de type de document

Le concept de type de document s'articule autour d'un composant central, à savoir le fichier de définition de type de document. Vous pouvez être en présence de plusieurs fichiers de définition ; le cas échéant, ils résident tous dans le dossier Configuration/DocumentTypes. Chaque fichier de définition contient des informations concernant au moins un type de document. Des informations essentielles, telles que le modèle de serveur, le style de codage par couleurs, les descriptions, etc., sont décrits pour chacun de ces types de documents.

Dreamweaver fournit un fichier de définition de type de document initial Ce fichier, nommé MMDocumentTypes.xml, contient les définitions de type de document fournies par Macromedia :

Type de document Modèle de serveur Type interne Extensions de fichier Modèle de serveur antérieur

ASP.NET C#

ASP.NET-Csharp

Dynamic

aspx, ascx

ASP.NET VB

ASP.NET-VB

Dynamic

aspx, ascx

ASP JavaScript

ASP-JS

Dynamic

asp

ASP VBScript

ASP-VB

Dynamic

asp

ColdFusion

ColdFusion

Dynamic

cfm, cfml

UltraDev 4 ColdFusion

Composant ColdFusion

 

Dynamic

cfc

JSP

JSP

Dynamic

jsp

PHP

PHP

Dynamic

php, php3

Elément de bibliothèque

 

Extension DW

lbi

Modèle ASP.NET C#

 

Modèle DW

axcs.dwt

Modèle ASP.NET VB

 

Modèle DW

axvb.dwt

Modèle ASP JavaScript

 

Modèle DW

aspjs.dwt

Modèle ASP VBScript

 

Modèle DW

aspvb.dwt

Modèle ColdFusion

 

Modèle DW

cfm.dwt

Modèle HTM

 

Modèle DW

dwt

Modèle JSP

 

Modèle DW

jsp.dwt

Modèle PHP

 

Modèle DW

php.dwt

HTML

 

HTML

htm, html

ActionScript

 

Text

as

CSharp

 

Text

cs

CSS

 

Text

css

Java

 

Text

java

JavaScript

 

Text

js

VB

 

Text

vb

VBScript

 

Text

vbs

Text

 

Text

txt

EDM

 

XML

edml

TLD

 

XML

tld

VTML

 

XML

vtm, vtml

WML

 

XML

wml

XML

 

XML

xml

Si vous avez besoin de créer un nouveau type de document, vous pouvez soit ajouter votre entrée dans le fichier de définition de document fourni par Macromedia (MMDocumentTypes.xml), soit ajouter votre propre fichier de définition dans le dossier Configuration/DocumentTypes.

Structure des fichiers de définition de type de document

L'exemple suivant représente un fichier classique de définition de type de document :

<?xml version="1.0" encoding="utf-8"?>
<documenttypes 
    xmlns:MMString="http://www.macromedia.com/schemes/data/string/">   <documenttype     id="dt-ASP-JS"     servermodel="ASP-JS"     internaltype="Dynamic"     winfileextension="asp,htm, html"     macfileextension=asp, html"     previewfile="default_aspjs_preview.htm"     file="default_aspjs.htm"     priorversionservermodel="UD4-ASP-JS" >     <title>       <loadString id="mmdocumenttypes_0title" />     </title>     <description>       <loadString id="mmdocumenttypes_0descr" />     </description>   </documenttype>   ... </documenttypes>

Dans l'exemple précédent, l'élément loadstring identifie les chaînes localisées que Dreamweaver devrait utiliser pour le titre et la description des documents de type ASP-JS. Pour plus d'informations sur les chaînes localisées, voir Chaînes localisées.

Le tableau ci-dessous recense les balises et les attributs autorisés dans un fichier de définition de type de document.

Type d'élément Obligatoire Description
Balise Attribut
documenttype
(root)
    

Oui

Nœud parent.

    
id

Oui

Identificateur unique pour tous les fichiers de définition de type de document.

    
servermodel

Non

Spécifie le modèle de serveur associé (casse prise en compte). Les valeurs suivantes sont valides par défaut :

  ASP.NET C#
  ASP.NET VB
  ASP VBScript
  ASP JavaScript
  ColdFusion
  JSP
  PHP MySQL

Un appel des fonctions getServerModelDisplayName() renvoie ces noms. Les fichiers d'implémentation des modèles de serveur se trouvent dans le dossier Configuration/ServerModels.

Les nouveaux modèles de serveur créés par les développeurs d'extensions viendront compléter cette liste.

    
internaltype

Oui

Classification générale des modes de traitement des fichiers dans Dreamweaver. Le type interne détermine si le mode Création est activé pour ce document et traite des cas particuliers tels que les extensions ou les modèles Dreamweaver.

Les valeurs suivantes sont valides :

  Dynamic

  DWExtension (zones d'affichage spéciales)

  DWTemplate (zones d'affichage spéciales)

  HTML

  HTML4

  Text (mode Code uniquement)

  XHTML1

  XML (mode Code uniquement)

Tous les types de documents liés au serveur de modèle doivent être associés à la valeur Dynamic. HTML doit être en correspondance avec HTML. Les fichiers de script, notamment les fichiers .css, .js, .vb et .cs doivent être en correspondance avec Text.

Si internaltype correspond à DWTemplate, il convient également de spécifier dynamicid. Si, dans le cas présent, vous omettez de spécifier dynamicid, le type de document du nouveau modèle vierge créé à partir de la boîte de dialogue Nouveau document ne sera pas reconnu par les panneaux Comportements de serveur ou Liaisons. Les instances de ce modèle sont des modèles HTML.

    
dynamicid

Non

Référence à l'identificateur unique d'un type de document dynamique. Cet attribut n'est pertinent que lorsque internaltype correspond à DWTemplate. Il vous permet d'associer un modèle dynamique avec un type de document dynamique.

    
winfileextension

Oui

Extension de fichier associée au type de document sous Windows. Utilisez une liste séparée par des virgules pour spécifier plusieurs extensions. La première extension de cette liste correspond à l'extension utilisée par Dreamweaver lorsque l'utilisateur enregistre un document de type documenttype.

Lorsque deux types de documents non associés à un modèle de serveur portent la même extension de fichier, Dreamweaver reconnaît le premier comme le type de document associé à l'extension.

    
macfileextension

Oui

Extension de fichier associée au type de document sur Macintosh. Utilisez une liste séparée par des virgules pour spécifier plusieurs extensions. La première extension de cette liste correspond à l'extension utilisée par Dreamweaver lorsque l'utilisateur enregistre un document de type documenttype.

Lorsque deux types de documents non associés à un modèle de serveur portent la même extension de fichier, Dreamweaver reconnaît le premier comme le type de document associé à l'extension.

    
previewfile

Non

Fichier rendu dans la zone Aperçu de la boîte de dialogue Nouveau document.

    
file

Oui

Le fichier situé dans le dossier DocumentTypes/NewDocuments contenant le contenu du modèle des nouveaux documents de type documenttype.

    
priorversionservermodel

Non

S'il existe un équivalent du modèle de serveur de ce document dans Dreamweaver UltraDev 4, spécifiez le nom de la version antérieure du modèle de serveur.

UltraDev 4 ColdFusion est un modèle de serveur antérieur valide.

title

(sous-balise)

 

Oui

Chaîne qui apparaît comme élément de catégorie sous la section Document vierge de la boîte de dialogue Nouveau document. Vous pouvez insérer cette chaîne directement dans le fichier de définition ou pointer vers elle indirectement pour la localiser. Pour plus d'informations sur la localisation de cette chaîne, voir Chaînes localisées.

La mise en forme n'étant pas autorisée, il est impossible de spécifier les balises HTML.

description

(sous-balise)

 

Non

Chaîne de description du type de document. Vous pouvez insérer cette chaîne directement dans le fichier de définition ou pointer vers elle indirectement pour la localiser. Pour plus d'informations sur la localisation de cette chaîne, voir Chaînes localisées.

La mise en forme étant autorisée, il est possible de spécifier les balises HTML.

Au lancement, Dreamweaver lit tous les fichiers de définition de type de document et crée une liste des types de documents valides. Dreamweaver traite toutes les entrées des fichiers de définition pour lesquels des modèles de serveur inexistants sont utilisés comme types de documents non serveur de modèle. Dreamweaver ignore les entrées dont le contenu est incorrect ou dont les ID ne sont pas uniques.

Si, pendant l'analyse du dossier Configuration/DocumentTypes, Dreamweaver ne détecte aucun fichier de définition de type de document ou si l'un des fichiers de définition semble endommagé, Dreamweaver s'arrête en affichant un message d'erreur.

Modèles dynamiques

Vous pouvez créer des modèles d'après des types de documents dynamiques, appelés des modèles dynamiques. La notion de modèle dynamique repose sur les deux éléments fondamentaux suivants :

L'exemple suivant définit un type de document dynamique :

<documenttype 
    id="PHP_MySQL" 
    servermodel="PHP MySQL" 
    internaltype="Dynamic" 
    winfileextension="php,php3" 
    macfileextension="php,php3"
    file="Default.php">
    <title>PHP</title> 
    <description><![CDATA[PHP document]]></description>
</documenttype> 

Vous pouvez désormais définir le modèle dynamique suivant, basé sur ce type de document PHP_MySQL :

<documenttype 
    id="DWTemplate_PHP" 
    internaltype="DWTemplate" 
    dynamicid="PHP_MySQL" 
    winfileextension="php.dwt" 
    macfileextension="php.dwt" 
    file="Default.php.dwt">
    <title>PHP Template</title> 
    <description><![CDATA[Dreamweaver PHP Template document]]></description>
</documenttype> 

Lorsqu'un utilisateur de Dreamweaver crée un nouveau modèle vierge de type DWTemplate_PHP, Dreamweaver lui permet de créer des comportements de serveur PHP dans le fichier. En outre, lorsque cet utilisateur crée des instances du nouveau modèle, il peut leur définir aussi des comportements de serveur PHP.

Dans l'exemple précédent, où l'utilisateur enregistre le modèle, Dreamweaver ajoute automatiquement l'extension .php.dwt au fichier. De même, lorsque cet utilisateur enregistre une instance du modèle, le fichier reçoit l'extension .php.

Extensions de documents et types de fichiers

Par défaut, Dreamweaver affiche tous les types de fichiers reconnus dans la boîte de dialogue Fichier > Ouvrir. Une fois le nouveau type de document créé, il incombe aux développeurs d'extensions de mettre à jour le fichier Extensions.txt approprié. Si l'utilisateur travaille sur un système multi-utilisateurs (par exemple, Windows XP, Windows 2000 ou Mac OS X), le dossier Configuration contient un autre fichier Extensions.txt. L'utilisateur doit mettre à jour le fichier Extensions.txt car il s'agit de l'instance recherchée et analysée par Dreamweaver.

L'emplacement du dossier Configuration varie selon la plate-forme utilisateur.

Les plate-formes Windows 2000 et Windows XP utilisent l'emplacement suivant :

lecteur:\Documents and Settings\nom_utilisateur\Application Data\Macromedia\Dreamweaver 8\Configuration

Les plate-formes Mac OS X utilisent l'emplacement suivant :

lecteur: Disquedur/Utilisateurs/nom_utilisateur/Bibliothèque/Macromedia/Dreamweaver 8/Configuration

Si Dreamweaver ne parvient pas à localiser le fichier Extensions.txt dans le dossier Configuration de l'utilisateur, Dreamweaver le recherche dans le dossier Dreamweaver Configuration.

Pour cela, vous avez le choix entre ajouter la nouvelle extension à un type de document existant ou créer un nouveau type de document.

Pour ajouter une nouvelle extension à un type de document existant :

  1. Modifiez le fichier MMDocumentTypes.xml.
  2. Ajoutez la nouvelle extension aux attributs winfileextension et macfileextension du type de document existant.

Pour ajouter un nouveau type de document :

  1. Créez une copie de sauvegarde du fichier Extensions.txt dans le dossier Configuration.
  2. Ouvrez le fichier Extensions.txt dans Dreamweaver ou un éditeur de texte.
  3. Ajoutez une nouvelle ligne pour chaque nouveau type de fichier. Entrez, en majuscules, les extensions de noms de fichiers compatibles avec le nouveau type de fichier et séparez-les par des virgules. Ajoutez ensuite deux points et une brève description à afficher dans le menu contextuel pour les types de fichiers qui s'affichent dans la boîte de dialogue Fichier > Ouvrir.

    Par exemple, pour les fichiers JPEG, entrez JPG,JPEG,JFIF:Fichiers image JPEG

  4. Enregistrez le fichier Extensions.txt.
  5. Redémarrez Dreamweaver.

    Pour observer les modifications, sélectionnez Fichier > Ouvrir et cliquez sur le menu contextuel répertoriant les types de fichiers.

Pour modifier le type de fichier indiqué par défaut dans Fichier > Ouvrir de Dreamweaver :

  1. Créez une copie de sauvegarde du fichier Extensions.txt dans le dossier Configuration.
  2. Ouvrez le fichier Extensions.txt dans Dreamweaver ou un éditeur de texte.
  3. Coupez la ligne correspondant au nouveau type par défaut et collez-la en tête de fichier, sur la première ligne.
  4. Enregistrez le fichier Extensions.txt.
  5. Redémarrez Dreamweaver.

    Pour observer les modifications, sélectionnez Fichier > Ouvrir et cliquez sur le menu contextuel répertoriant les types de fichiers.

Chaînes localisées

Dans un fichier de définition de type de document, les sous-balises <title> et <description> désignent le titre d'affichage et la description du type de document. Vous pouvez utiliser la directive MMString:loadstring dans les sous-balises comme espace réservé pour les chaînes localisées de ces deux sous-balises. Ce procédé, similaire à la programmation de scripts côté serveur, permet de spécifier l'utilisation d'une chaîne particulière dans votre page en utilisant un identificateur de chaîne comme espace réservé. Cet espace réservé accepte les balises spéciales ou les attributs de balises dont la valeur est remplacée.

Pour définir des chaînes localisées, procédez comme suit :

  1. Placez l'instruction suivante en tête du fichier de définition de type de document :
    <?xml version="1.0" encoding="utf-8"?>
    
  2. Déclarez l'espace de noms MMString dans la balise <documenttypes> :
      <documenttypes 
          xmlns:MMString="http://www.macromedia.com/schemes/data/string/">
    
  3. A l'emplacement du fichier de définition de type de document auquel insérer une chaîne localisée, utilisez la directive MMString:loadstring pour définir un espace réservé à cette chaîne. Vous pouvez spécifier cet espace réservé en procédant comme suit, au choix :
    <description>
       <loadstring>myJSPDocType/Description</loadstring>
    </description>
    

    ou

    <description>
       <loadstring id="myJSPDocType/Description" />
    </description>
    

    Dans ces exemples, myJSPDocType/Description est un identificateur de chaîne unique faisant office d'espace réservé à la chaîne localisée. La chaîne localisée est définie à l'étape suivante.

  4. Dans le dossier Configuration/Strings, créez un fichier XML (ou modifiez un fichier existant) définissant la chaîne localisée. Par exemple, lorsque le code suivant est inséré dans le fichier Configuration/Strings/strings.xml, il définit la chaîne myJSPDocType/Description :
    <strings>
    ...
       <string id="myJSPDocType/Description" 
            value=
            "<![CDATA[JavaServer&nbsp;Page with <em>special</em> 
    features]]>" 
       />
    ...
    </strings>
    
    

Règles d'utilisation des fichiers de définition de type de document

Dreamweaver autorise les types de documents associés à un modèle de serveur à partager des extensions de fichiers. Exemple : ASP-JS et ASP-VB peuvent adopter l'extension .asp (pour savoir quel modèle de serveur prévaut, voir canRecognizeDocument()).

Dreamweaver n'autorise pas les types de documents non associés à un modèle de serveur à partager des extensions de fichiers.

Si une extension de fichier est revendiquée par deux types de documents alors qu'un type est associé à un modèle de serveur et que l'autre ne l'est pas, ce dernier prévaut. Supposons que vous ayez défini un type de document appelé SAM, non associé à un modèle de serveur et portant l'extension de fichier .sam, et que vous ajoutiez cette extension au type de document ASP-JS. Lorsqu'un utilisateur ouvre un fichier portant l'extension .sam dans Dreamweaver, le programme lui affecte le type de document SAM, et non pas le type ASP-JS.


 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/dreamweaver/8_fr/extending/02_cus18.htm