Это интересный вопрос, но я думаю, что вы, вероятно, немного обдумали это.
Во-первых, я думаю, что вы слишком много рассматриваете возможные состояния информации;рассмотрите более основополагающее соображение, что у вас либо есть информация, либо ее нет.ПОЧЕМУ у вас есть информация, на самом деле не имеет значения, за исключением одного случая.Позволь мне объяснить;если информация о конкретном законопроекте или законодателе или чем-либо еще не применима, вы не должны запрашивать ее / нуждаться в ней.Это «государство» не имеет значения.Точно так же, если информация находится в процессе запроса, она просто еще не доступна;единственное состояние, которое вас действительно волнует, это то, есть ли у вас информация или если у вас ее еще нет.
Если вы начнете беспокоиться о дальнейшей глубине процесса запроса, вы рискуете попасть в глубокий, бесконечный циклуправления государством;изменилась ли информация между тем, как я ее получил, и сейчас?Все, что вы можете знать об информации, это если вам сказали, что это такое.Это фундаментально для процесса REST;вы получаете ПРЕДСТАВЛЕНИЕ основных данных, но в этом нет ошибки;представление НЕ является базовыми данными, не больше, чем имя конгрессмена - сам конгрессмен.
Во-вторых, не беспокойтесь о доступности информации.Если у объекта есть подобъект, при запросе объекта запрашивайте подобъект.Если вы вернете данные, отлично.Если вы вернетесь, что данные недоступны, это тоже представление данных подобъекта;это просто другое представление, на которое вы не надеялись, но оно одинаково верно.Я бы представлял это как объект с нулевым значением;объект существует (был создан, потому что он принадлежал родительскому объекту), но у вас нет действительных данных о нем (возвращаемое представление было пустым по какой-то причине; недоступность, сервер отключен, данные изменены; что угодно).
Наконец, реальный ключ здесь заключается в том, что вам нужно помнить, что структура RESTful управляется гипермедиа;запрос к объекту, который не возвращает полные данные объекта, должен возвращать URI для запроса данных подобъекта;и так далее.Ключевым моментом здесь является то, что эти структуры не являются статичными, как будто ваша объектная структура, похоже, надеется их обработать;они динамические, и это зависит от сервера, чтобы определить представление (то есть, взаимосвязь).Попытка определить это в камне с конкретным представлением объекта заблаговременно означает, что вы имеете дело с системой таким образом, что REST никогда не предназначался.