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
impl Agent
[src]
impl Agent
[src]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
[src]
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
pub fn builder() -> AgentBuilder
[src]
Trait Implementations
impl<'de> Deserialize<'de> for Agent
[src]
impl<'de> Deserialize<'de> for Agent
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl TryFrom<&'_ Agent> for ResourceReference
[src]
impl TryFrom<&'_ Agent> for ResourceReference
[src]impl YaDeserialize for Agent
[src]
impl YaDeserialize for Agent
[src]fn deserialize<R: Read>(reader: &mut Deserializer<R>) -> Result<Self, String>
[src]
impl YaSerialize for Agent
[src]
impl YaSerialize for Agent
[src]fn serialize<W: Write>(&self, writer: &mut Serializer<W>) -> Result<(), String>
[src]
fn serialize_attributes(
&self,
source_attributes: Vec<OwnedAttribute>,
source_namespace: Namespace
) -> Result<(Vec<OwnedAttribute>, Namespace), String>
[src]
&self,
source_attributes: Vec<OwnedAttribute>,
source_namespace: Namespace
) -> Result<(Vec<OwnedAttribute>, Namespace), String>
impl StructuralPartialEq for Agent
[src]
Auto Trait Implementations
impl RefUnwindSafe for Agent
impl Send for Agent
impl Sync for Agent
impl Unpin for Agent
impl UnwindSafe for Agent
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,