Fields on a Lisbon florist listing page
Fields on a Lisbon florist listing page are the cells in the record, printed when they have a value and named as empty when they do not. The page does not add a street, a price, a review sentence, or a photo of a counter. Twelve rows have a name, a rank, a category, a rating, a review count, a phone, an hours string, and a place id. Eleven have a website string. Miss Flower’s website is empty. Neighborhood is empty on all 12. maps_url is empty on all 12. Address is not a populated field. The Flores Island homepage, accessed 2 Nov 2026, is titled “Flores Island - Bouquets & Flowers in Lisbon | Azores-Inspired Floral Designs”. That title is a fetched sentence. It is not written back into the neighborhood cell, which stays empty. Flor e Pão’s row repeats this boundary for one record. The other 11 rows use the same field list.
Key takeaways
- The homepage columns and the row page are the same file. A number that appears on one and not the other is a bug, not a discovery.
- Empty is a value. Replacing it with a parish from a meta description breaks the file.
- A shared phone is a string match. It is not, by itself, a finding that two counters are one company.
- http and https are stored as typed. Redirects observed on 2 Nov 2026 are notes, not edits to the cell.
- Rank stays the sort in the rank guide. A future paid block does not reorder it.
Which cells are full, and which cells are blank?
Name, rank, category, rating, review count, phone, hours, and place id are full on every row. That is eight full columns, with one caveat on hours: the characters are present, and on two rows the Saturday portion is cut off. “Present” does not mean “complete”. The weekend guide is the inventory of that cut. Category is “Florista” on 11 rows and “Designer de flores” on Flores Island Shop only. The strings are Portuguese because that is how they are stored. The column header on the homepage is the English word Category. The cell is not translated, so a reader can see the source token.
Phone is full on all 12 and is shown as text, not as a call link. The page is not a dialer. Four phone strings contain the digit group 21 immediately after +351: Pequeno Jardim, Florista Bella, Fleur de Paris, and Fleurs à Lisbonne. The other eight begin with 9. That is a count of characters. It is not a claim about a numbering plan, because this brief supplied no numbering-plan document, and we do not invent one. Two of the eight 9-numbers are the same string, so the file has 11 distinct phone strings and 12 rows.
Website is the column with a hole. Miss Flower is the hole. The other 11 strings are printed exactly, including Florista Bella’s Facebook URL with the percent-encoded question mark stored in the file. We do not silently decode it into a different URL. A fetch of the stored URL on 2 Nov 2026 returned HTTP 200 and a Facebook login document. No menu, no price, and no hours were quoted from that document, because a login wall is not a shop page. The hours checker does not need the website column. It reads the hours string, which Bella does have, complete, with Sunday 10:00–13:00.
| Field | Rows with a value | Rows without a value | What the page does |
|---|---|---|---|
| Phone | 12 | 0 | Prints the string as text |
| Website | 11 | 1 (Miss Flower) | Prints the stored URL |
| Neighborhood | 0 | 12 | Prints “Not in the record” |
| Address | 0 | 12 | Prints “Not in the record” |
| Maps URL | 0 | 12 | Does not build a link from the place id |
| Place ID | 12 | 0 | Prints the stored id as text |
| Hours | 12 | 0 strings, 2 truncated tails | Prints the raw string and a labeled parse |
What did the 2 Nov 2026 fetches add, and what did they refuse?
Fetches were made only for non-empty website strings, and only far enough to record status, final URL, title, and meta description. They were not used to fill blank cells. Three stored URLs begin with http: Flor e Pão, Pequeno Jardim, and Saudade Flores. Each followed a redirect to an https host on that date. The cell still shows the http string, because that is what the file holds. The note “redirected” lives in the guides, not as a rewritten cell. Fiorella’s www host redirected to the apex host. Fleurs à Lisbonne’s stored URL redirected to a /pt path. The Fleurs à Lisbonne homepage title on that path was “Envio Grátis de Flores em 24h | Fleurs à Lisbonne”.
The Flores Island shop page is the website stored on Flores Island Studio, not on Flores Island Shop. Shop’s website is the host root. Studio’s website is the /shop path. Both rows store the phone +351 929 056 863. The root homepage’s meta description, quoted in the ratings guide, names two studios in the shop’s words. This guide does not repeat that quote. It records the field alignment: two ranks, one phone string, two paths on one host, two category strings (“Designer de flores” on the shop row, “Florista” on the studio row), and identical hours characters, 10:00–19:00 every day. A reader can hold those alignments without a sentence that says “we confirmed they are one business”. We did not.
Entregas de flores ao domicílio em Lisboa.
The sentence is theirs, including the surrounding marketing that calls the shop a florist of choice. We quote the delivery clause and we do not import the praise into the rank. Rank 12 is 4.4 and 299 reviews. The praise is not a field. The Finaflor by Danni homepage meta description names Alvalade. The neighborhood cell on that row remains empty. Alvalade is available to a reader as a quoted sentence with an access date. It is not available as our column.
What is the place id for, if there is no map link?
Every row stores a place id beginning with the characters ChIJ. The ids are distinct across the 12 rows. We print them so the record can be matched later if a maps URL is supplied in a future file. We do not turn the id into a search URL, because that URL is not the cell. A reader who pastes the id into a map product is leaving this page and using another service. This page’s job stops at showing the characters. The same restraint covers photos. No merchant photo is stored, and none is downloaded. A picture elsewhere on the desk, where one is used, is a still life of stems on stone. It is not captioned as any of these 12 names.
Hours are printed twice on the row page, on purpose. First the raw string, so a truncated tail is visible as characters. Then a parse that labels each day in English and refuses to invent a range. The parse is a display of the string, and the caption says so. If the parse and the raw string ever disagree, the raw string wins and the parse is a bug. The weekday guide uses that parse for Monday stamps. It does not replace the raw line on the row.
What this reading keeps
- +
- A reader can see the hole. Miss Flower has no website link because the cell is empty, not because the link was forgotten.
- +
- Phone is text, so the page does not become a call button with twelve numbers competing for the thumb.
- +
- Place ids are kept without being promoted into map embeds the file does not contain.
Where this reading stops
- −
- A homepage can name a parish that our cell does not. The reader has to tolerate both facts.
- −
- A shared phone is easy to over-read. The alignment is real, and the corporate conclusion is not in the file.
- −
- The Facebook URL is stored and linked as stored. The fetch did not yield a shop description.
What happens if a paid row is added later?
The launch table has no Sponsored row. The rule for a later one is narrow. The site would need Search Console impressions already recorded. The business would need an email already stored on a CRM fiche. The block would be labeled Sponsored. The rank order of the organic rows would stay the order in the file. None of those conditions is being simulated with a sample row. The list-your-business page states the same rule without a form. A business inquiry uses the contact page, which is a separate route from the shortlist.
How should a listing page be read?
- Read rank as the file order. Confirm the rating and the review count beside it, not instead of it.
- Read the category token as stored. Do not translate “Designer de flores” into a different rank.
- Read the raw hours string before the parsed table, and stop if the Saturday tail has no closing bracket.
- Copy the phone as text. Do not expect the page to dial.
- Open the website only if the cell is non-empty. Expect three of the stored URLs to start with http.
- Leave neighborhood, address, and maps URL alone when the page says they are not in the record.
- Treat a shared phone as a match to check, not as a merger of two ranks.
- If a cell on the page is not in the file, use the corrections form. The window is 72 hours from notice.
| Source | What the fetch established | URL | |
|---|---|---|---|
| Flores Island homepage | Title names bouquets and flowers in Lisbon. The row’s neighborhood cell stays empty. | https://www.floresisland.pt/ | |
| Finaflor by Danni homepage | Meta description names Alvalade. That name is not copied into the neighborhood field. | https://www.finaflorbydanni.com/ | |
| Fleurs à Lisbonne homepage | Redirected to /pt. The meta description offers home delivery in Lisbon in the shop’s words. | https://www.fleursalisbonne.com/ | |
| Flores Island shop page | Stored on the Studio row. Title begins “Shop \ | Flores Island”. | https://www.floresisland.pt/shop |
| Florista Bella website field | Stored Facebook URL returned a login document. No shop sentence was quoted. | https://m.facebook.com/floresbybella/%3Flocale2%3Dpt_PT |
Phone strings are copied with their spacing intact, including the space after +351. A row page that drops a digit would be a correction, not a style edit. The same standard applies to the place id: the characters are case-sensitive, and a lowercased copy would fail a later match. Twelve ids begin with ChIJ and then diverge. None is repeated. That uniqueness is why the id can sit on the page as a key without also becoming a map.
The listing page is a mirror with one labeled parse of the hours string. The guides around it are where means, gaps, and fetches are allowed to appear. If the mirror and the file diverge, the file is the one to correct toward, and the divergence belongs on the corrections log with the old text, the new text, and the date.
Frequently asked questions
Why is there no address on a listing page?
The file has no address field with a value. The shortlist rule is to print an address only when the record has one. All 12 rows lack one, so the page says the address is not in the record instead of borrowing a street from a shop title.
Which two rows share a phone string?
Flores Island Shop and Flores Island Studio both store +351 929 056 863. Their websites share the host floresisland.pt, one at the root and one at /shop. That is a string match. It is not a tested claim that the counters are one business.
Why is Miss Flower missing a website link?
The website field is an empty string. The page does not invent a domain. Eleven other rows have a website string, and those strings are printed as stored, including three that begin with http rather than https.
Does a future Sponsored row change these fields?
Not the organic rank. A paid block is not rendered on this launch. If one is added later, the rule is a Sponsored label, Search Console impressions already recorded, and an email already on a CRM fiche. The rank column stays the file order.