code: def datasetHeaderChunk(key, lines):
      
      KEYWORDS = ('DATASET',
                  'OBJTYPE',
                  'VECTYPE',
                  'BEGSCL',
                  'BEGVEC',
                  'OBJID',
                  'ND',
                  'NC',
                  'NAME')
  
      TYPE_KEYS = ('BEGSCL', 'BEGVEC')
  
      result = {'type': None,
                'numberData': None,
                'numberCells': None,
                'name': None,
                'objectID': None,
                'objectType': None,
                'vectorType': None}
  
      chunks = pt.chunk(KEYWORDS, lines)
  
      for key, chunkList in iteritems(chunks):
  
          for chunk in chunkList:
              schunk = pt.splitLine(chunk[0])
  
              if key == 'ND':
                  result['numberData'] = int(schunk[1])
  
              elif key == 'NC':
                  result['numberCells'] = int(schunk[1])
  
              elif key == 'NAME':
                  result['name'] = schunk[1]
  
              elif key == 'OBJID':
                  result['objectID'] = int(schunk[1])
  
              elif key == 'OBJTYPE':
                  result['objectType'] = schunk[1]
  
              elif key == 'VECTYPE':
                  result['vectorType'] = schunk[1]
  
              elif key in TYPE_KEYS:
                  result['type'] = schunk[0]
  
      return result
docs: Process the dataset header