diff --git a/datatypes/Contact_Information.md b/datatypes/Contact_Information.md index 64374ec..df1e408 100644 --- a/datatypes/Contact_Information.md +++ b/datatypes/Contact_Information.md @@ -2,11 +2,5 @@ ## Definition The contact information assigned to an [Agent](../entities/Organisation_Unit.md). The contact information might be -Physical Address (Postal address, Visiting address) or Electronic Address (Email address, Telephone number, Website URL, etc.) +Physical Address ([Postal address](../datatypes/Postal_Address.md), [Visiting address](../datatypes/Visiting_Address.md)) or Electronic Address ([Email address](../datatypes/Email_Address.md), [Telephone number](../datatypes/Phone_Number.md), [Website URL](../datatypes/Website_Address.md), etc.) -## Components -- postalAddress : [Postal Address](../datatypes/Postal_Address.md) -- visitingAddress : [Postal Address](../datatypes/Postal_Address.md) -- phone : [String](../datatypes/String.md) -- emailAddress : [URI](../datatypes/URI.md) -- web site URL : [URI](../datatypes/URI.md) diff --git a/datatypes/Electronic_Address.md b/datatypes/Electronic_Address.md index 76cf5c9..e538b7d 100644 --- a/datatypes/Electronic_Address.md +++ b/datatypes/Electronic_Address.md @@ -3,9 +3,12 @@ ## Definition An electronic address assigned to an [Agent](../entities/Organisation_Unit.md). +## Note +An electronic address might be [Email address](../datatypes/Email_Address.md), [Telephone number](../datatypes/Telephone_Number.md), [Website URL](../datatypes/Website_Address.md). +Moreover, additional subtypes of Electronic Address can be created in CERIF modules. + ## Specialization of [Contact Information](../datatypes/Contact_Information.md) -## Note -An electronic address might be [Email address](../datatypes/Email_Address.md), [Telephone number](../datatypes/Telephone_Number.md), [Website URL](../datatypes/Website_Address.md). -Moreover, additional subtypes of Electronic Address can be created in CERIF modules. +## Components +- uri : [URI](../datatypes/URI.md) diff --git a/datatypes/Email_Address.md b/datatypes/Email_Address.md index 956923c..02e541a 100644 --- a/datatypes/Email_Address.md +++ b/datatypes/Email_Address.md @@ -6,12 +6,8 @@ An email address assigned to an [Agent](../entities/Organisation_Unit.md). ## Specialization of [Electronic Address](../datatypes/Electronic_Address.md) -## Based on -[URI](../datatypes/URI.md) - ## Restrictions -1. The URI must start with `mailto:` -2. The rest of the URI must match the regular expression[1](#fn1): `^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$` +1. The uri component must match the regular expression[1](#fn1): `(mailto):[\w-\.]+@([\w-]+\.)+[\w-]{2,4}` --- ## Matches diff --git a/datatypes/Phone_Number.md b/datatypes/Phone_Number.md index d4d396b..003d393 100644 --- a/datatypes/Phone_Number.md +++ b/datatypes/Phone_Number.md @@ -6,11 +6,8 @@ A phone number assigned to an [Agent](../entities/Organisation_Unit.md). ## Specialization of [Electronic Address](../datatypes/Electronic_Address.md) -## Based on -[URI](../datatypes/URI.md) - ## Restrictions -1. The URI must match RFC 3966 specification [1](#fn1) +1. The uri component must match RFC 3966 specification [1](#fn1) ## Examples - `tel:+1-201-555-0123` - This URI points to a full phone number. diff --git a/datatypes/Website_Address.md b/datatypes/Website_Address.md index 96e1200..c21ab2f 100644 --- a/datatypes/Website_Address.md +++ b/datatypes/Website_Address.md @@ -6,11 +6,8 @@ A website address assigned to an [Agent](../entities/Organisation_Unit.md). ## Specialization of [Electronic Address](../datatypes/Electronic_Address.md) -## Based on -[URI](../datatypes/URI.md) - ## Restrictions -1. The URI must match the regular expression[1](#fn1): `[(http(s)?):\/\/(www\.)?a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)` +1. The uri component must match the regular expression[1](#fn1): `[(http(s)?):\/\/(www\.)?a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)` --- ## Matches diff --git a/diagrams/core.puml b/diagrams/core.puml index 527bd95..494c207 100644 --- a/diagrams/core.puml +++ b/diagrams/core.puml @@ -372,6 +372,7 @@ "Visiting_Address" --> "1" "Physical_Address" datatype("Electronic_Address") { + uri : URI } "Contact_Information" <|-d- "Electronic_Address"