XSD / e er et XML Processing for Embedded Systems.
CodeSynthesis XSD / e er en åpen-kildekode XML parser generator for mobil og embedded systemer. Det gir hendelsesdrevet, stream-orientert XML parsing, XML Schema validering og C ++ data bindende og samtidig opprettholde en liten plass og portabilitet.
XSD / e implementerer Embedded C ++ / parser kartlegging som, utstyrt med et XML dokument spesifikasjon (XML Schema), genererer validere C ++ parser skjeletter for typer definert i vokabularet ditt data. Du kan deretter implementere disse parser skjeletter å bygge din egen in-memory representasjon eller utføre umiddelbare behandlingen som de delene av XML-dokument blir tilgjengelige. For en innføring i C ++ / parser kartlegging, se Hello World parser kapittel fra Komme i gang.
Basert på den statiske analyse av skjemaene, XSD / e genererer kompakte, svært optimalisert hierarkiske tilstandsmaskiner som kombinerer data utvinning, validering, og selv sende ut i et enkelt trinn. Som et resultat, XSD / e-generert parsere er 2-10 ganger raskere enn generell validere XML-parsere og samtidig opprettholde de laveste statiske og dynamiske minne fotavtrykk. For eksempel kan en validering parser kjørbar være så liten som 120KB i størrelse.
Her er noen viktige trekk ved "XSD e":
· Brukervennlighet parser skjeletter opprettholde parsing staten og gjøre datauttrekk for deg. Som et resultat, er du beskyttet mot vanskelighetene med analyse av XML.
· Validerings parseren skjeletter gi lave utslipp, høy ytelse XML Schema validering slik at du ikke trenger å komplisere koden med ekstra feilsjekking.
· Naturlig representasjon Håndter XML-data i bruk ditt domene vokabular i stedet for generiske elementer, attributter og tekst.
· Statisk skrive De genererte parser skjeletter er statisk skrevet noe som bidrar fangst feil ved kompilering-tid i stedet for ved kjøring. For eksempel XML element og attributtnavnene bli C ++ funksjonsnavn så hvis du feilstavet en, vil kompilatoren gi deg beskjed.
· Concise kode Takk til objektet representasjon levert av parser skjeletter, er din logikk implementering enklere og dermed lettere å lese og forstå.
· Maintainability Automatisk kodegenerering minimerer innsatsen som er nødvendig for å tilpasse programmet til endringer i dokumentstrukturen. Takket være statisk typing, vil C ++ kompilatoren pin-point de stedene i koden som må endres
Hva er nytt i denne utgaven.
- Støtte for XML Schema polymorfisme. Den nye --generate-polymorfe alternativet utløser generasjon av polymorfisme-aware koden.
- Støtte for lagring av objektmodellen til og legge det fra binære representasjoner. De nye --generate - innsetting og --generate-utvinning alternativer utløse generering av data representasjon stream innsetting og utvinning operatører, henholdsvis .
- Støtte for attributter med mislighold og faste verdier.
- Nytt alternativ, --custom-type, tilpasses et objektmodellen klasser.
- Nytt alternativ, --generate-løsne, utløser generasjon Løsne funksjoner for elementer og attributter typer variabel lengde.
- Den genererte parser og Serializer implementeringer er nå i stand til parsing / seriefunksjon rekursive typer. XSD / e-kompilatoren registrerer rekursive typer og genererer stakkbasert implementeringer med optimert ikke-rekursiv saken (dvs. den første iterasjon fortsatt ikke resultere i noen heap bevilgninger til staten vedlikehold).
- Assignment funksjon med signatur assign (konst T *, size_t) for sekvenser av typer fast lengde.
Hva er nytt i versjon 3.0.0:
- Denne utgivelsen legger den nye Embedded C ++ / Hybrid kartlegging som gir en lett, trelignende objektmodell med presis gjengivelse av XML vokabular struktur og element orden.
- Den nye kartleggingen har full støtte i-minne samt hybrid, delvis selv-drevet, delvis i-minne XML behandling.
- Denne utgivelsen gir også støtte for QNX 6.x, iPhone OS 2.x, og Visual Studio 2008 med Smart Devices.
Kommentarer ikke funnet