2010-02-17 14 views
0

J'essaie d'étendre un document xhtml pour autoriser des attributs supplémentaires.Exemple complet Document XHTML montrant comment définir des attributs supplémentaires

Dans le w3.org il donne un exemple comme ceci:

<!ATTLIST a 
    myattr CDATA  #IMPLIED 
> 

Voir: 6.1. Définir des attributs supplémentaires - http://www.w3.org/TR/1999/xhtml-modularization-19990406/developing.html#s_dev_attrs

Cependant, je ne sais pas où mettre cette déclaration.

Je l'ai essayé d'ajouter comme ceci:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > 
    <!ATTLIST a 
     myattr CDATA  #IMPLIED 
> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
... 
</head> 
<body> 
... 
</body> 

Mais quand je prends la doc en utilisant DOM cette déclaration supplémentaire DTD est ignorée.

J'ai aussi essayé:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [ 

    <!ATTLIST a 
     myattr CDATA  #IMPLIED 
> 
]> 

    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    ... 
    </head> 
    <body> 
    ... 
    </body> 

Mais qui a vraiment fait DOM pour lancer une bancale. Donc j'apprécierais que quelqu'un puisse me montrer un exemple de document xhtml qui a un attribut supplémentaire défini. (c'est-à-dire doc complet minimal qui pourrait valider)

Comme vous l'avez peut-être deviné .... xhtml n'est pas mon point fort.

Répondre

1

Votre deuxième exemple est correct, à l'exception de l'étiquette de fin </html> manquante. Avec cela ajouté, il analyse OK pour moi. Qu'est-ce qui "jette un branle"?

La déclaration ATTLIST doit en effet figurer dans la DTD, dont le sous-ensemble interne est entre crochets à l'intérieur de la déclaration DOCTYPE.

(Qu'est-ce que vous espérez réaliser avec cela? Browsers ne se soucient pas, même si elles sont en cours d'exécution en mode natif application/xhtml+xml. En mode normal soupe tag text/html le sous-ensemble interne DTD simplement les confondre.)

+0

I J'utilise xhtml pour stocker du contenu dans le back-end. CMS-like. Ainsi, certaines ressources peuvent simplement être définies par une balise meta , alors que d'autres peuvent définir des mots-clés supplémentaires, des liens associés, etc. pour le référencement. Cela pourrait probablement aller dans un db à un certain stade, mais xhtml est assez flexible alors que je n'ai pas encore découvert l'étendue des champs nécessaires. En espérant que je pourrais faire en sorte que l'éditeur xml reconnaisse certains attributs personnalisés/propositions d'offres/valeurs par défaut etc. Quand j'utilise le second exemple, mes docs se perdent soit par html tidy, soit par php dom. Merci quand même, sachant que ce n'est pas la syntaxe xml –