Struct gedcomx::Agent [−][src]
#[non_exhaustive]pub struct Agent { pub id: Option<Id>, pub identifiers: Vec<Identifier>, pub names: Vec<TextValue>, pub homepage: Option<ResourceReference>, pub openid: Option<ResourceReference>, pub accounts: Vec<OnlineAccount>, pub emails: Vec<ResourceReference>, pub phones: Vec<ResourceReference>, pub addresses: Vec<Address>, pub person: Option<ResourceReference>, }
Expand description
Someone or something that curates genealogical data, such as a genealogical researcher, user of software, organization, or group.
In genealogical research, an agent often takes the role of a contributor.
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.id: Option<Id>
An identifier for the data structure holding the agent data. The id is to be used as a “fragment identifier” as defined by RFC 3986, Section 3.5. As such, the constraints of the id are provided in the definition of the media type (e.g. XML, JSON) of the data structure.
identifiers: Vec<Identifier>
A list of identifiers for the agent.
names: Vec<TextValue>
The name(s) of the person or organization. If more than one name is provided, names are assumed to be given in order of preference, with the most preferred name in the first position in the list.
homepage: Option<ResourceReference>
The homepage of the person or organization. Note this is different from the homepage of the service where the person or organization has an account.
openid: Option<ResourceReference>
The openid of the person or organization.
accounts: Vec<OnlineAccount>
The online account(s) of the person or organization.
emails: Vec<ResourceReference>
The email address(es) of the person or organization. If provided, MUST resolve to a valid e-mail address (e.g. “mailto:someone@gedcomx.org”).
phones: Vec<ResourceReference>
The phone(s) (voice, fax, mobile) of the person or organization. If provided, MUST resolve to a valid phone number (e.g. “tel:+1-201-555-0123”).
addresses: Vec<Address>
The address(es) of the person or organization.
person: Option<ResourceReference>
A reference to the person that describes this agent. MUST resolve to an instance of Person.
Implementations
pub fn new(
id: Option<Id>,
identifiers: Vec<Identifier>,
names: Vec<TextValue>,
homepage: Option<ResourceReference>,
openid: Option<ResourceReference>,
accounts: Vec<OnlineAccount>,
emails: Vec<ResourceReference>,
phones: Vec<ResourceReference>,
addresses: Vec<Address>,
person: Option<ResourceReference>
) -> Self
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
fn serialize_attributes(
&self,
source_attributes: Vec<OwnedAttribute>,
source_namespace: Namespace
) -> Result<(Vec<OwnedAttribute>, Namespace), String>
Auto Trait Implementations
impl RefUnwindSafe for Agent
impl UnwindSafe for Agent
Blanket Implementations
Mutably borrows from an owned value. Read more