3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2011 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
13 if (!defined('_ECRIRE_INC_VERSION')) return;
15 define('_REGEXP_DOCTYPE',
16 '/^((?:<\001?[?][^>]*>\s*)*(?:<!--.*?-->\s*)*)*<!DOCTYPE\s+(\w+)\s+(\w+)\s*([^>]*)>\s*/s');
18 define('_REGEXP_XML', '/^(\s*(?:<[?][^x>][^>]*>\s*)?(?:<[?]xml[^>]*>)?\s*(?:<!--.*?-->\s*)*)<(\w+)/s');
20 define('_MESSAGE_DOCTYPE', '<!-- SPIP CORRIGE -->');
22 define('_SUB_REGEXP_SYMBOL', '[\w_:.-]');
24 define('_REGEXP_NMTOKEN', '/^' . _SUB_REGEXP_SYMBOL
. '+$/');
26 define('_REGEXP_NMTOKENS', '/^(' . _SUB_REGEXP_SYMBOL
. '+\s*)*$/');
28 define('_REGEXP_ID', '/^[A-Za-z_:]' . _SUB_REGEXP_SYMBOL
. '*$/');
30 define('_REGEXP_ENTITY_USE', '/%(' . _SUB_REGEXP_SYMBOL
. '+);/');
31 define('_REGEXP_ENTITY_DEF', '/^%(' . _SUB_REGEXP_SYMBOL
. '+);/');
32 define('_REGEXP_TYPE_XML', 'PUBLIC|SYSTEM|INCLUDE|IGNORE|CDATA');
33 define('_REGEXP_ENTITY_DECL', '/^<!ENTITY\s+(%?)\s*(' .
40 '|\s*(%' . _SUB_REGEXP_SYMBOL
. '+;)\s*' .
41 ')\s*(--.*?--)?("([^"]*)")?\s*>\s*(.*)$/s');
43 define('_REGEXP_INCLUDE_USE', '/^<!\[\s*%\s*([^;]*);\s*\[\s*(.*)$/s');
45 define('_DOCTYPE_RSS', 'http://www.rssboard.org/rss-0.91.dtd');
47 // Document Type Compilation
50 var $macros = array();
51 var $elements = array();
53 var $attributs = array();
54 var $entites = array();
55 var $regles = array();
56 var $pcdata = array();