Database schema:

CREATE TABLE "PlayerInfo" (
	"ELITEID" INTEGER, 
	"PlayerName" TEXT, 
	birthdate TEXT, 
	birthyear DATE, 
	birthmonth INTEGER, 
	birthday INTEGER, 
	birthplace TEXT, 
	nation TEXT, 
	height INTEGER, 
	weight INTEGER, 
	position_info TEXT, 
	shoots TEXT, 
	draftyear INTEGER, 
	draftround INTEGER, 
	overall INTEGER, 
	overallby TEXT, 
	"CSS_rank" INTEGER, 
	"sum_7yr_GP" INTEGER, 
	"sum_7yr_TOI" INTEGER, 
	"GP_greater_than_0" TEXT, 
	PRIMARY KEY ("ELITEID"), 
	CONSTRAINT fk_playerinfo_height_info FOREIGN KEY(height) REFERENCES height_info (height_id),
	CONSTRAINT fk_playerinfo_weight_info FOREIGN KEY(weight) REFERENCES weight_info (weight_id)
)


CREATE TABLE "SeasonStatus" (
	"ELITEID" INTEGER -- example: ['3668', '3667'],
	"SEASON" TEXT -- example: ['1999-2000', '1997-1998'],
	"TEAM" TEXT -- example: ['Canada U20', 'Rimouski Oceanic'],
	"LEAGUE" TEXT -- example: ['QMJHL', 'WJC-20'],
	"GAMETYPE" TEXT -- example: ['Regular Season', 'Playoffs'],
	"GP" INTEGER -- example: ['58', '18'],
	"G" INTEGER -- example: ['15', '44'],
	"A" INTEGER -- example: ['71', '26'],
	"P" INTEGER -- example: ['115', '41'],
	"PIM" INTEGER -- example: ['117', '46'],
	"PLUSMINUS" INTEGER -- example: ['4', '27'],
	CONSTRAINT fk_seasonstatus_playerinfo FOREIGN KEY("ELITEID") REFERENCES "PlayerInfo" ("ELITEID")
)


CREATE TABLE height_info (
	height_id INTEGER -- example: ['65', '67'],
	height_in_cm INTEGER -- example: ['170', '165'],
	height_in_inch TEXT -- example: ['5\'5"', '5\'7"'],
	PRIMARY KEY (height_id)
)


CREATE TABLE weight_info (
	weight_id INTEGER -- example: ['159', '154'],
	weight_in_kg INTEGER -- example: ['72', '70'],
	weight_in_lbs INTEGER -- example: ['159', '154'],
	PRIMARY KEY (weight_id)
)

Question: Identify the name and position of the player who has committed the most rule violations.
Evidence: name of the player refers to PlayerName; position of the player refers to position_info; committed the most rule violations refers to MAX(PIM);

SQL:
SELECT T2.PlayerName, T2.position_info FROM SeasonStatus AS T1 INNER JOIN PlayerInfo AS T2 ON T1.ELITEID = T2.ELITEID WHERE T1.PIM = ( SELECT MAX(PIM) FROM SeasonStatus )