<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="23507" systemVersion="23H222" minimumToolsVersion="Automatic" sourceLanguage="Swift" usedWithCloudKit="YES" userDefinedModelVersionIdentifier="">
    <entity name="FuelLog" representedClassName="FuelLog" isAbstract="YES" syncable="YES" codeGenerationType="class">
        <attribute name="cost" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="date" attributeType="Date" defaultDateTimeInterval="764004600" usesScalarValueType="NO"/>
        <attribute name="fuelVolume" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="fullTank" optional="YES" attributeType="Boolean" usesScalarValueType="YES"/>
        <attribute name="id" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
        <attribute name="locationCoordinates" optional="YES" attributeType="String"/>
        <attribute name="locationName" optional="YES" attributeType="String"/>
        <attribute name="octane" attributeType="Integer 16" defaultValueString="0" usesScalarValueType="YES"/>
        <attribute name="odometer" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="pricePerGalon" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <relationship name="vehicle" optional="YES" maxCount="1" deletionRule="Nullify" destinationEntity="Vehicle" inverseName="fuelLog" inverseEntity="Vehicle"/>
    </entity>
    <entity name="Item" representedClassName="Item" syncable="YES" codeGenerationType="class"/>
    <entity name="MaintenanceEvent" representedClassName="MaintenanceEvent" isAbstract="YES" syncable="YES" codeGenerationType="class">
        <attribute name="cost" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="date" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
        <attribute name="eventType" optional="YES" attributeType="String"/>
        <attribute name="id" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
        <attribute name="locationCoordinates" optional="YES" attributeType="String"/>
        <attribute name="locationName" optional="YES" attributeType="String"/>
        <attribute name="notes" optional="YES" attributeType="String"/>
        <attribute name="odometer" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
    </entity>
    <entity name="Vehicle" representedClassName="Vehicle" syncable="YES">
        <attribute name="color" attributeType="String" defaultValueString=""/>
        <attribute name="engineDisplacement" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="engineName" optional="YES" attributeType="String"/>
        <attribute name="id" optional="YES" attributeType="UUID" usesScalarValueType="NO" customClassName="NSUUID"/>
        <attribute name="make" attributeType="String" defaultValueString=""/>
        <attribute name="model" attributeType="String" defaultValueString=""/>
        <attribute name="notes" optional="YES" attributeType="String"/>
        <attribute name="odometerAtPurchase" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="odometerAtSale" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="purchaseDate" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
        <attribute name="purchasePrice" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="soldDate" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
        <attribute name="tireBrand" optional="YES" attributeType="String"/>
        <attribute name="tireModel" optional="YES" attributeType="String"/>
        <attribute name="tireSizeHeight" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="tireSizeRadius" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="tireSizeWidth" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="transmission" optional="YES" attributeType="String" defaultValueString="Automatic"/>
        <attribute name="vehicleType" optional="YES" attributeType="String"/>
        <attribute name="wheelBrand" optional="YES" attributeType="String"/>
        <attribute name="wheelModel" optional="YES" attributeType="String"/>
        <attribute name="wheelSizeDiameter" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="wheelSizeWidth" optional="YES" attributeType="Double" defaultValueString="0.0" usesScalarValueType="YES"/>
        <attribute name="year" attributeType="String" minValueString="4" maxValueString="4" defaultValueString="2025" regularExpressionString="[0-9][0-9][0-9][0-9]"/>
        <relationship name="fuelLog" optional="YES" toMany="YES" deletionRule="Nullify" destinationEntity="FuelLog" inverseName="vehicle" inverseEntity="FuelLog"/>
    </entity>
</model>