Define neoplasia, discribe classification of tumor,describe mode/route of spread of malignant cancer with suitable examples

Reading File
Finding Sources
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Reading File
Reading File
Reading File
Reading File
Reading File
Reading File
Reading File
Loading Image
Loading Image
I now have everything needed for a detailed, well-illustrated answer. Let me compile the comprehensive response.

Neoplasia: Definition, Classification, and Routes of Spread

Source: Robbins & Kumar Basic Pathology, 11th edition

1. Definition of Neoplasia

Neoplasia literally means "new growth" (Greek: neo = new, plasia = formation). Neoplastic cells are said to be "transformed" because they replicate incessantly as a result of resistance to the regulatory influences that control normal cells.
"Neoplasms enjoy a degree of autonomy, but some important dependencies remain. All neoplasms, for example, depend on the host for their nutrition and blood supply." - Robbins Basic Pathology, p. 214
In common usage, a neoplasm is referred to as a tumor, and the study of tumors is called oncology (Greek: oncos = tumor).

Key features shared by all cancers:

  • Cancer is a genetic disorder caused by DNA mutations (somatic or inherited), plus epigenetic alterations
  • Genetic alterations are heritable (passed to daughter cells) - subject to Darwinian selection
  • Individual tumors are clonal (progeny of one transformed cell)
  • Tumor progression occurs by clonal evolution favoring subclones with more aggressive characteristics

Components of all tumors (benign and malignant):

ComponentDescription
ParenchymaNeoplastic/transformed cells - determines biologic behavior and gives tumor its name
StromaSupporting host-derived connective tissue, inflammatory cells, blood vessels - provides blood supply

2. Classification of Tumors

Tumors are broadly categorized as benign or malignant based on microscopic and gross characteristics.

A. Benign Tumors

A tumor is benign when its characteristics indicate it will remain localized and is amenable to local surgical removal; patients are generally curable.
Naming convention: Suffix -oma attached to the cell of origin.
Cell/Tissue of OriginBenign Tumor Name
FibroblastFibroma
CartilageChondroma
FatLipoma
BoneOsteoma
Smooth muscleLeiomyoma
Blood vesselHemangioma
NerveNeuroma
Special benign epithelial tumor terms:
  • Adenoma - benign epithelial neoplasm (glandular or non-glandular), e.g. thyroid adenoma, colonic adenoma
  • Papilloma - produces fingerlike fronds (e.g. papilloma of bladder, intraductal papilloma of breast)
  • Polyp - projects above a mucosal surface (e.g. colonic polyp)
  • Cystadenoma - hollow cystic mass (e.g. ovarian cystadenoma)

B. Malignant Tumors

A tumor is malignant when it is locally invasive and has the capacity to spread to distant sites (metastasize). All malignant tumors are collectively called cancers (Latin: crab).
Naming convention by tissue of origin:
OriginMalignant Tumor NameExample
Epithelium (any germ layer)Carcinoma
- Glandular epitheliumAdenocarcinomaColon adenocarcinoma, breast adenocarcinoma
- Squamous epitheliumSquamous cell carcinomaLung SCC, cervical SCC
- Transitional epitheliumTransitional cell carcinomaBladder carcinoma
- Poorly differentiatedUndifferentiated carcinomaAnaplastic thyroid carcinoma
Mesenchymal tissueSarcoma
- FatLiposarcoma
- CartilageChondrosarcoma
- Smooth muscleLeiomyosarcoma
- Striated muscleRhabdomyosarcoma
- BoneOsteosarcoma
Blood cellsLeukemia / LymphomaCML, Hodgkin lymphoma
Important exceptions (malignant despite -oma suffix):
  • Melanoma (malignant tumor of melanocytes)
  • Lymphoma (malignant lymphoid neoplasm)
  • Mesothelioma (malignant tumor of mesothelium)
  • Seminoma (malignant germ cell tumor of testis)
Mixed and special tumors:
  • Pleomorphic adenoma (mixed tumor of salivary gland) - benign, shows epithelial + myxoid stromal differentiation
  • Teratoma - contains cells from more than one germ layer; can be benign (mature) or malignant (immature); arises from totipotent germ cells of ovary/testis
  • Hamartoma - disorganized mass of tissue native to that site (e.g. pulmonary hamartoma); benign
  • Choristoma - heterotopic nest of cells (e.g. pancreatic tissue in gastric submucosa); not truly neoplastic

