Entity Relationships
An overview of how the 10 entities relate to each other.
⚠️ The Most Important Relationship Fact (Read First)
Section titled “⚠️ The Most Important Relationship Fact (Read First)”YYNote’s “Lists” are not content ownership containers — they are “tag-filtered views” of content. And there are two independent types of lists:
| List Type | What It Is | What It Contains |
|---|---|---|
| To-Do List | A tag-filtered “to-do view” | Only to-dos |
| Sticky Note List | A tag-filtered “sticky note view” | Only sticky notes |
What this means in practice:
- A sticky note / to-do does not belong to any list (lists are “views,” not “containers”)
- A sticky note / to-do can have multiple tags
- A list = a set of tag filtering rules (saved search)
- The same sticky note / to-do can appear in multiple lists simultaneously (because it may match multiple lists’ tag rules)
- Saying “move a sticky note to another list” is inaccurate — the accurate phrasing is “modify the sticky note’s tags so it appears in different lists”
- The two list types (to-do lists / sticky note lists) do not interfere with each other: deleting one doesn’t affect the other, and they can’t contain each other’s content
Relationship Overview Diagram
Section titled “Relationship Overview Diagram” ┌──────────┐ │ Account │ ← User identity (must log in to use) └────┬─────┘ │ ▼┌────────────────────────────────────────────┐│ YYNote Data Space ││ ││ ┌────────────────┐ ┌────────────────┐ ││ │ To-Do List │ │ Sticky Note │ ││ │ (To-Do View) │ │ List │ ││ │ Tag-Filtered │ │ (Note View) │ ││ └────────┬───────┘ │ Tag-Filtered │ ││ │ └───────┬────────┘ ││ │ Filter │ Filter ││ ▼ ▼ ││ ┌────────┐ ┌────────┐ ││ │ To-Dos │ │ Sticky │ ││ │ │ │ Notes │ ││ └───┬────┘ └────┬───┘ ││ │ │ ││ │ Attached │ Attached ││ ▼ ▼ ││ ┌─────────────────────┐ ││ │ Tags │ ││ └─────────────────────┘ ││ ││ To-Do side also connects to: ││ ├► Recurring To-Do Rules (generate new ││ │ to-dos by rule) ││ └► Third-Party Calendar Events ││ (read-only display) ││ │└────────────────────────────────────────────┘ │ │ Sync ▼ Other DevicesCorrection note: Earlier versions depicted a “List ↔ Sticky Note/To-Do ownership relationship,” which is wrong. The correct relationship is “List ← Tag Rules → Sticky Note/To-Do.”
Relationship Inventory
Section titled “Relationship Inventory”Tags ↔ Sticky Notes / To-Dos 🟢
Section titled “Tags ↔ Sticky Notes / To-Dos 🟢”- Relationship: Many-to-many
- Attachment method: Both sticky notes and to-dos can have multiple tags
- Deleting a tag: Automatically removes the association from all attached sticky notes/to-dos (sticky note and to-do content is preserved)
- UI entry: Tag management + “Add Tag” on the content edit page
To-Do List ← Tags → To-Dos 🟢
Section titled “To-Do List ← Tags → To-Dos 🟢”- Relationship: A to-do list = a set of tag filtering rules; to-dos are “presented” in the list by matching tags
- Filtering logic (customer-friendly version):
- List tag rule = “All” → the list shows all to-dos
- List tag rule = “Untagged” → only shows to-dos without tags
- List tag rule = specific tags → only shows to-dos that have any of these tags
- The same to-do can appear in multiple to-do lists
- “Move to another list” is essentially modifying tags
- UI entry: Click different to-do lists in the sidebar — the content area switches display
Sticky Note List ← Tags → Sticky Notes 🟢
Section titled “Sticky Note List ← Tags → Sticky Notes 🟢”- Relationship: A sticky note list = a set of tag filtering rules; sticky notes are “presented” in the list by matching tags
- Filtering logic: Same as to-do lists
- The same sticky note can appear in multiple sticky note lists
- “Move to another list” is essentially modifying tags
- UI entry: Click different sticky note lists in the sidebar — the content area switches display
To-Do List vs Sticky Note List 🟢
Section titled “To-Do List vs Sticky Note List 🟢”- The two list types do not interfere with each other:
- Deleting a to-do list does not affect sticky note lists, and vice versa
- To-do lists will never show sticky notes, and sticky note lists will never show to-dos
- The two list types have independent configurations: To-do lists have settings like “Show Lunar Calendar / Hide Schedule,” while sticky note lists have settings like “Hide Sticky Note Time / Hide Sticky Note Tags”
To-Dos ↔ Recurring To-Do Rules 🟢
Section titled “To-Dos ↔ Recurring To-Do Rules 🟢”- Relationship: One-to-many (one rule → multiple generated to-dos)
- Generation mechanism: Daily scan of all rules → match today → check if already created today → if not, actually create a to-do in the list
- Deleting a rule: Previously generated to-dos are not cleaned up (they are independent data records)
- UI entry: Recurring to-do management page
To-Dos ↔ Third-Party Calendar Events 🟡
Section titled “To-Dos ↔ Third-Party Calendar Events 🟡”- Relationship: One-to-one (each third-party calendar event is displayed as a “read-only to-do”)
- Direction: One-way (pulled from external calendar into YYNote)
- UI exposure:
- Calendar layer (subscription source): Can create, delete, modify, view
- Event layer: View-only (must edit in the original calendar service)
Account ↔ Membership 🟢
Section titled “Account ↔ Membership 🟢”- Relationship: Zero-or-one to one (an account can exist without membership)
- Binding: Membership is bound to the account, not the device
- Activation method: New users get 7-day membership upon registration (consistent across all platforms)
- Membership differentiators: Not about quantity caps — it’s that certain features are membership-only (desktop weather, third-party calendar sync, third-party calendar event local notifications, advanced desktop widget layouts, etc.)
- Expiry behavior: Returns to “non-member” status, all data retained (features locked, data can be exported via PC client); account does not become invalid
- Data ownership: Data always belongs to the user and can be exported at any time
Account ↔ Sync 🟢
Section titled “Account ↔ Sync 🟢”- Relationship: Enabled upon login
- Not logged in: YYNote cannot be used (login dialog pops up immediately when not logged in)
- Conflict strategy: Later-saved overwrites earlier-saved + data with uncommitted local modifications is not overwritten
Key “Easily Confused Relationships” Comparison
Section titled “Key “Easily Confused Relationships” Comparison”To-Do List vs Sticky Note List
Section titled “To-Do List vs Sticky Note List”| Dimension | To-Do List | Sticky Note List |
|---|---|---|
| Contains | Only to-dos | Only sticky notes |
| Is | A tag-filtered “to-do view” | A tag-filtered “sticky note view” |
| Mutual non-interference | Deleting this doesn’t affect sticky note lists | Deleting this doesn’t affect to-do lists |
| Quantity limit | ❌ Unlimited (both members and non-members can create unlimited lists) | ❌ Unlimited (both members and non-members can create unlimited lists) |
List vs Tag
Section titled “List vs Tag”| Dimension | List (To-Do / Sticky Note) | Tag |
|---|---|---|
| What it is | A set of tag filtering rules (view) | A content marker |
| Quantity | Users can create multiple lists | Users can create multiple tags |
| Relationship | ”List ← Tag Rules → Content" | "Content ↔ Tag” (many-to-many attachment) |
| Deletion | Deleting a list does not affect the content itself | Deleting a tag only removes the attachment |
| Cross-content | Same content can appear in multiple lists | Same content can have multiple tags |
| Quantity limit | ❌ Unlimited (both members and non-members can create unlimited items) | ❌ Unlimited (both members and non-members can create unlimited items) |
Recurring To-Do Rules vs To-Dos
Section titled “Recurring To-Do Rules vs To-Dos”| Dimension | Recurring To-Do Rule | To-Do |
|---|---|---|
| What it is | A periodic generation rule | A specific task item |
| Lifecycle | Long-lived (until user deletes it) | One-off (can be restored to incomplete after completion) |
| Mutual deletion impact | Deleting a rule does not affect already-generated to-dos | Deleting a to-do does not affect the rule |
| Generation relationship | Scans rules daily, if matched, actually creates a to-do | The to-do itself records “which rule it came from” |
Delete vs Archive vs Complete
Section titled “Delete vs Archive vs Complete”| Operation | Applicable To | Recoverable? | UI Entry |
|---|---|---|---|
| Delete | Sticky notes / to-dos / tags / to-do lists / sticky note lists | ❌ Irrecoverable | ”Delete” button on each detail page |
| Archive | Sticky notes only | ✅ One-click recoverable | ”Archive” button on sticky note widget + “Restore” button in archive area |
| Complete | To-dos only | ✅ One-click recoverable | ”Complete” checkbox on to-do + “Restore” button in completed area |
Special Warning: YYNote has no “recycle bin” / “deleted items” tab. There are related methods in the code but the UI does not invoke them (suspected dead code). User-deleted content cannot be recovered within the product.
The only remedy: Before deletion, users can use the “Export Deleted Records” feature to generate a
小黄条已删除记录YYYYMMDD.xlsxbackup file.