2016-05-03 3 views
0

Avec DocBook V4.x et DTD, je pourrais créer une entité avec:Comment créer une nouvelle entité avec RELAX NG schéma DocBook V5.0

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ 

<!ENTITY mdash "&#8212;"> 

]> 
<article> 
... 
<title>Em dash</title> 

<para>The em dash is perhaps the most versatile punctuation mark. 
Depending on the context, the em dash can take the place of commas, 
parentheses, or colons&mdash;in each case to slightly different effect.</para> 
... 
</article> 

Comment pourrais-je faire la même chose avec DocBook V5. 0 en utilisant le schéma RELAX NG ?:

<?xml version='1.0' encoding='utf-8'?> 
<article xmlns='http://docbook.org/ns/docbook' version='5.0' xml:lang='en'> 
... 
<title>Em dash</title> 
<para>The em dash is perhaps the most versatile punctuation mark. 
Depending on the context, the em dash can take the place of commas, 
parentheses, or colons&mdash;in each case to slightly different effect.</para> 

Répondre

3

Vous ne pouvez pas définir d'entités générales à l'aide de RELAX NG. Les entités sont une chose DTD. Vous devez utiliser un sous-ensemble DTD interne (comme dans votre premier exemple de code) ou simplement utiliser des outils codés en dur pour reconnaître les entités (par exemple, en tant que navigateurs Web).