Benign vs. Malignant - Key Distinguishing Features

Comparison of benign leiomyoma vs malignant leiomyosarcoma of uterus
Fig. 6.10: Comparison between benign leiomyoma and malignant leiomyosarcoma of the uterus (Robbins Basic Pathology)
FeatureBenignMalignant
DifferentiationWell differentiatedVariable; may be anaplastic
Growth rateSlowUsually rapid
Local invasionNon-invasive, encapsulatedInvasive, no capsule
MetastasisAbsentPresent (hallmark)
Nuclear pleomorphismMinimalMarked
MitosesRare, normalFrequent, atypical
NecrosisRareCommon
Three features that most reliably distinguish benign from malignant:
  1. Differentiation and anaplasia
  2. Local invasion
  3. Metastasis

3. Routes/Modes of Spread of Malignant Tumors

Metastasis is defined as the spread of a tumor to sites that are physically discontinuous with the primary tumor and is one of the hallmarks of malignancy.
"Approximately 30% of patients with newly diagnosed solid tumors present with clinically evident metastases, and an additional 20% have occult metastases at the time of diagnosis." - Robbins Basic Pathology, p. 221
Malignant neoplasms disseminate by three pathways:

Route 1: Seeding Within Body Cavities (Transcoelomic Spread)

Occurs when neoplasms invade a body cavity and shed cells that implant on peritoneal, pleural, or pericardial surfaces.
Mechanism: Tumor cells penetrate the wall of a body cavity → shed into the cavity → float freely → implant and grow on serosal surfaces without necessarily invading the underlying tissue.
Classic Examples:
TumorCavityResult
Ovarian carcinomaPeritoneal cavityWidely seeds the peritoneal surfaces ("carcinomatosis peritonei"), may spare underlying tissue
Medulloblastoma / EpendymomaCSF (cerebral ventricles)Seeding of meningeal surfaces of brain and spinal cord via cerebrospinal fluid
Gastric carcinomaPeritoneal cavityKrukenberg tumor (bilateral ovarian metastasis via transcoelomic spread)
MesotheliomaPleural cavityDiffuse pleural implants

Route 2: Lymphatic Spread

The most common initial route, particularly for carcinomas (epithelial malignancies).
Mechanism:
  1. Tumor cells invade lymphatic channels
  2. Travel to regional lymph nodes
  3. Cells may pass through proximal nodes and be trapped in subsequent nodes ("skip metastases")
  4. Cells can eventually reach the vascular compartment via the thoracic duct
Sentinel lymph node: The first regional lymph node receiving lymph flow from a primary tumor. Identified by injection of dyes or radiolabeled tracers. Biopsy determines extent of spread.
Important caveat: Enlarged nodes near a tumor do not always mean cancer - reactive hyperplasia (lymphadenitis) from tumor necrosis products can also enlarge nodes. Biopsy is necessary.
Classic Examples:
TumorPattern of Lymphatic Spread
Breast carcinomaInitially to axillary nodes; medial lesions spread to internal mammary nodes; later, supraclavicular and infraclavicular nodes seeded
Lung carcinomaHilar and mediastinal nodes
Colorectal carcinomaMesenteric nodes
Cervical carcinomaPelvic lymph nodes
Gastric carcinomaLeft supraclavicular node (Virchow's node / Troisier's sign) via thoracic duct

Route 3: Hematogenous Spread

