
eedm.personal-relationships.v16.0.0.personal-relationships.json Maven / Gradle / Ivy
{
"title" : "Personal Relationships",
"description" : "The relationships between two people.",
"version" : "16.0.0",
"type" : "object",
"properties" : {
"metadata" : {
"$ref" : "resource:/eedm/metadata.json"
},
"id" : {
"title" : "ID",
"description" : "The global identifier of the personal relationship.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
},
"subjectPerson" : {
"title" : "Subject Person",
"description" : "The primary person for whom the relationship is described.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Subject Person.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/persons/{id}",
"targetSchema" : {
"$ref" : "persons.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
},
"related" : {
"title" : "Related",
"description" : "The person who has the relationship with the subject person.",
"oneOf" : [ {
"title" : "Person",
"description" : "The person who has the relationship with the subject person.",
"type" : "object",
"properties" : {
"person" : {
"title" : "Person",
"description" : "The person who has the relationship with the subject person.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Person.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/persons/{id}",
"targetSchema" : {
"$ref" : "persons.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"additionalProperties" : false,
"required" : [ "person" ]
}, {
"title" : "Person Details",
"description" : "The person who has the relationship with the subject person.",
"type" : "object",
"properties" : {
"firstName" : {
"title" : "First Name",
"description" : "The first name of the related person.",
"type" : "string",
"minLength" : 1
},
"middleName" : {
"title" : "Middle Name",
"description" : "The middle name of the related person.",
"type" : "string"
},
"lastName" : {
"title" : "Last Name",
"description" : "The last name of the related person.",
"type" : "string",
"minLength" : 1
},
"contactAddressType" : {
"title" : "Contact Address Type",
"description" : "The subject person's address type to be associated with the related person.",
"oneOf" : [ {
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Contact Address Type.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/address-types/{id}",
"targetSchema" : {
"$ref" : "address-types.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
}
},
"additionalProperties" : false,
"required" : [ "firstName", "lastName" ]
} ]
},
"directRelationshipType" : {
"title" : "Direct Relationship Type",
"description" : "The subject person's relationship type with the related person.",
"oneOf" : [ {
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Direct Relationship Type.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/relationship-types/{id}",
"targetSchema" : {
"$ref" : "relationship-types.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
},
"reciprocalRelationshipType" : {
"title" : "Reciprocal Relationship Type",
"description" : "The related person's relationship type with the subject person.",
"oneOf" : [ {
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Reciprocal Relationship Type.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/relationship-types/{id}",
"targetSchema" : {
"$ref" : "relationship-types.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
},
"status" : {
"title" : "Status",
"description" : "The status of the personal relationship.",
"oneOf" : [ {
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Status.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/relationship-statuses/{id}",
"targetSchema" : {
"$ref" : "relationship-statuses.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}, {
"type" : "object",
"maxProperties" : 0
} ]
},
"startOn" : {
"title" : "Start On",
"description" : "The date when the relationship started.",
"oneOf" : [ {
"type" : "string",
"format" : "date",
"pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
}, {
"type" : "string",
"maxLength" : 0
} ]
},
"endOn" : {
"title" : "End On",
"description" : "The date when the relationship ended.",
"oneOf" : [ {
"type" : "string",
"format" : "date",
"pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])$"
}, {
"type" : "string",
"maxLength" : 0
} ]
},
"comment" : {
"title" : "Comment",
"description" : "The comment on the relationship.",
"type" : "string"
}
},
"required" : [ "id", "subjectPerson", "related" ],
"additionalProperties" : false,
"links" : [ {
"rel" : "namedQuery",
"encType" : "application/x-www-form-urlencoded",
"method" : "GET",
"href" : "/personal-relationships?person={\"person\": {\"id\": $id}}",
"name" : "person",
"title" : "Person",
"description" : "Filter to return subject person and/or related person.",
"schema" : {
"type" : "object",
"properties" : {
"person" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
}
},
"targetSchema" : {
"$ref" : "personal-relationships.json#"
}
}, {
"rel" : "namedQuery",
"encType" : "application/x-www-form-urlencoded",
"method" : "GET",
"href" : "/personal-relationships?relationshipType={\"relationshipType\": {\"id\": $id}}",
"name" : "relationshipType",
"title" : "Relationship Type",
"description" : "Filter to return the direct and/or reciprocal relationship type.",
"schema" : {
"type" : "object",
"properties" : {
"relationshipType" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
}
},
"targetSchema" : {
"$ref" : "personal-relationships.json#"
}
}, {
"rel" : "namedQuery",
"encType" : "application/x-www-form-urlencoded",
"method" : "GET",
"href" : "/personal-relationships?personFilter={\"personFilter\": {\"id\": $id}}",
"name" : "personFilter",
"title" : "Person Filter",
"description" : "Retrieve information for a specified population",
"schema" : {
"type" : "object",
"properties" : {
"personFilter" : {
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
}
},
"targetSchema" : {
"$ref" : "personal-relationships.json#"
}
} ]
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy