2011-10-18 9 views

Odpowiedz

1

Obecnie nie ma modułu, który będzie działać w programie Python i wykonaj tę konwersję. Ale widzę problem tworzenia schematu XSD z XML jako problemu narzędzi. Jest to rodzaj funkcjonalności, której użyję raz, aby uzyskać schemat, ale potem będę go sam utrzymywał. Od odczytania pojedynczego pliku XML generator XSD stworzy punkt wyjścia dla prawdziwego schematu, nie może wywnioskować całej funkcjonalności i opcji oferowanych przez XSD. Zasadniczo nie widzę potrzeby, aby ta konwersja była uruchamiana jako moduł wewnątrz mojego kodu, generując nowe XSD za każdym razem, gdy zmienia się XML. W końcu to schemat definiuje XML, a nie odwrotnie.

Jako użytkownik końcowy zwrócił uwagę, że można użyć xsd.exe, ale warto również przyjrzeć się innym narzędziom, takim jak trang (nieco stara) dla Javy i stylusstudio (narzędzie XML).

2

Szukasz czegoś takiego jak pyxsd? (używane przede wszystkim do sprawdzania poprawności względem schematu) A może PyXB? (potrafi generować klasy na podstawie xml) W przeciwnym razie nie sądzę, że istnieje narzędzie [jeszcze], które wygeneruje schemat z poziomu Pythona. Czy możesz zrobić to na żądanie, używając czegoś takiego jak xsd.exe? Czy musi być programowalny/powtarzalny?

+0

Powinno być możliwe robienie tego, co chcę i dostęp do narzędzi takich jak xsd.exe z poziomu programu Python. Wolałbym użyć czegoś takiego jak moduł Pythona, ponieważ łatwiej jest pracować z bardziej eleganckim rozwiązaniem. pyxsd/PyXB nie wydają się spełniać moich wymagań (o ile mogę powiedzieć, że nie mają możliwości tworzenia schematu, biorąc pod uwagę dokument XML). – chobok

0

Zgodnie z PyCharm docs, PyCharm ma na to możliwość. Nie jest to dokładnie dostępne w programie jako API. Prawdopodobnie lepiej jest używać XML Schema Learner jako oddzielnego programu, ponieważ jest to program linii komend (podprocesowy przyjazny!).

Powiązane problemy