crossmate

A collaborative crossword app for iOS
Log | Files | Refs | LICENSE

contents (14974B)


      1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
      2 <model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="22522" systemVersion="24F74" minimumToolsVersion="Automatic" sourceLanguage="Swift" usedWithSwiftData="NO" userDefinedModelVersionIdentifier="">
      3     <entity name="GameEntity" representedClassName="GameEntity" syncable="YES" codeGenerationType="class">
      4         <attribute name="blockMask" optional="YES" attributeType="Binary"/>
      5         <attribute name="cachedPublisher" optional="YES" attributeType="String"/>
      6         <attribute name="cachedPuzzleDate" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
      7         <attribute name="ckRecordName" optional="YES" attributeType="String"/>
      8         <attribute name="ckShareRecordName" optional="YES" attributeType="String"/>
      9         <attribute name="ckSystemFields" optional="YES" attributeType="Binary"/>
     10         <attribute name="ckZoneName" optional="YES" attributeType="String"/>
     11         <attribute name="ckZoneOwnerName" optional="YES" attributeType="String"/>
     12         <attribute name="archivedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     13         <attribute name="archiveGameID" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
     14         <attribute name="completedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     15         <attribute name="completedBy" optional="YES" attributeType="String"/>
     16         <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
     17         <attribute name="finalSolveSeconds" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     18         <attribute name="engagement" optional="YES" attributeType="String"/>
     19         <attribute name="notification" optional="YES" attributeType="String"/>
     20         <attribute name="databaseScope" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     21         <attribute name="gridHeight" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     22         <attribute name="gridWidth" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     23         <attribute name="hasPendingSave" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     24         <attribute name="id" attributeType="UUID" usesScalarValueType="NO"/>
     25         <attribute name="isAccessRevoked" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     26         <attribute name="journalUploaded" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     27         <attribute name="lastReadOtherMoveAt" optional="YES" attributeType="Date" usesScalarValueType="NO" renamingIdentifier="lastSeenOtherMoveAt"/>
     28         <attribute name="lastSyncedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     29         <attribute name="latestOtherMoveAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     30         <attribute name="readThroughAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     31         <attribute name="puzzleResourceID" optional="YES" attributeType="String"/>
     32         <attribute name="hasPushPending" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     33         <attribute name="puzzleCmVersion" optional="YES" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
     34         <attribute name="puzzleSource" attributeType="String"/>
     35         <attribute name="replayCacheComplete" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     36         <attribute name="title" attributeType="String"/>
     37         <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
     38         <relationship name="cells" toMany="YES" deletionRule="Cascade" destinationEntity="CellEntity" inverseName="game" inverseEntity="CellEntity"/>
     39         <relationship name="journal" toMany="YES" deletionRule="Cascade" destinationEntity="JournalEntity" inverseName="game" inverseEntity="JournalEntity"/>
     40         <relationship name="moves" toMany="YES" deletionRule="Cascade" destinationEntity="MovesEntity" inverseName="game" inverseEntity="MovesEntity"/>
     41         <relationship name="peerChanges" toMany="YES" deletionRule="Cascade" destinationEntity="PeerChangeEntity" inverseName="game" inverseEntity="PeerChangeEntity"/>
     42         <relationship name="players" toMany="YES" deletionRule="Cascade" destinationEntity="PlayerEntity" inverseName="game" inverseEntity="PlayerEntity"/>
     43     </entity>
     44     <entity name="PlayerEntity" representedClassName="PlayerEntity" syncable="YES" codeGenerationType="class">
     45         <attribute name="authorID" attributeType="String"/>
     46         <attribute name="ckRecordName" attributeType="String"/>
     47         <attribute name="ckSystemFields" optional="YES" attributeType="Binary"/>
     48         <attribute name="name" attributeType="String" defaultValueString=""/>
     49         <attribute name="notifiedThrough" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     50         <attribute name="pushAddress" optional="YES" attributeType="String"/>
     51         <attribute name="readAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     52         <attribute name="readThrough" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     53         <attribute name="selCol" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     54         <attribute name="selDir" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     55         <attribute name="selRow" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     56         <attribute name="sessionSnapshot" optional="YES" attributeType="Binary"/>
     57         <attribute name="timeLog" optional="YES" attributeType="Binary"/>
     58         <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
     59         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="players" inverseEntity="GameEntity"/>
     60         <fetchIndex name="byGameAndAuthor">
     61             <fetchIndexElement property="game" type="Binary" order="ascending"/>
     62             <fetchIndexElement property="authorID" type="Binary" order="ascending"/>
     63         </fetchIndex>
     64     </entity>
     65     <entity name="MovesEntity" representedClassName="MovesEntity" syncable="YES" codeGenerationType="class">
     66         <attribute name="authorID" attributeType="String"/>
     67         <attribute name="cells" attributeType="Binary"/>
     68         <attribute name="ckRecordName" attributeType="String"/>
     69         <attribute name="ckSystemFields" optional="YES" attributeType="Binary"/>
     70         <attribute name="deviceID" attributeType="String"/>
     71         <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
     72         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="moves" inverseEntity="GameEntity"/>
     73         <fetchIndex name="byGameAndAuthorAndDevice">
     74             <fetchIndexElement property="game" type="Binary" order="ascending"/>
     75             <fetchIndexElement property="authorID" type="Binary" order="ascending"/>
     76             <fetchIndexElement property="deviceID" type="Binary" order="ascending"/>
     77         </fetchIndex>
     78     </entity>
     79     <entity name="CellEntity" representedClassName="CellEntity" syncable="YES" codeGenerationType="class">
     80         <attribute name="ckRecordName" optional="YES" attributeType="String"/>
     81         <attribute name="ckSystemFields" optional="YES" attributeType="Binary"/>
     82         <attribute name="col" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     83         <attribute name="databaseScope" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     84         <attribute name="lastSyncedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     85         <attribute name="letter" attributeType="String" defaultValueString=""/>
     86         <attribute name="letterAuthorID" optional="YES" attributeType="String"/>
     87         <attribute name="markCode" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     88         <attribute name="row" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     89         <attribute name="updatedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     90         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="cells" inverseEntity="GameEntity"/>
     91     </entity>
     92     <entity name="SyncStateEntity" representedClassName="SyncStateEntity" syncable="YES" codeGenerationType="class">
     93         <attribute name="ckPrivateEngineState" optional="YES" attributeType="Binary"/>
     94         <attribute name="ckSharedEngineState" optional="YES" attributeType="Binary"/>
     95         <attribute name="id" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     96         <attribute name="lastSyncedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     97     </entity>
     98     <entity name="FriendEntity" representedClassName="FriendEntity" syncable="YES" codeGenerationType="class">
     99         <attribute name="authorID" attributeType="String"/>
    100         <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
    101         <attribute name="databaseScope" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    102         <attribute name="displayName" optional="YES" attributeType="String" defaultValueString=""/>
    103         <attribute name="displayNameVersion" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    104         <attribute name="friendZoneName" attributeType="String"/>
    105         <attribute name="friendZoneOwnerName" attributeType="String"/>
    106         <attribute name="isBlocked" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
    107         <attribute name="nickname" optional="YES" attributeType="String" defaultValueString=""/>
    108         <attribute name="nicknameVersion" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    109         <attribute name="pairKey" attributeType="String"/>
    110         <fetchIndex name="byPairKey">
    111             <fetchIndexElement property="pairKey" type="Binary" order="ascending"/>
    112         </fetchIndex>
    113         <fetchIndex name="byAuthorID">
    114             <fetchIndexElement property="authorID" type="Binary" order="ascending"/>
    115         </fetchIndex>
    116     </entity>
    117     <entity name="InviteEntity" representedClassName="InviteEntity" syncable="YES" codeGenerationType="class">
    118         <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
    119         <attribute name="gameID" attributeType="UUID" usesScalarValueType="NO"/>
    120         <attribute name="gameTitle" optional="YES" attributeType="String" defaultValueString=""/>
    121         <attribute name="gridSilhouette" optional="YES" attributeType="String"/>
    122         <attribute name="inviterAuthorID" attributeType="String"/>
    123         <attribute name="inviterName" optional="YES" attributeType="String" defaultValueString=""/>
    124         <attribute name="pingRecordName" attributeType="String"/>
    125         <attribute name="puzzleSource" optional="YES" attributeType="String"/>
    126         <attribute name="shareURL" attributeType="String"/>
    127         <attribute name="status" attributeType="String" defaultValueString="pending"/>
    128         <fetchIndex name="byPingRecordName">
    129             <fetchIndexElement property="pingRecordName" type="Binary" order="ascending"/>
    130         </fetchIndex>
    131         <fetchIndex name="byStatus">
    132             <fetchIndexElement property="status" type="Binary" order="ascending"/>
    133         </fetchIndex>
    134     </entity>
    135     <entity name="JournalEntity" representedClassName="JournalEntity" syncable="YES" codeGenerationType="class">
    136         <attribute name="actingAuthorID" optional="YES" attributeType="String"/>
    137         <attribute name="batchID" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
    138         <attribute name="beforeCellAuthorID" optional="YES" attributeType="String"/>
    139         <attribute name="beforeLetter" optional="YES" attributeType="String"/>
    140         <attribute name="beforeMarkCode" optional="YES" attributeType="Integer 16" usesScalarValueType="NO"/>
    141         <attribute name="cellAuthorID" optional="YES" attributeType="String"/>
    142         <attribute name="col" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    143         <attribute name="dir" optional="YES" attributeType="Integer 16" usesScalarValueType="NO"/>
    144         <attribute name="gameID" attributeType="UUID" usesScalarValueType="NO"/>
    145         <attribute name="kind" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    146         <attribute name="letter" attributeType="String" defaultValueString=""/>
    147         <attribute name="markCode" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    148         <attribute name="prevSeqAtCell" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
    149         <attribute name="row" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    150         <attribute name="seq" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    151         <attribute name="sourceAuthorID" optional="YES" attributeType="String"/>
    152         <attribute name="sourceDeviceID" optional="YES" attributeType="String"/>
    153         <attribute name="targetSeq" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
    154         <attribute name="timestamp" attributeType="Date" usesScalarValueType="NO"/>
    155         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="journal" inverseEntity="GameEntity"/>
    156         <fetchIndex name="byGameAndSeq">
    157             <fetchIndexElement property="gameID" type="Binary" order="ascending"/>
    158             <fetchIndexElement property="seq" type="Binary" order="ascending"/>
    159         </fetchIndex>
    160     </entity>
    161     <entity name="PeerChangeEntity" representedClassName="PeerChangeEntity" syncable="YES" codeGenerationType="class">
    162         <attribute name="authorID" optional="YES" attributeType="String"/>
    163         <attribute name="changedAt" attributeType="Date" usesScalarValueType="NO"/>
    164         <attribute name="col" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    165         <attribute name="gameID" attributeType="UUID" usesScalarValueType="NO"/>
    166         <attribute name="letter" attributeType="String" defaultValueString=""/>
    167         <attribute name="row" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    168         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="peerChanges" inverseEntity="GameEntity"/>
    169         <fetchIndex name="byGameID">
    170             <fetchIndexElement property="gameID" type="Binary" order="ascending"/>
    171         </fetchIndex>
    172     </entity>
    173 </model>