The dominant route for sarcomas (mesenchymal malignancies), though carcinomas also use this pathway.
Mechanism:
  • Tumor cells preferentially penetrate thin-walled veins rather than arteries
  • Bloodborne cells arrest in the first capillary bed they encounter
  • Portal system drains to the liver → liver most common site of hematogenous metastasis from GI tumors
  • Caval blood flows to lungs → lungs most common site from systemic tumors
  • Organs near the vertebral column (thyroid, prostate) drain via the paravertebral (Batson's) plexus → spine metastases
Classic Examples:
Primary TumorPreferred Sites of Hematogenous MetastasisMechanism
Colorectal carcinomaLiver (first), then lungsPortal venous drainage to liver
Lung carcinomaBrain, adrenal glands, liver, boneSystemic arterial spread via pulmonary veins
Prostatic carcinomaBone (osteoblastic)Paravertebral venous plexus (Batson's plexus)
Thyroid carcinomaBone, lungsParavertebral plexus + hematogenous
Renal cell carcinomaLungs, bone; also grows within the inferior vena cavaDirect venous extension
Hepatocellular carcinomaGrows within hepatic veins and inferior vena cava to right heartIntravascular growth
NeuroblastomaLiver and boneHematogenous
Uveal melanomaLiverOrgan-specific homing
Breast carcinomaBone, liver, lungs, brainSystemic hematogenous spread
Why some organs are rarely involved despite rich blood supply: Skeletal muscle, for example, is rarely a site of metastases - the molecular basis involves specific tumor cell-organ interactions (organ-specific homing molecules).

Liver Studded with Metastatic Cancer (Hematogenous Spread)

Liver studded with metastatic cancer nodules
Fig. 6.9: A liver studded with metastatic cancer - multiple yellowish-white tumor nodules scattered throughout the liver parenchyma (Robbins Basic Pathology, p. 221)

Summary Table: Routes of Spread

RouteTypical TumorsClassic Example
Transcoelomic (cavity seeding)Carcinomas involving serosal surfacesOvarian carcinoma → peritoneal seeding
LymphaticCarcinomas (first route)Breast Ca → axillary nodes
HematogenousSarcomas primarily; also carcinomasColorectal Ca → liver; Lung Ca → brain
Key rule: Carcinomas tend to spread via lymphatics first, then blood. Sarcomas tend to spread hematogenously. However, all routes can be used by any malignant tumor.

All content sourced from: Robbins & Kumar Basic Pathology (Robbins Pathology), pp. 214-222

Create a comparison table of benign vs malignant tumor characteristics as a PDF reference

Reading File
Running Command

ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && echo "created"

Running Command

mkdir -p /tmp/workspace/neoplasia-pdf && cat > /tmp/workspace/neoplasia-pdf/generate_pdf.py << 'PYEOF' from reportlab.lib.pagesizes import A4 from reportlab.lib import colors from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle from reportlab.lib.units import cm, mm from reportlab.platypus import ( SimpleDocTemplate, Table, TableStyle, Paragraph, Spacer, HRFlowable, KeepTogether ) from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY from reportlab.platypus import PageBreak OUTPUT = "/tmp/workspace/neoplasia-pdf/Benign_vs_Malignant_Tumor.pdf" doc = SimpleDocTemplate( OUTPUT, pagesize=A4, leftMargin=1.8*cm, rightMargin=1.8*cm, topMargin=1.8*cm, bottomMargin=1.8*cm, ) # ── Colour palette ────────────────────────────────────────────────────────── DARK_BLUE = colors.HexColor("#1A3A5C") MED_BLUE = colors.HexColor("#2D6A9F") LIGHT_BLUE = colors.HexColor("#D6E8FA") BENIGN_COL = colors.HexColor("#1B7A3E") # deep green BENIGN_BG = colors.HexColor("#D6F0E0") # light green MALIG_COL = colors.HexColor("#B52B27") # deep red MALIG_BG = colors.HexColor("#FAD7D6") # light red HEADER_BG = colors.HexColor("#1A3A5C") # same as DARK_BLUE ROW_ALT = colors.HexColor("#F4F8FC") WHITE = colors.white BLACK = colors.HexColor("#1A1A1A") GOLD = colors.HexColor("#C8973A") SECTION_BG = colors.HexColor("#EBF3FB") styles = getSampleStyleSheet() title_style = ParagraphStyle( "Title", parent=styles["Normal"], fontSize=22, textColor=WHITE, alignment=TA_CENTER, spaceAfter=4, fontName="Helvetica-Bold", leading=26, ) subtitle_style = ParagraphStyle( "Subtitle", parent=styles["Normal"], fontSize=10, textColor=LIGHT_BLUE, alignment=TA_CENTER, spaceAfter=2, fontName="Helvetica", leading=13, ) section_style = ParagraphStyle( "Section", parent=styles["Normal"], fontSize=11, textColor=DARK_BLUE, alignment=TA_LEFT, fontName="Helvetica-Bold", leading=14, spaceBefore=8, spaceAfter=4, ) body_style = ParagraphStyle( "Body", parent=styles["Normal"], fontSize=8.5, textColor=BLACK, alignment=TA_LEFT, fontName="Helvetica", leading=11, ) cell_style = ParagraphStyle( "Cell", parent=styles["Normal"], fontSize=8, textColor=BLACK, alignment=TA_LEFT, fontName="Helvetica", leading=10.5, ) benign_cell = ParagraphStyle( "BenignCell", parent=cell_style, textColor=BENIGN_COL, fontName="Helvetica-Bold", ) malig_cell = ParagraphStyle( "MaligCell", parent=cell_style, textColor=MALIG_COL, fontName="Helvetica-Bold", ) feature_cell = ParagraphStyle( "FeatureCell", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", fontSize=8, ) note_style = ParagraphStyle( "Note", parent=styles["Normal"], fontSize=7.5, textColor=colors.HexColor("#555555"), fontName="Helvetica-Oblique", leading=10, alignment=TA_LEFT, ) footer_style = ParagraphStyle( "Footer", parent=styles["Normal"], fontSize=7, textColor=colors.HexColor("#888888"), fontName="Helvetica", alignment=TA_CENTER, ) P = Paragraph # shorthand # ── Helper ─────────────────────────────────────────────────────────────────── def pc(text, style=cell_style): return P(text, style) def fc(text): return P(text, feature_cell) def bc(text): return P(text, benign_cell) def mc(text): return P(text, malig_cell) # ── TITLE BLOCK ───────────────────────────────────────────────────────────── title_table = Table( [[P("Benign vs Malignant Tumor", title_style)], [P("A Comprehensive Pathology Reference Table", subtitle_style)], [P("Based on Robbins & Kumar Basic Pathology, 11th Edition", subtitle_style)]], colWidths=[17.4*cm], ) title_table.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), DARK_BLUE), ("TOPPADDING", (0,0), (-1,0), 14), ("BOTTOMPADDING", (0,-1), (-1,-1), 12), ("LEFTPADDING", (0,0), (-1,-1), 10), ("RIGHTPADDING", (0,0), (-1,-1), 10), ("LINEBELOW", (0,0), (-1,0), 1, GOLD), ])) # ── MAIN COMPARISON TABLE ──────────────────────────────────────────────────── col_w = [4.5*cm, 6.2*cm, 6.2*cm] header_row = [ fc("CHARACTERISTIC"), P("<b>BENIGN TUMOR</b>", ParagraphStyle("BH", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", fontSize=9, alignment=TA_CENTER)), P("<b>MALIGNANT TUMOR</b>", ParagraphStyle("MH", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", fontSize=9, alignment=TA_CENTER)), ] rows = [ # feature, benign, malignant ("Differentiation", "Well differentiated; closely resembles cells of origin", "Variable — from well to poorly differentiated; may be anaplastic (undifferentiated)"), ("Anaplasia", "Absent; cells are mature", "May be marked; cells show pleomorphism, hyperchromatic nuclei, abnormal mitoses"), ("Rate of Growth", "Slow, progressive; may stop or regress", "Usually rapid; rate correlates with degree of undifferentiation"), ("Nuclear Features", "Normal nuclear-cytoplasmic ratio; uniform chromatin", "Increased N:C ratio; hyperchromasia; prominent nucleoli; irregular chromatin"), ("Mitoses", "Rare; normal configuration", "Frequent; atypical tripolar or multipolar mitotic figures"), ("Encapsulation", "Usually encapsulated (fibrous capsule); clearly demarcated from surrounding tissue", "No capsule; poorly demarcated; infiltrative, irregular margins"), ("Local Invasion", "Non-invasive; grows by expansion and compression", "Locally invasive; penetrates and destroys surrounding tissue (hallmark)"), ("Metastasis", "Absent — defining feature of benign tumors", "Present — most reliable indicator of malignancy; ~30% of solid tumors present with metastases"), ("Necrosis & Hemorrhage", "Rare; well-vascularised, slow growth", "Common; rapid growth outstrips blood supply → ischaemic necrosis and haemorrhage"), ("Recurrence after Surgery", "Rare after complete excision", "Common if margins not clear; wide excision margins required"), ("Effect on Host", "Usually benign; may cause pressure on adjacent structures or obstruction", "Cachexia, paraneoplastic syndromes, organ destruction, death if untreated"), ("Prognosis", "Generally curable with local excision", "Variable; depends on type, grade, stage; may be fatal"), ("Stroma / Desmoplasia", "Stroma usually minimal and well organised", "May induce dense fibrous stroma (desmoplasia) — scirrhous tumour"), ("Tumour Markers", "Not typically elevated", "May produce tumour markers (CEA, AFP, PSA, CA-125, etc.)"), ] table_data = [header_row] for feat, ben, mal in rows: table_data.append([ fc(feat), bc(ben), mc(mal), ]) # Alternating row styling ts = [ # Header ("BACKGROUND", (0,0), (-1,0), HEADER_BG), ("BACKGROUND", (1,0), (1,0), BENIGN_COL), ("BACKGROUND", (2,0), (2,0), MALIG_COL), ("ALIGN", (0,0), (-1,-1), "LEFT"), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING",(0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 6), ("RIGHTPADDING",(0,0), (-1,-1), 6), ("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#CCCCCC")), ("LINEBELOW", (0,0), (-1,0), 1.5, GOLD), ("LINEAFTER", (0,0), (0,-1), 1.5, DARK_BLUE), ] for i in range(1, len(table_data)): bg = ROW_ALT if i % 2 == 0 else WHITE ts.append(("BACKGROUND", (0,i), (0,i), DARK_BLUE)) # feature col always dark ts.append(("BACKGROUND", (1,i), (1,i), BENIGN_BG if i % 2 == 0 else colors.HexColor("#E8F7EE"))) ts.append(("BACKGROUND", (2,i), (2,i), MALIG_BG if i % 2 == 0 else colors.HexColor("#FDF0EF"))) main_table = Table(table_data, colWidths=col_w, repeatRows=1) main_table.setStyle(TableStyle(ts)) # ── NOMENCLATURE SECTION ────────────────────────────────────────────────────── nom_header = Table( [[P("<b>TUMOUR NOMENCLATURE QUICK REFERENCE</b>", ParagraphStyle( "NomH", parent=cell_style, textColor=WHITE, fontSize=9.5, fontName="Helvetica-Bold", alignment=TA_CENTER))]], colWidths=[17.4*cm], ) nom_header.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), MED_BLUE), ("TOPPADDING", (0,0), (-1,-1), 6), ("BOTTOMPADDING", (0,0), (-1,-1), 6), ])) nom_col_w = [4.3*cm, 4.3*cm, 4.3*cm, 4.3*cm] nom_head_row = [ P("<b>Tissue of Origin</b>", ParagraphStyle("nh", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), P("<b>Benign</b>", ParagraphStyle("nh2", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), P("<b>Malignant</b>", ParagraphStyle("nh3", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), P("<b>Example / Notes</b>", ParagraphStyle("nh4", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), ] nom_rows_data = [ ("Fibrous tissue", "Fibroma", "Fibrosarcoma", "Dermatofibrosarcoma"), ("Fat", "Lipoma", "Liposarcoma", "Retroperitoneal liposarcoma"), ("Cartilage", "Chondroma", "Chondrosarcoma", "Long bones"), ("Bone", "Osteoma", "Osteosarcoma", "Most common primary bone cancer"), ("Smooth muscle", "Leiomyoma", "Leiomyosarcoma", "Uterine fibroids (benign)"), ("Striated muscle", "Rhabdomyoma", "Rhabdomyosarcoma", "Paediatric soft tissue"), ("Blood vessels", "Hemangioma", "Angiosarcoma", "Liver angiosarcoma"), ("Glandular epithelium", "Adenoma", "Adenocarcinoma", "Colon, thyroid, breast"), ("Squamous epithelium", "Squamous papilloma", "Squamous cell carcinoma", "Skin, cervix, lung"), ("Transitional epithelium", "Transitional papilloma", "Transitional cell carcinoma", "Bladder"), ("Melanocytes", "Melanocytic naevus (mole)", "Melanoma*", "Skin; *-oma suffix = malignant"), ("Lymphoid tissue", "—", "Lymphoma*", "*Always malignant despite suffix"), ("Plasma cells", "—", "Multiple myeloma*", "Bone marrow"), ("Germ cells (testis/ovary)", "Mature teratoma", "Seminoma* / Immature teratoma", "*Malignant despite -oma"), ("Mesothelium", "—", "Mesothelioma*", "Pleura/peritoneum; asbestos"), ] nom_data = [nom_head_row] for row in nom_rows_data: nom_data.append([pc(c) for c in row]) nom_ts = [ ("BACKGROUND", (0,0), (-1,0), DARK_BLUE), ("ALIGN", (0,0), (-1,-1), "LEFT"), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 4), ("BOTTOMPADDING",(0,0), (-1,-1), 4), ("LEFTPADDING", (0,0), (-1,-1), 5), ("RIGHTPADDING",(0,0), (-1,-1), 5), ("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#CCCCCC")), ("LINEBELOW", (0,0), (-1,0), 1.5, GOLD), ] for i in range(1, len(nom_data)): bg = ROW_ALT if i % 2 == 0 else WHITE nom_ts.append(("BACKGROUND", (0,i), (-1,i), bg)) nom_table = Table(nom_data, colWidths=nom_col_w, repeatRows=1) nom_table.setStyle(TableStyle(nom_ts)) # ── ROUTES OF SPREAD BOX ───────────────────────────────────────────────────── spread_header = Table( [[P("<b>ROUTES OF SPREAD OF MALIGNANT TUMOURS</b>", ParagraphStyle( "SpH", parent=cell_style, textColor=WHITE, fontSize=9.5, fontName="Helvetica-Bold", alignment=TA_CENTER))]], colWidths=[17.4*cm], ) spread_header.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,-1), MALIG_COL), ("TOPPADDING", (0,0), (-1,-1), 6), ("BOTTOMPADDING", (0,0), (-1,-1), 6), ])) spread_col_w = [3.5*cm, 5.0*cm, 4.5*cm, 4.2*cm] spread_head_row = [ P("<b>Route</b>", ParagraphStyle("sh", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), P("<b>Mechanism</b>", ParagraphStyle("sh2", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), P("<b>Typical Tumours</b>", ParagraphStyle("sh3", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), P("<b>Classic Example</b>", ParagraphStyle("sh4", parent=cell_style, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER)), ] spread_rows = [ ("1. Lymphatic Spread", "Tumor cells enter lymphatics → regional nodes → skip metastases possible → thoracic duct → blood", "Carcinomas (most common initial route)", "Breast Ca → axillary nodes; Gastric Ca → Virchow's node"), ("2. Hematogenous Spread", "Penetrate thin-walled veins; arrest in first capillary bed; portal → liver; caval → lungs", "Sarcomas (primary); also carcinomas", "Colorectal Ca → liver; Lung Ca → brain/adrenal; Prostatic Ca → bone (Batson's plexus)"), ("3. Transcoelomic (Cavity Seeding)", "Invade body cavity wall; shed cells implant on serosal surfaces", "Ovarian Ca, GI tumours, CNS tumours", "Ovarian Ca → peritoneal 'carcinomatosis'; Medulloblastoma → CSF spread"), ("4. Direct / Contiguous Spread", "Infiltrate and destroy immediately adjacent tissues; cross tissue planes", "Most carcinomas at advanced stage", "Rectal Ca → bladder; Cervical Ca → pelvic wall; Pancreatic Ca → duodenum"), ] spread_data = [spread_head_row] for row in spread_rows: spread_data.append([pc(c) for c in row]) spr_ts = [ ("BACKGROUND", (0,0), (-1,0), colors.HexColor("#8B0000")), ("ALIGN", (0,0), (-1,-1), "LEFT"), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("TOPPADDING", (0,0), (-1,-1), 5), ("BOTTOMPADDING",(0,0), (-1,-1), 5), ("LEFTPADDING", (0,0), (-1,-1), 5), ("RIGHTPADDING",(0,0), (-1,-1), 5), ("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#CCCCCC")), ("LINEBELOW", (0,0), (-1,0), 1.5, GOLD), ] for i in range(1, len(spread_data)): bg = colors.HexColor("#FDF0EF") if i % 2 == 0 else colors.HexColor("#FEF7F7") spr_ts.append(("BACKGROUND", (0,i), (-1,i), bg)) spr_ts.append(("TEXTCOLOR", (0,i), (0,i), MALIG_COL)) spr_ts.append(("FONTNAME", (0,i), (0,i), "Helvetica-Bold")) spread_table = Table(spread_data, colWidths=spread_col_w, repeatRows=1) spread_table.setStyle(TableStyle(spr_ts)) # ── KEY RULES BOX ──────────────────────────────────────────────────────────── rules_data = [ [P("<b>KEY PATHOLOGY RULES TO REMEMBER</b>", ParagraphStyle( "rh", parent=cell_style, textColor=WHITE, fontSize=9, fontName="Helvetica-Bold"))], [P("""<b>1. Metastasis = Malignancy</b> — Only malignant tumours metastasize; this is the most reliable single indicator of malignancy.<br/> <b>2. Exceptions to -oma rule:</b> Melanoma, Lymphoma, Mesothelioma, Seminoma, Myeloma — all malignant despite the "-oma" suffix.<br/> <b>3. Carcinoma vs Sarcoma:</b> Carcinomas arise from epithelium (all germ layers); Sarcomas from mesenchyme. Carcinomas spread via lymphatics first; Sarcomas via blood.<br/> <b>4. Anaplasia = reliable sign of malignancy</b> — The more undifferentiated (anaplastic), the more aggressive the tumour.<br/> <b>5. Sentinel node biopsy</b> — First node receiving lymph drainage; its status guides staging and treatment planning.<br/> <b>6. Batson's paravertebral plexus</b> — Explains why prostate and thyroid cancers preferentially metastasize to the vertebral column (spine).<br/> <b>7. Portal drainage → Liver metastases</b> — GI tract, pancreas, and spleen all drain via portal vein → liver is first capillary bed = most common site of GI tumour metastasis.""", ParagraphStyle("rb", parent=cell_style, fontSize=7.8, leading=11.5))], ] rules_table = Table(rules_data, colWidths=[17.4*cm]) rules_table.setStyle(TableStyle([ ("BACKGROUND", (0,0), (-1,0), MED_BLUE), ("BACKGROUND", (0,1), (-1,1), LIGHT_BLUE), ("TOPPADDING", (0,0), (-1,-1), 6), ("BOTTOMPADDING", (0,0), (-1,-1), 7), ("LEFTPADDING", (0,0), (-1,-1), 8), ("RIGHTPADDING", (0,0), (-1,-1), 8), ("BOX", (0,0), (-1,-1), 1, MED_BLUE), ])) # ── FOOTER ─────────────────────────────────────────────────────────────────── footer = P( "Reference: Robbins &amp; Kumar Basic Pathology, 11th Ed. (Robbins Pathology) — Neoplasia Chapter, pp. 214–229 | For educational use only", footer_style ) # ── BUILD DOCUMENT ──────────────────────────────────────────────────────────── story = [ title_table, Spacer(1, 5*mm), P("<b>BENIGN vs MALIGNANT: CHARACTERISTICS COMPARISON</b>", section_style), main_table, Spacer(1, 6*mm), nom_header, nom_table, Spacer(1, 6*mm), spread_header, spread_table, Spacer(1, 6*mm), rules_table, Spacer(1, 4*mm), footer, ] doc.build(story) print(f"PDF created: {OUTPUT}") PYEOF python /tmp/workspace/neoplasia-pdf/generate_pdf.py

Your PDF reference sheet is ready. Here's what's included:

Benign vs Malignant Tumor

PDF Document · PDF


The PDF contains four colour-coded sections on a single page:
  1. Main Comparison Table (14 characteristics) - Side-by-side benign (green) vs malignant (red) across: differentiation, anaplasia, growth rate, nuclear features, mitoses, encapsulation, local invasion, metastasis, necrosis, recurrence, host effects, prognosis, desmoplasia, and tumour markers.
  2. Tumour Nomenclature Quick Reference - 15 tissue types with benign/malignant names and clinical examples (including the important "-oma exceptions": melanoma, lymphoma, mesothelioma, seminoma, myeloma).
  3. Routes of Spread of Malignant Tumours - All 4 routes (lymphatic, hematogenous, transcoelomic, direct spread) with mechanism, typical tumour types, and classic examples.
  4. Key Pathology Rules - 7 high-yield exam rules including Batson's plexus, sentinel node, portal drainage logic, and the carcinoma vs sarcoma distinction.
Referenced from: Robbins & Kumar Basic Pathology, 11th Ed., pp. 214-229
This is a shared conversation. Sign in to Orris to start your own chat.