Tôi có bản thể luận có một bản thể luận khác được nhập vào nó. Tôi muốn biết làm thế nào OWLOntologyManager
's loadOntologyFromOntologyDocument(OWLOntologyDocumentSource documentSource, OWLOntologyLoaderConfiguration config)
hoạt động nội bộ. Tôi đã sử dụng lớp OWLOntologyLoaderConfiguration
để xử lý Thiếu nhập (muốn biết nhập nào không thành công với trợ giúp của lớp MissingImportListener
).OWLAPI: cách ontology tải có công việc nhập khẩu?
Tôi có thể nghe các mục nhập thiếu. Nhưng nếu bất kỳ tệp bản thể luận nào của tôi có nhập cho tài nguyên WEB thì phương thức trên sẽ tìm nạp nó từ vị trí của nó. Có cách nào để tôi có thể hạn chế các cuộc gọi cho nguồn tài nguyên WEB và yêu cầu tải bản sao mà tôi có trong hệ thống của tôi?
ví dụ: Trong trường hợp của phương pháp thể thao ontology tải tải BBC bản thể sau đây trong nội bộ:
- http://purl.org/NET/c4dm/event.owl
- FOAF (http://xmlns.com/foaf/0.1/)
- Time (http://www.w3.org/2006/time)
giống như mở thể thao của BBC ontology bên trong Protege.
Các bản thể luận thực sự khác nhau nằm trong hệ thống làm việc của tôi chứ không phải trên ổ đĩa cứng. Tôi biết, nếu bất cứ điều gì không có sẵn trong hệ thống làm việc của tôi sau đó tải API sẽ đi cho tài nguyên WEB. Nhưng thay vào đó tôi muốn nâng cao kích hoạt mà không đi cho tài nguyên WEB thay vì yêu cầu người dùng cho nó (ngay cả khi tài nguyên WEB có sẵn). Tôi muốn hạn chế hệ thống của tôi đi cho một tài nguyên WEB. – SuhasD
Theo phương pháp tải thử nghiệm của tôi sẽ đi cho IRIMapper đầu tiên, nếu không tìm thấy sẽ đi cho nguồn WEB. Nếu không có sẵn thì nó sẽ ném ra 'UnloadableImportException' HOẶC gợi lên' MissingImportListener' nếu có. Tôi có đúng không? – SuhasD
Để giới thiệu một trình kích hoạt giao diện người dùng, bạn sẽ cần phải viết bản thực thi 'OWLOntologyIRIMapper' của riêng mình. Không có gì đã có sẵn cho phép điều đó. – Ignazio