<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="22522" systemVersion="23C71" minimumToolsVersion="Automatic" sourceLanguage="Swift" userDefinedModelVersionIdentifier="">
    <entity name="Link" representedClassName="Link" syncable="YES">
        <attribute name="alias" attributeType="String" defaultValueString=""/>
        <attribute name="clickCount" attributeType="Integer 32" defaultValueString="0" usesScalarValueType="YES"/>
        <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
        <attribute name="linkDescription" optional="YES" attributeType="String"/>
        <attribute name="linkType" attributeType="String" defaultValueString="LINK"/>
        <attribute name="originalURL" optional="YES" attributeType="String"/>
        <attribute name="text" optional="YES" attributeType="String"/>
        <attribute name="updatedAt" attributeType="Date" usesScalarValueType="NO"/>
        <relationship name="changeLogs" optional="YES" toMany="YES" deletionRule="Cascade" destinationEntity="ChangeLog" inverseName="link" inverseEntity="ChangeLog"/>
        <relationship name="clickLogs" optional="YES" toMany="YES" deletionRule="Cascade" destinationEntity="ClickLog" inverseName="link" inverseEntity="ClickLog"/>
        <relationship name="tags" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="Tag" inverseName="links" inverseEntity="Tag"/>
        <uniquenessConstraints>
            <uniquenessConstraint>
                <constraint value="alias"/>
            </uniquenessConstraint>
        </uniquenessConstraints>
    </entity>
    <entity name="Tag" representedClassName="Tag" syncable="YES">
        <attribute name="createdAt" attributeType="Date" usesScalarValueType="NO"/>
        <attribute name="name" attributeType="String" defaultValueString=""/>
        <attribute name="slug" attributeType="String" defaultValueString=""/>
        <attribute name="tagDescription" optional="YES" attributeType="String"/>
        <relationship name="links" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="Link" inverseName="tags" inverseEntity="Link"/>
        <uniquenessConstraints>
            <uniquenessConstraint>
                <constraint value="slug"/>
            </uniquenessConstraint>
        </uniquenessConstraints>
    </entity>
    <entity name="ClickLog" representedClassName="ClickLog" syncable="YES">
        <attribute name="clickedAt" attributeType="Date" usesScalarValueType="NO"/>
        <relationship name="link" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="Link" inverseName="clickLogs" inverseEntity="Link"/>
    </entity>
    <entity name="ChangeLog" representedClassName="ChangeLog" syncable="YES">
        <attribute name="changedAt" attributeType="Date" usesScalarValueType="NO"/>
        <attribute name="changeDescription" attributeType="String" defaultValueString=""/>
        <attribute name="changeType" attributeType="String" defaultValueString=""/>
        <relationship name="link" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="Link" inverseName="changeLogs" inverseEntity="Link"/>
    </entity>
</model>
