Có ai biết một công cụ để chuyển đổi từ Cobol Copybook sang XSD không? Hoặc XML.Chuyển đổi bản sao Cobol sang XSD
Trả lời
Xây dựng một phân tích cú pháp toàn diện cho copybooks COBOL có một vài thách thức:
Copybooks được đưa vào chương trình COBOL trong giai đoạn thao tác văn bản của trình biên dịch. Nguồn bản sao của chính nó có thể không đầy đủ. Cách duy nhất để có được một nguồn hoàn chỉnh để phân tích cú pháp là bằng cách xử lý trước nó như thể nó đã được đưa vào một chương trình phần mềm COBOL. Thông thường copybooks được đưa vào một chương trình COBOL thông qua chỉ thị COPY. Đưa điều này lên có vẻ hơi vô nghĩa, nhưng hãy xem xét những điều sau đây:
1) Chỉ thị COPY đi kèm với tùy chọn THAY THẾ. Trên bề mặt, điều này có vẻ đơn giản, đủ để đối phó, nhưng một khi bạn nhận được vào các chi tiết nó sẽ trở nên rất "thú vị". Xem: COPY DIRECTIVE
2) Chỉ thị REPLACE. Chỉ thị này cũng có thể thao tác văn bản nguồn sau khi chỉ thị COPY đã thực hiện một chút. Xem: REPLACE DIRECTIVE
3) Bản sao lồng nhau. Điều này có thể không phải là khó chịu như trước đó hai nhưng giữ làm tổ trong tâm trí quá.
4) Cú pháp của chuỗi hình COBOL cũng cần phải cười. Hãy xem: Picture String Symbols
5) Trình phân tích cú pháp của bạn cũng sẽ cần phải xử lý các quy tắc tiếp tục COBOL. Xem: Continuation Lines, và tiếp tục của PSEUDO TEXT nói riêng.
Tôi không muốn ngăn cản bạn, nhưng phân tích COBOL không phải là một nhiệm vụ tầm thường. Trên mặt tươi sáng, nếu các sách chép tay của bạn có cấu trúc đơn giản chết, chúng có thể được thực hiện bằng cách sử dụng hàng loạt các biểu thức chính quy. Cách tiếp cận này khá phổ biến trong số những người cần phân tích các chương trình COBOL (và copybooks) về các dự án cải tiến phần mềm. Có lẽ có một cái nhìn tại địa chỉ: RegReg
Cheers ...
Một thời gian dài trước đây, tôi đã xây dựng một số mã để phân tích cú pháp bản sao COBOL và tạo tệp XSD.
Vì cấu trúc ngôn ngữ COBOL là khá thường xuyên, tôi đã tạo biểu thức chính quy để nhận tên biến và xác định độ dài trường. Với cấu trúc được phân tích cú pháp đó, tôi cũng có thể tạo dữ liệu thử nghiệm XML, mã DOM MSXML để thao tác cấu trúc đó và các biểu mẫu HTML để kiểm tra các giao dịch IMS đó.
Dòng dưới cùng: biểu thức chính quy có thể thực sự hữu ích để thực hiện điều đó.
cảm ơn gợi ý regex – lemotdit
phát triển Rational cho Z, XML Sấm, Syncsort ETL ... có rất nhiều sản phẩm mà sẽ làm điều này.
Thực sự, nếu bạn tìm hiểu các quy tắc về kiểu dữ liệu lược đồ, bạn có thể thực hiện điều đó rất dễ dàng theo cách thủ công. Chủ yếu, bạn sẽ đối phó với xsd: string, xsd: decimal, xsd: integer và một số hương vị của xsd: date để khớp với copybook Cobol của bạn.
Bạn có thể thử dự án Koopa Cobol parser của mình. Trong khi nó không làm tiền xử lý tôi thấy rằng đối với hầu hết các bản sao chép này không thực sự cần thiết. Nó sẽ bao gồm hầu hết những gì bạn mong đợi từ một bản sao chép tiêu chuẩn, và nếu không bạn luôn có thể mở rộng trình phân tích cú pháp. Nó có thể xuất cây phân tích thành XML, sau đó bạn có thể xử lý theo bất kỳ cách nào bạn muốn.
Sau đó, có mệnh đề REDEFINES
được sử dụng để xác định lại một tập hợp các byte liền kề nhất định theo các cách khác nhau. Sau đó, mệnh đề OCCURS
là việc thực hiện độ dài cố định của các mảng và mệnh đề OCCURS DEPENDING ON
cho các mảng độ dài biến đổi.
Vì vậy, NealB là đúng; đây là không một nhiệm vụ tầm thường.
- 1. Chuyển đổi XSD sang lược đồ RDF
- 2. JAXB - Chuyển sang XSD hoặc XSD sang đậu?
- 3. Vấn đề với COBOL chuyển sang biến comp-3
- 4. Tôi có thể chuyển đổi RELAX NG sang XSD không?
- 5. Chuyển đổi XSD thành Protos
- 6. XSD để XForms và XForms để XSD chuyển đổi
- 7. Chuyển đổi tệp XSD thành UML Model
- 8. Chuyển đổi URL sang phiên bản JSON?
- 9. Cách chuyển đổi xsd thành ecore (EMF)
- 10. Tại sao COBOL phải được thụt lề?
- 11. Hiện đại hóa Legacy Cobol
- 12. Giữ lại lịch sử bản sao svn khi chuyển đổi sang git
- 13. Cách chuyển đổi một bản sao chỉ đọc git từ github sang một số chia nhỏ
- 14. Chuyển đổi sang Enum
- 15. Chuyển đổi sang UCS2
- 16. MemoryStream: tại sao chuyển đổi sang byte sau khi readByte
- 17. Chuyển đổi PDF sang PS
- 18. Chuyển đổi văn bản sang định dạng số trong Excel
- 19. mã Chuyển đổi HTML sang văn bản đơn giản
- 20. Chuyển đổi bản đồ google sang pdf trong php
- 21. Chuyển đổi XML sang văn bản đã thoát trong XSLT
- 22. Cách chuyển đổi PDF sang tệp văn bản trong iTextSharp
- 23. Chuyển đổi EPS sang Xaml
- 24. Chuyển đổi XSD thành các bảng quan hệ SQL
- 25. Chuyển đổi HTML sang PDF
- 26. Chuyển đổi EBNF sang BNF
- 27. Chuyển đổi XSD thành cấu trúc cây bằng Java
- 28. Chuyển đổi JSON sang CSV
- 29. Làm cách nào để có thể xóa các bản sao khỏi tệp bằng COBOL?
- 30. Chuyển bản sao của đối tượng sang phương thức - người thực hiện sao chép?
Điều bạn cần là một giao diện người dùng phân tích cú pháp COBOL đầy đủ để làm điều này đúng. Xem http://www.semanticdesigns.com/Products/FrontEnds/COBOLFrontEnd.html –