这几天看了下ibooks的数据库字段,做了一些整理,为后续做一个笔记整合应用做一个准备。主要分成两部分:MacOS应用和iOS应用。
在MacOS应用中进行增删改查,导入ibooks的笔记数据等操作复杂的功能
- 数据导入,重复导入,增量更新,源数据
- 数据展示、搜索
- 标签的分类 标签体系
- 生态构建 - 核心是能导出笔记到其他的第三方中
在iOS应用做可以做笔记的读、分类,做笔记等
- 以读为主
- 高亮片段回顾
- 打标签
前期整理
- 整理ibooks的数据库字段
- ZAEANNOTATION
- Z_PK - primaryKey
Z_ENT- Z_OPT
- 2 - 高亮
- 3 - 笔记
- 4 - 笔记后移除笔记
- 5 - ?
- ZANNOTATION DELETED
- 是否删除
- ZANNOTATION IS UNDERLINE
- 下划线
- ZANNOTATION STYLE
- 0 - 下划线
- 1 - 绿色
- 2 - 蓝色
- 3 - 黄色
- 4 - 粉色
- 5 - 紫色
- ZANNOTATION TYPE
- 2 - 笔记
ZPL ABSOLUTE PHYSICAL LOCATIONZPL LOCATION RANGE ENDZPL LOCATION RANGE START- Z ANNOTATION CREATION DATE
- 创建时间
- Z ANNOTATION MODIFICATION DATE
- 修改时间
- Z ANNOTATION ASSETID
- 对应book中的ZASSETID
Z ANNOTATION CREATOR IDENTIFIER- Z ANNOTATION LOCATION
- epub跳转地址
- Z ANNOTATION NOTE
- 笔记
- Z ANNOTATION PEPRESENTATIVE TEXT
- BroaderText
- Z ANNOTATION SELECTED TEXT
- SelectedText
- Z ANNOTATION UUID
- 唯一id
- Z FUTURE PROOFING1
- 扩展字段
- Z FUTURE PROOFING5
- 章节 Chapter
- Z FUTURE PROOFING7
- SelectedText在BroaderText中的位置
ZPL STORAGE UUIDZPL USERDATA
- ZBKLIBRARYASSET
- Z_PK - primary key
- ZASSETID
- 资产id
- Z TITLE
- 标题
- Z AUTHOR
- 作者
- Z CONTENT TYPE
- 1
- 3
- Z FILE SIZE
- 文件大小
- Z ISNEW
- 0 / null
- 1
- Z IS TRACKED AS RECENT
- 0 / null
- 1
- Z STATE
- 1
- 3
- Z ASSET DETAILS MODIFICATION DATE
- Z CREATION DATE
- Z DATE FINISHED
- Z LAST ENGAGED DATE
- Z LAST OPEN DATE
- Z MODIFICATION DATE
- Z READING PROGRESS
- Z UPDATE DATE
- Z ASSET GUID
- Z EPUB ID
- Z GENRE
- Z LANGUAGE
- Z SORT AUTHOR
- Z SORT TITLE
- ZAEANNOTATION
- 数据库设计
- Books
- id - primary key : string
- title : String
- author : String
- state:String
- cover
- language:String
- zh
- en
- readingProcess: Double
- Annotations
- id - primary key : string
- isDeleted: bool
- isUnderline:Bool
- style: int
- 下划线
- 绿色
- 蓝色
- 黄色
- 粉色
- 紫色
- type: int
- 2 - 笔记
- creationDate:Date
- modificationDate: Date
- bookId: String
- note: String
- broaderText: String
- selectedText:String
- chapter:String
- selectedTextPosInBT:JSON (startIndex, endIndex]
- booksSourceRelation
- id - primary key : string
- bookId : String
- sourceId : String
- fromSrc : String
- ibook
- weread
- kindle
- createdAt
- AnnotationSourceRelation
- id - primary key :String
- annotationId: String
- sourceId: String
- fromSrc: String
- ibook
- weread
- kindle
- 关于 books和ibooks之间的关联关系,如果单独的ibooks关联表,功能不大,还是新增一张多对多的表
- 关于annotation对象和ZAEANOTATION表的数据,复刻还是冗余一份的问题
- 部分字段复刻到应用中,整体数据不进行冗余处理
- 高亮和笔记的关系,是应该放一起,还是分割开
- 分割开,同时保留导入时带入的笔记;并构建软件中的笔记体系,可以和注释进行多对多的关联
- Books