Używam lxml
w Pythonie do sprawdzania poprawności wielu dokumentów XML w odniesieniu do definicji schematu XML. Duża liczba tych dokumentów nie sprawdza się - aw tej chwili nie są one wymagane - ale byłoby przydatne, gdybym mógł obliczyć, jak ważne są one, jako procent, do celów sprawozdawczych. Mam możliwość korzystania z xmllint
lub innych narzędzi wiersza poleceń, jeśli są one w stanie dostarczyć użyteczną statystykę.XMLSchema: Czy możliwe jest obliczenie ważności nieprawidłowego dokumentu (np. W procentach)?
5
A
Odpowiedz
1
lxml
parsery umożliwiają uzyskanie a list of the errors, które wystąpiły podczas próby analizowania dokumentu. W połączeniu z parser na recover
keyword argument i masz coś takiego:
# Warning, untested, may not work
parser = etree.XMLParser(recover=True)
it_would_be_a_tree = etree.parse(your_xml_data, parser)
total_errors = len(parser.error_log)
Następnie można obliczyć procentową pliku total_errors
reprezentuje. Możesz użyć naiwnego pomiaru, jak błędy w linii lub błędy na znak bez żadnych problemów. Bardziej zaawansowane działania są również możliwe, jeśli it_would_be_a_tree
jest w rzeczywistości strukturą tree
(np.).
Powiązane problemy
- 1. Matematyka MySQL - czy możliwe jest obliczenie korelacji w zapytaniu?
- 2. Czy nie jest możliwe obliczenie różnicy między maxBound a minBound typu Enum?
- 3. numer procentach w JavaScript
- 4. Czy można ustawić szerokość jQGrid w procentach?
- 5. Czy można ustawić szerokość elementu w procentach?
- 6. Możliwe jest dodanie arkusza stylów XSLT do zserializowanego dokumentu XML?
- 7. Czy możliwe jest przeciążenie operatorów w C?
- 8. Moq - Czy jest możliwe określenie w Ustawieniach kryteriów weryfikacji (np. Times)?
- 9. Formatowanie w procentach
- 10. Obliczenie promienia CriteriaBuilder
- 11. iOS Czy Testflight Autorenewable Okres ważności subskrypcji jest zepsuty?
- 12. Czy ten problem jest NP-trudny?
- 13. Czy można utworzyć obszar html mapy w procentach?
- 14. PHP - Trudne obliczenie matematyczne
- 15. Czy jest możliwe uruchomienie capibara-webkit (np. Forked webkit_server) na Heroku Cedar?
- 16. SSLVerifyClient ignorować datę ważności
- 17. Czy w JavaScript jest możliwe metaprogramowanie?
- 18. Czy jest możliwe użycie "number_to_currency" w kontrolerze?
- 19. Czy możliwe jest rozszerzenie tablic w C#?
- 20. Czy jest możliwe utworzenie IME w WinRT?
- 21. Czy możliwe jest metaprogramowanie w C#?
- 22. Czy jest możliwe odtworzenie ścieżki w CAKeyFrameAnimation?
- 23. Czy jest możliwe użycie CallerMemberNameAttribute w f #
- 24. Django wymuszenie ważności hasła
- 25. Obliczenie Python pi?
- 26. Pytanie Twaina: czy możliwe jest przeskanowanie tylko jednego dokumentu z podajnika?
- 27. Przycięte średnie obliczenie w MySQL
- 28. ustawić nieprawidłową kontrolę formularza nieprawidłowego w angular2
- 29. Obliczenie dzielnika CRC
- 30. Czy możliwe jest posiadanie indeksu opartego na funkcjach w MySQL?
To nie jest parsowanie, to jest problem; pliki parsują się dobrze, ponieważ są dobrze sformułowane xml. Po prostu nie są * poprawne * w stosunku do XMLSchema. –