crossmate

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

contents (16750B)


      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="archiveAcknowledgedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     14         <attribute name="archiveGameID" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
     15         <attribute name="archiveParticipants" optional="YES" attributeType="String"/>
     16         <attribute name="completedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     17         <attribute name="completedBy" optional="YES" attributeType="String"/>
     18         <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
     19         <attribute name="finalSolveSeconds" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     20         <attribute name="engagement" optional="YES" attributeType="String"/>
     21         <attribute name="notification" optional="YES" attributeType="String"/>
     22         <attribute name="databaseScope" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     23         <attribute name="gridHeight" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     24         <attribute name="gridWidth" optional="YES" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
     25         <attribute name="hasPendingSave" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     26         <attribute name="id" attributeType="UUID" usesScalarValueType="NO"/>
     27         <attribute name="isAccessRevoked" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     28         <attribute name="isHidden" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     29         <attribute name="isSupersededByChronicle" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     30         <attribute name="journalUploaded" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     31         <attribute name="lastReadOtherMoveAt" optional="YES" attributeType="Date" usesScalarValueType="NO" renamingIdentifier="lastSeenOtherMoveAt"/>
     32         <attribute name="lastSyncedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     33         <attribute name="latestOtherMoveAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     34         <attribute name="readThroughAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     35         <attribute name="puzzleResourceID" optional="YES" attributeType="String"/>
     36         <attribute name="hasPushPending" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     37         <attribute name="puzzleParserVersion" optional="YES" attributeType="Integer 64" defaultValueString="0" renamingIdentifier="puzzleCmVersion" usesScalarValueType="YES"/>
     38         <attribute name="puzzleSource" attributeType="String"/>
     39         <attribute name="replayCacheComplete" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     40         <attribute name="replayMissingDeviceCount" optional="YES" attributeType="Integer 16" usesScalarValueType="NO"/>
     41         <attribute name="replayUnavailable" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
     42         <attribute name="shareParticipants" optional="YES" attributeType="String"/>
     43         <attribute name="syncVersion" optional="YES" attributeType="Integer 64" defaultValueString="1" usesScalarValueType="YES"/>
     44         <attribute name="title" attributeType="String"/>
     45         <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
     46         <relationship name="cells" toMany="YES" deletionRule="Cascade" destinationEntity="CellEntity" inverseName="game" inverseEntity="CellEntity"/>
     47         <relationship name="journal" toMany="YES" deletionRule="Cascade" destinationEntity="JournalEntity" inverseName="game" inverseEntity="JournalEntity"/>
     48         <relationship name="moves" toMany="YES" deletionRule="Cascade" destinationEntity="MovesEntity" inverseName="game" inverseEntity="MovesEntity"/>
     49         <relationship name="peerChanges" toMany="YES" deletionRule="Cascade" destinationEntity="PeerChangeEntity" inverseName="game" inverseEntity="PeerChangeEntity"/>
     50         <relationship name="players" toMany="YES" deletionRule="Cascade" destinationEntity="PlayerEntity" inverseName="game" inverseEntity="PlayerEntity"/>
     51         <fetchIndex name="byID">
     52             <fetchIndexElement property="id" type="Binary" order="ascending"/>
     53         </fetchIndex>
     54         <fetchIndex name="byCKRecordName">
     55             <fetchIndexElement property="ckRecordName" type="Binary" order="ascending"/>
     56         </fetchIndex>
     57     </entity>
     58     <entity name="PlayerEntity" representedClassName="PlayerEntity" syncable="YES" codeGenerationType="class">
     59         <attribute name="authorID" attributeType="String"/>
     60         <attribute name="ckRecordName" attributeType="String"/>
     61         <attribute name="ckSystemFields" optional="YES" attributeType="Binary"/>
     62         <attribute name="name" attributeType="String" defaultValueString=""/>
     63         <attribute name="notifiedThrough" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     64         <attribute name="pushAddress" optional="YES" attributeType="String"/>
     65         <attribute name="presenceUntil" optional="YES" attributeType="Date" usesScalarValueType="NO" renamingIdentifier="readAt"/>
     66         <attribute name="readThrough" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     67         <attribute name="selCol" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     68         <attribute name="selDir" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     69         <attribute name="selRow" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
     70         <attribute name="viewedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
     71         <attribute name="timeLog" optional="YES" attributeType="Binary"/>
     72         <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
     73         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="players" inverseEntity="GameEntity"/>
     74         <fetchIndex name="byGameAndAuthor">
     75             <fetchIndexElement property="game" type="Binary" order="ascending"/>
     76             <fetchIndexElement property="authorID" type="Binary" order="ascending"/>
     77         </fetchIndex>
     78         <fetchIndex name="byCKRecordName">
     79             <fetchIndexElement property="ckRecordName" type="Binary" order="ascending"/>
     80         </fetchIndex>
     81     </entity>
     82     <entity name="MovesEntity" representedClassName="MovesEntity" syncable="YES" codeGenerationType="class">
     83         <attribute name="authorID" attributeType="String"/>
     84         <attribute name="cells" attributeType="Binary"/>
     85         <attribute name="ckRecordName" attributeType="String"/>
     86         <attribute name="ckSystemFields" optional="YES" attributeType="Binary"/>
     87         <attribute name="deviceID" attributeType="String"/>
     88         <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
     89         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="moves" inverseEntity="GameEntity"/>
     90         <fetchIndex name="byGameAndAuthorAndDevice">
     91             <fetchIndexElement property="game" type="Binary" order="ascending"/>
     92             <fetchIndexElement property="authorID" type="Binary" order="ascending"/>
     93             <fetchIndexElement property="deviceID" type="Binary" order="ascending"/>
     94         </fetchIndex>
     95         <fetchIndex name="byCKRecordName">
     96             <fetchIndexElement property="ckRecordName" type="Binary" order="ascending"/>
     97         </fetchIndex>
     98     </entity>
     99     <entity name="CellEntity" representedClassName="CellEntity" syncable="YES" codeGenerationType="class">
    100         <attribute name="col" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    101         <attribute name="letter" attributeType="String" defaultValueString=""/>
    102         <attribute name="letterAuthorID" optional="YES" attributeType="String"/>
    103         <attribute name="markCode" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    104         <attribute name="row" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    105         <attribute name="updatedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
    106         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="cells" inverseEntity="GameEntity"/>
    107     </entity>
    108     <entity name="SyncStateEntity" representedClassName="SyncStateEntity" syncable="YES" codeGenerationType="class">
    109         <attribute name="ckPrivateEngineState" optional="YES" attributeType="Binary"/>
    110         <attribute name="ckSharedEngineState" optional="YES" attributeType="Binary"/>
    111         <attribute name="id" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    112         <attribute name="lastSyncedAt" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
    113     </entity>
    114     <entity name="PendingPingEntity" representedClassName="PendingPingEntity" syncable="YES" codeGenerationType="class">
    115         <attribute name="databaseScope" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    116         <attribute name="payloadData" attributeType="Binary"/>
    117         <attribute name="recordName" attributeType="String"/>
    118         <attribute name="zoneName" attributeType="String"/>
    119         <attribute name="zoneOwnerName" attributeType="String"/>
    120         <fetchIndex name="byRecordName">
    121             <fetchIndexElement property="recordName" type="Binary" order="ascending"/>
    122         </fetchIndex>
    123     </entity>
    124     <entity name="FriendEntity" representedClassName="FriendEntity" syncable="YES" codeGenerationType="class">
    125         <attribute name="authorID" attributeType="String"/>
    126         <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
    127         <attribute name="displayName" optional="YES" attributeType="String" defaultValueString=""/>
    128         <attribute name="displayNameVersion" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    129         <attribute name="isBlocked" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
    130         <attribute name="blockVersion" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    131         <attribute name="nickname" optional="YES" attributeType="String" defaultValueString=""/>
    132         <attribute name="nicknameVersion" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    133         <attribute name="pairKey" attributeType="String"/>
    134         <fetchIndex name="byPairKey">
    135             <fetchIndexElement property="pairKey" type="Binary" order="ascending"/>
    136         </fetchIndex>
    137         <fetchIndex name="byAuthorID">
    138             <fetchIndexElement property="authorID" type="Binary" order="ascending"/>
    139         </fetchIndex>
    140     </entity>
    141     <entity name="InviteEntity" representedClassName="InviteEntity" syncable="YES" codeGenerationType="class">
    142         <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
    143         <attribute name="gameID" attributeType="UUID" usesScalarValueType="NO"/>
    144         <attribute name="gameTitle" optional="YES" attributeType="String" defaultValueString=""/>
    145         <attribute name="gridSilhouette" optional="YES" attributeType="String"/>
    146         <attribute name="inviterAuthorID" attributeType="String"/>
    147         <attribute name="inviterName" optional="YES" attributeType="String" defaultValueString=""/>
    148         <attribute name="notification" optional="YES" attributeType="String"/>
    149         <attribute name="pingRecordName" attributeType="String"/>
    150         <attribute name="puzzleSource" optional="YES" attributeType="String"/>
    151         <attribute name="shareURL" attributeType="String"/>
    152         <attribute name="status" attributeType="String" defaultValueString="pending"/>
    153         <fetchIndex name="byPingRecordName">
    154             <fetchIndexElement property="pingRecordName" type="Binary" order="ascending"/>
    155         </fetchIndex>
    156         <fetchIndex name="byStatus">
    157             <fetchIndexElement property="status" type="Binary" order="ascending"/>
    158         </fetchIndex>
    159     </entity>
    160     <entity name="JournalEntity" representedClassName="JournalEntity" syncable="YES" codeGenerationType="class">
    161         <attribute name="actingAuthorID" optional="YES" attributeType="String"/>
    162         <attribute name="batchID" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
    163         <attribute name="beforeCellAuthorID" optional="YES" attributeType="String"/>
    164         <attribute name="beforeLetter" optional="YES" attributeType="String"/>
    165         <attribute name="beforeMarkCode" optional="YES" attributeType="Integer 16" usesScalarValueType="NO"/>
    166         <attribute name="cellAuthorID" optional="YES" attributeType="String"/>
    167         <attribute name="col" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    168         <attribute name="dir" optional="YES" attributeType="Integer 16" usesScalarValueType="NO"/>
    169         <attribute name="gameID" attributeType="UUID" usesScalarValueType="NO"/>
    170         <attribute name="kind" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    171         <attribute name="letter" attributeType="String" defaultValueString=""/>
    172         <attribute name="markCode" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    173         <attribute name="prevSeqAtCell" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
    174         <attribute name="row" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    175         <attribute name="seq" attributeType="Integer 64" defaultValueString="0" usesScalarValueType="YES"/>
    176         <attribute name="sourceAuthorID" optional="YES" attributeType="String"/>
    177         <attribute name="sourceDeviceID" optional="YES" attributeType="String"/>
    178         <attribute name="targetSeq" optional="YES" attributeType="Integer 64" usesScalarValueType="NO"/>
    179         <attribute name="timestamp" attributeType="Date" usesScalarValueType="NO"/>
    180         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="journal" inverseEntity="GameEntity"/>
    181         <fetchIndex name="byGameAndSeq">
    182             <fetchIndexElement property="gameID" type="Binary" order="ascending"/>
    183             <fetchIndexElement property="seq" type="Binary" order="ascending"/>
    184         </fetchIndex>
    185     </entity>
    186     <entity name="PeerChangeEntity" representedClassName="PeerChangeEntity" syncable="YES" codeGenerationType="class">
    187         <attribute name="authorID" optional="YES" attributeType="String"/>
    188         <attribute name="changedAt" attributeType="Date" usesScalarValueType="NO"/>
    189         <attribute name="col" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    190         <attribute name="gameID" attributeType="UUID" usesScalarValueType="NO"/>
    191         <attribute name="letter" attributeType="String" defaultValueString=""/>
    192         <attribute name="row" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
    193         <relationship name="game" maxCount="1" deletionRule="Nullify" destinationEntity="GameEntity" inverseName="peerChanges" inverseEntity="GameEntity"/>
    194         <fetchIndex name="byGameID">
    195             <fetchIndexElement property="gameID" type="Binary" order="ascending"/>
    196         </fetchIndex>
    197     </entity>
    198 </model>