//! Simple working XBRL parser use crate::{model::*, Result}; use compact_str::CompactString; use std::path::Path; pub struct Parser { #[allow(dead_code)] load_linkbases: bool, } impl Parser { pub fn new() -> Self { Self { load_linkbases: false, } } pub fn parse_file>(&self, path: P) -> Result { let content = std::fs::read(path)?; self.parse_bytes(&content) } pub fn parse_bytes(&self, data: &[u8]) -> Result { // Simple XML parsing - just count elements for now let text = String::from_utf8_lossy(data); // Count facts (very simplified) let fact_count = text.matches("