# Practitioner lesson: hand a client a readable schema package This lesson uses the synthetic shop schema in this example. It is not a real client file. No customer data. 1. Inspect the SQL first. Confirm it is CREATE TABLE text, not a live database dump of rows. SchemaHand reads table and column definitions plus foreign keys and comments. It does not connect to a database and does not run queries. 2. Open handoff.html. You should see every table, every column, and every relationship the parser kept. Unused statements (CREATE SCHEMA, CREATE INDEX in this file) stay listed as unused. They are not secret tables. 3. Add a client-facing note on the table the client will ask about first. Write in their words: what the table is for, what not to load into it, who owns it. 4. Use Save edited copy. Reopen the new HTML file and confirm the note is still there. Names, columns, and relationships do not change when you edit notes. 5. Open dictionary.csv. Use it as the packing list: schema, table, column, type, keys. A representative foreign key such as addresses.customer_id must appear here as app.customers(id), matching the HTML. 6. Know the split: notes you type in the HTML stay in the HTML. They do not flow into the CSV. If you need the same sentence in both, copy it yourself. Reuse this on a real job only with the paid offline edition, which reads SQL you paste on your machine. This free zip cannot parse a new file. It is one frozen example. Do not promise GDPR, data migration, universal SQL, or query results. Do not send this zip as if it were the client's database.