Had a few other minor thoughts regarding how fluids relate to other stuff.
OceansDid mention a bit earlier, but if the functions for water flowing prove too taxing for the system, ocean fluid bodies might require their own special set of rules which are more abstract. Could be something as simple as "when an tile next to an ocean body of water becomes open, it fills with water at the flow rate". As for separating out ocean water into new Fluid Bodies when it is physically distanced, it'd probably have to revert back to regular salt water. This means you could still dump earth and section off some ocean water to be removed.
AquifersThese would probably necessitate a secondary check when observing other tiles around the body. Rather than an aquifer being an infinite water source, I'd recommend it be considered a special tile that has a higher capacity for fluid than regular tiles. So if regular, open tiles can hold 7 units, maybe an aquifer holds 70. This means you could potentially refill aquifers for a huge supplier, though I'd imagine the flow rate back into the rock would be excruciatingly slow.
Cooling & IceAlso lightly mentioned before, this one actually is slightly tricky. You could either maintain a flat temperature throughout the water, and just freeze it when it passes 0 degrees centigrade, but that's not very realistic. Water tends to freeze from the top down, so you could automate it to only freeze maybe the top 1 or 2 layers. Additionally, Temperature could be another value for each owned tile alongside Volume and Pressure; and a corresponding temperature flows along a gradient throughout the body by affecting nearby tiles. The interesting aspect there is that you'd have gradual freezing as the cooling spreads, or even the reverse with a heat source that dissipates out - although if you want only the top to freeze, you'd need to reason a system out that only freezes the top. Speaking of which...
Heating & SteamDwarf Fortress really should be on Steam.
Oh right, water steam. Same arguments as for cooling, but evaporation is a curious thing. The easy option is just to convert water from the top layer into steam, but assuming you went the full 9 yards and tracked temperature per tile, you could potentially create a bubbling system, where water boils from the bottom up. Again, since I don't want to extrapolate into Gas Bodies, I'll leave this thought there, but the potential exists in some form.
Displacement of Water By MassCurrently, I just imagine water as being completely separate from objects floating within it - that's how the current system works. But potentially, if you're only recording Volume for each tile, you could assign other entities or objects with a Volume as well. Then you'd have to define tiles that are open, but 'occupied', in order to reasonably use their Volume/Size variable. This would probably require extrapolating out from units of 7 though. Functionally, it'd work the same as how I suggested Multiple Fluids should.
One big problem here is Swimming. If a dwarf falls into the water and displaces it, under current swimming rules he could potentially displace enough water to where he isn't actually considered to be in 'Swimming' water. If every tile's volume is calculated independently, it wouldn't know how to consider keeping that dorf under the water. I still think this system would be possible, but I don't know if its worth the effort just to make dwarf swimming pools have legitimate diving.
Oh, and don't get me started on trying to make Water-Wheels actually displace water. Yeesh.
Mixing Fluids into a New FluidHaha, oh I hate this. This one is real nasty and would require some complex interactions between fluid bodies. You'd need to check if they touch, what kind each of them are, what happens when they come into contact, and resolve it for - potentially - every tile that they both own (when not moving, naturally). The biggest problem I can see is that if two fluids mix in the centre of a lake, this would create a new fluid body for that new type. Doesn't sound too bad, until you start to throw in more types of fluids together.
Pour the fresh water and the elf tears in, then the filth and the booze in. Oh, and don't forget the Blood, Bile, Honey, Juice, and Milk! They're all fighting with checks to mix with each type and subtype, selecting spaces, potentially displacing each other enough to create new fluid bodies like some kind of dividing bacteria.
To me, it sounds like a big, terrifying mess. But then DF is itself a terrifying mess, so maybe it fits right in.
Pumps & PipesShould probably have its own entire section but I'm getting pretty exhausted reasoning all this out, so I'll try and be brief.
Pumps likely could function the same as they currently do in technically just teleporting water from one tile to another. Perhaps they could provide an ownership to a fluid body and allow it a high priority so it could flow upwards. Additionally the tiles it occupies could just be considered special cases with high priority so they immediately flow into them - like the pressurized system would. Alternatively, you could try and make it a function of pressure itself - where is where pipes might come into play.
Pipes, I imagine, would be single-tile constructions that can hold fluid - probably less volume than an open space though. Fluid flowing through them would be resolved as per normal, but with the added benefit of only allowing them to consider pipe openings to connect to valid, ownable tiles when considering movement. So a straight pipe would only allow flow to the two tiles adjacent to it. Or, if you wanted to make building easy, you could just have a generic 'Pipe Segment' and 'Pipe Opening' parts, rather than trying to create individual pipe segments for each possible shape a pipe could take. Segments would allow flow to other segments and openings, but not to open tiles. Pipe openings allow flow to open tiles though, and could probably be 'aimed' to a specific one to control flow.
The good part of this is since Pipe tiles would be considered in the same system, it'd be easy to implement pressure changes in them. Adding shutoff valves, pressure cookers, and other steam-related parts could all be used to manipulate which tiles are considered highest priority by manually increasing pressure in places. If people are interested, I might throw some diagrams of how pipe systems could work together. But hey, this is Dwarf Fortress - you probably just wanna know what Fun could be had when Pipes rupture, right?
Again, this isn't too hard to work out if each tile has a variable for it's pressure - just have a check that examines if the pressure is exceeding the Pipe segment's tolerance and convert it to a 'Ruptured Pipe' if it does. Ruptured pipes could randomly select one or more adjacent tiles - that are not other pipe sections - to create 'holes' facing, allowing water flow to flow out into open tiles again. If Flow Rate affected a Force variable that determined if water was moving with enough force to displace, injure, or destroy something, it could even possibly hurt or kill unlucky dwarves who happen to be next to the sudden hole in the pressurized pipeline. Ruptured pipes could be 'patched up' with craftable patches that dwarves hammer on, or simply deconstructed and replaced. Patched Pipes which would seal the pipe but reduce it's pressure tolerance dramatically, meaning it's very likely to bust open again at a lower pressure.
Hoo, I think that covers my current thoughts. I need some sleep~