Có một số trường hợp sử dụng trong đó JAXBElement là bắt buộc:
- Một phần tử vừa là
nillable="true"vàminOccurs="0". Trong trường hợp này, điều gì làmnulltrên trường / thuộc tính được ánh xạ có nghĩa là gì? Khi thuộc tính làJAXBElementgiá trị null nghĩa là phần tử không có mặt vàJAXBElementbao bọc null nghĩa là một phần tử XML vớixsi:nil="true". - Có 2 phần tử toàn cục có cùng kiểu phức hợp được đặt tên. Vì trong các lớp JAXB tương ứng với các kiểu phức tạp nên cần có cách để nắm bắt phần tử gốc nào đã gặp phải. Để biết thêm chi tiết, hãy xem bài viết này Tôi đã viết.
- Có một cấu trúc lựa chọn trong đó
foohoặcbarcác phần tử có thể xảy ra và chúng cùng loại. Đây làJAXBElementlà bắt buộc vì chỉ cần gặp mộtStringgiá trị không đủ để cho biết phần tử nào nên được sắp xếp. - Một phần tử có
xsi:nilgặp phải trong tài liệu có chứa các thuộc tính. Trong ví dụ này, đối tượng tương ứng với phần tử đó vẫn có thể không được quản lý để giữ các giá trị thuộc tính, nhưng JAXBElement có thể biểu thị rằng phần tử đó là rỗng.