[ Index ]

PHP Cross Reference of Drupal 6 (gatewave)

title

Body

[close]

/modules/taxonomy/ -> taxonomy.install (source)

   1  <?php
   2  // $Id: taxonomy.install,v 1.7.2.1 2009/01/06 15:46:38 goba Exp $
   3  
   4  /**
   5   * Implementation of hook_schema().
   6   */
   7  function taxonomy_schema() {
   8    $schema['term_data'] = array(
   9      'description' => 'Stores term information.',
  10      'fields' => array(
  11        'tid' => array(
  12          'type' => 'serial',
  13          'unsigned' => TRUE,
  14          'not null' => TRUE,
  15          'description' => 'Primary Key: Unique term ID.',
  16        ),
  17        'vid' => array(
  18          'type' => 'int',
  19          'unsigned' => TRUE,
  20          'not null' => TRUE,
  21          'default' => 0,
  22          'description' => 'The {vocabulary}.vid of the vocabulary to which the term is assigned.',
  23        ),
  24        'name' => array(
  25          'type' => 'varchar',
  26          'length' => 255,
  27          'not null' => TRUE,
  28          'default' => '',
  29          'description' => 'The term name.',
  30        ),
  31        'description' => array(
  32          'type' => 'text',
  33          'not null' => FALSE,
  34          'size' => 'big',
  35          'description' => 'A description of the term.',
  36        ),
  37        'weight' => array(
  38          'type' => 'int',
  39          'not null' => TRUE,
  40          'default' => 0,
  41          'size' => 'tiny',
  42          'description' => 'The weight of this term in relation to other terms.',
  43        ),
  44      ),
  45      'primary key' => array('tid'),
  46      'indexes' => array(
  47        'taxonomy_tree' => array('vid', 'weight', 'name'),
  48        'vid_name' => array('vid', 'name'),
  49      ),
  50    );
  51  
  52    $schema['term_hierarchy'] = array(
  53      'description' => 'Stores the hierarchical relationship between terms.',
  54      'fields' => array(
  55        'tid' => array(
  56          'type' => 'int',
  57          'unsigned' => TRUE,
  58          'not null' => TRUE,
  59          'default' => 0,
  60          'description' => 'Primary Key: The {term_data}.tid of the term.',
  61        ),
  62        'parent' => array(
  63          'type' => 'int',
  64          'unsigned' => TRUE,
  65          'not null' => TRUE,
  66          'default' => 0,
  67          'description' => "Primary Key: The {term_data}.tid of the term's parent. 0 indicates no parent.",
  68        ),
  69      ),
  70      'indexes' => array(
  71        'parent' => array('parent'),
  72      ),
  73      'primary key' => array('tid', 'parent'),
  74    );
  75  
  76    $schema['term_node'] = array(
  77      'description' => 'Stores the relationship of terms to nodes.',
  78      'fields' => array(
  79        'nid' => array(
  80          'type' => 'int',
  81          'unsigned' => TRUE,
  82          'not null' => TRUE,
  83          'default' => 0,
  84          'description' => 'Primary Key: The {node}.nid of the node.',
  85        ),
  86        'vid' => array(
  87          'type' => 'int',
  88          'unsigned' => TRUE,
  89          'not null' => TRUE,
  90          'default' => 0,
  91          'description' => 'Primary Key: The {node}.vid of the node.',
  92        ),
  93        'tid' => array(
  94          'type' => 'int',
  95          'unsigned' => TRUE,
  96          'not null' => TRUE,
  97          'default' => 0,
  98          'description' => 'Primary Key: The {term_data}.tid of a term assigned to the node.',
  99        ),
 100      ),
 101      'indexes' => array(
 102        'vid' => array('vid'),
 103        'nid' => array('nid'),
 104      ),
 105      'primary key' => array('tid', 'vid'),
 106    );
 107  
 108    $schema['term_relation'] = array(
 109      'description' => 'Stores non-hierarchical relationships between terms.',
 110      'fields' => array(
 111        'trid' => array(
 112          'type' => 'serial',
 113          'not null' => TRUE,
 114          'description' => 'Primary Key: Unique term relation ID.',
 115        ),
 116        'tid1' => array(
 117          'type' => 'int',
 118          'unsigned' => TRUE,
 119          'not null' => TRUE,
 120          'default' => 0,
 121          'description' => 'The {term_data}.tid of the first term in a relationship.',
 122        ),
 123        'tid2' => array(
 124          'type' => 'int',
 125          'unsigned' => TRUE,
 126          'not null' => TRUE,
 127          'default' => 0,
 128          'description' => 'The {term_data}.tid of the second term in a relationship.',
 129        ),
 130      ),
 131      'unique keys' => array(
 132        'tid1_tid2' => array('tid1', 'tid2'),
 133      ),
 134      'indexes' => array(
 135        'tid2' => array('tid2'),
 136      ),
 137      'primary key' => array('trid'),
 138    );
 139  
 140    $schema['term_synonym'] = array(
 141      'description' => 'Stores term synonyms.',
 142      'fields' => array(
 143        'tsid' => array(
 144          'type' => 'serial',
 145          'not null' => TRUE,
 146          'description' => 'Primary Key: Unique term synonym ID.',
 147        ),
 148        'tid' => array(
 149          'type' => 'int',
 150          'unsigned' => TRUE,
 151          'not null' => TRUE,
 152          'default' => 0,
 153          'description' => 'The {term_data}.tid of the term.',
 154        ),
 155        'name' => array(
 156          'type' => 'varchar',
 157          'length' => 255,
 158          'not null' => TRUE,
 159          'default' => '',
 160          'description' => 'The name of the synonym.',
 161        ),
 162      ),
 163      'indexes' => array(
 164        'tid' => array('tid'),
 165        'name_tid' => array('name', 'tid'),
 166      ),
 167      'primary key' => array('tsid'),
 168    );
 169  
 170    $schema['vocabulary'] = array(
 171      'description' => 'Stores vocabulary information.',
 172      'fields' => array(
 173        'vid' => array(
 174          'type' => 'serial',
 175          'unsigned' => TRUE,
 176          'not null' => TRUE,
 177          'description' => 'Primary Key: Unique vocabulary ID.',
 178        ),
 179        'name' => array(
 180          'type' => 'varchar',
 181          'length' => 255,
 182          'not null' => TRUE,
 183          'default' => '',
 184          'description' => 'Name of the vocabulary.',
 185        ),
 186        'description' => array(
 187          'type' => 'text',
 188          'not null' => FALSE,
 189          'size' => 'big',
 190          'description' => 'Description of the vocabulary.',
 191        ),
 192        'help' => array(
 193          'type' => 'varchar',
 194          'length' => 255,
 195          'not null' => TRUE,
 196          'default' => '',
 197          'description' => 'Help text to display for the vocabulary.',
 198        ),
 199        'relations' => array(
 200          'type' => 'int',
 201          'unsigned' => TRUE,
 202          'not null' => TRUE,
 203          'default' => 0,
 204          'size' => 'tiny',
 205          'description' => 'Whether or not related terms are enabled within the vocabulary. (0 = disabled, 1 = enabled)',
 206        ),
 207        'hierarchy' => array(
 208          'type' => 'int',
 209          'unsigned' => TRUE,
 210          'not null' => TRUE,
 211          'default' => 0,
 212          'size' => 'tiny',
 213          'description' => 'The type of hierarchy allowed within the vocabulary. (0 = disabled, 1 = single, 2 = multiple)',
 214        ),
 215        'multiple' => array(
 216          'type' => 'int',
 217          'unsigned' => TRUE,
 218          'not null' => TRUE,
 219          'default' => 0,
 220          'size' => 'tiny',
 221          'description' => 'Whether or not multiple terms from this vocabulary may be assigned to a node. (0 = disabled, 1 = enabled)',
 222        ),
 223        'required' => array(
 224          'type' => 'int',
 225          'unsigned' => TRUE,
 226          'not null' => TRUE,
 227          'default' => 0,
 228          'size' => 'tiny',
 229          'description' => 'Whether or not terms are required for nodes using this vocabulary. (0 = disabled, 1 = enabled)',
 230        ),
 231        'tags' => array(
 232          'type' => 'int',
 233          'unsigned' => TRUE,
 234          'not null' => TRUE,
 235          'default' => 0,
 236          'size' => 'tiny',
 237          'description' => 'Whether or not free tagging is enabled for the vocabulary. (0 = disabled, 1 = enabled)',
 238        ),
 239        'module' => array(
 240          'type' => 'varchar',
 241          'length' => 255,
 242          'not null' => TRUE,
 243          'default' => '',
 244          'description' => 'The module which created the vocabulary.',
 245        ),
 246        'weight' => array(
 247          'type' => 'int',
 248          'not null' => TRUE,
 249          'default' => 0,
 250          'size' => 'tiny',
 251          'description' => 'The weight of the vocabulary in relation to other vocabularies.',
 252        ),
 253      ),
 254      'primary key' => array('vid'),
 255      'indexes' => array(
 256        'list' => array('weight', 'name'),
 257      ),
 258    );
 259  
 260    $schema['vocabulary_node_types'] = array(
 261      'description' => 'Stores which node types vocabularies may be used with.',
 262      'fields' => array(
 263        'vid' => array(
 264          'type' => 'int',
 265          'unsigned' => TRUE,
 266          'not null' => TRUE,
 267          'default' => 0,
 268          'description' => 'Primary Key: the {vocabulary}.vid of the vocabulary.',
 269        ),
 270        'type' => array(
 271          'type' => 'varchar',
 272          'length' => 32,
 273          'not null' => TRUE,
 274          'default' => '',
 275          'description' => 'The {node}.type of the node type for which the vocabulary may be used.',
 276        ),
 277      ),
 278      'primary key' => array('type', 'vid'),
 279      'indexes' => array(
 280        'vid' => array('vid'),
 281      ),
 282    );
 283  
 284    return $schema;
 285  }
 286  


Generated: Thu Mar 24 11:18:33 2011 Cross-referenced by PHPXref 0.7