vania-janet/multiturn-rag-retrieval-data huggingface dataset:
The following convention SHOULD be used where a resource has a required binding to exactly one other resource. In the example used, a club must have exactly one treasurer.



Operations for a required binding to one other resource

 Verb Example method and path Success status code Recommended operation ID Description 

 replace PUT /clubs/{id}/treasurer 200 OK replace_club_treasurer Replace an existing binding with one between a treasurer identified in the request body and the club identified by {id} 







 A resource's optional binding to one other resource 

The following convention SHOULD be used where a resource has an optional binding to (at most) one other resource. In the example used, a hero might have one sidekick, but no more than one.



Operations for an optional binding to one other resource

 Verb Example method and path Success status code Recommended operation ID Description 

 set PUT /heroes/{id}/sidekick 201 Created or 200 OK (if a binding exists) set_hero_sidekick Create (or replace an existing binding with) a binding between a sidekick identified in the request body and the hero identified by {id} 
 unset DELETE /heroes/{id}/sidekick 204 No Content unset_hero_sidekick Remove the binding between the sidekick and the hero identified by {id} 



The verbs set and unset SHOULD NOT be used except in a symmetrical pair of operations.





 A resource's bindings to multiple other resources 

The following convention SHOULD be used where a resource can have bindings to multiple other resources. In the example used, a conference can have many speakers.



Operations for bindings to multiple other resources

 Verb Example method and path Success status code Recommended operation ID Description 

 add PUT /conferences/{conference_id}/speakers/{id} 201 Created or 200 OK (if the binding exists) add_conference_speaker Create (or ensure) a binding between the conference identified by {conference_id} and the speaker identified by {id} 
 remove DELETE /conferences/{conference_id}/speakers/{id} 204 No Content remove_conference_speaker Remove the binding between the conference identified by {conference_id} and the speaker identified by {id} 



The verbs add and remove SHOULD NOT be used except in a symmetrical pair of operations.







 Minimally represented resource operations
The following example shows the output from running nslookup on instance hostnames of host-0.private.databases.appdomain.cloud, host-1.private.databases.appdomain.cloud, and host-2.private.databases.appdomain.cloud:

root@test-vpc-vsi: nslookup host-0.private.databases.appdomain.cloud
Server:		127.0.0.53
Address:	127.0.0.5353
Non-authoritative answer:
Name:	host-0.private.databases.appdomain.cloud
Address: 10.240.64.6

root@test-vpc-vsi: nslookup host-1.private.databases.appdomain.cloud
Server:		127.0.0.53
Address:	127.0.0.5353
Non-authoritative answer:
Name:	host-1.private.databases.appdomain.cloud
Address: 10.240.64.6

root@test-vpc-vsi: nslookup host-2.private.databases.appdomain.cloud
Server:		127.0.0.53
Address:	127.0.0.5353
Non-authoritative answer:
Name:	host-2.private.databases.appdomain.cloud
Address: 10.240.64.6 < ---- your VPE IP address
7. You can now use your instance in the VSI. For example,

mongo -u $USERNAME -p $PASSWORD --tls --tlsCAFile /root/ c--authenticationDatabase admin --host replset/host-0.private.databaseappdomain. cloud:30066,host-1.private.databases.appdomain.cloud:30066,host-private. databases.appdomain.cloud:30066







 VPE Discoverability 

Following the previous steps results in a database instance with private endpoints that is reachable with the Virtual Private Endpoints from your VPC network.
Migrating a virtual server instance to an existing VPC 

With VPC+ Cloud Migration, you have the option to migrate a virtual server instance to an existing VPC that you've created either through the IBM Cloud® console or VPC+ Cloud Migration.

Before you begin migrating a virtual server instance to an existing VPC, review the following requirements and considerations:



*  You need an existing VPC environment.
*  Your destination VPC needs to have available limits to accommodate the new virtual server instance (for example, IP address, security group network interface membership, etc.).
*  Review the migration considerations for [virtual server instances](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-migration-considerationsvirtual-server-instances).



To start the process, select the Manage VPCs option in the VPC+ Cloud Migration navigation menu, then select Virtual Server Instances > Create Virtual Server Instance.
For more information, see [Establishing connection between classic and VPC](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-planning-for-migrationestablish-connection-classic-vpc).

SSO with existing IBM Cloud account
: You can now sign in to the VPC+ tool with your existing IBM Cloud account credentials.





 June 2020 

Introducing VPC+ Cloud Migration
: You can now use VPC+ Cloud Migration to migrate your IBM Cloud classic infrastructure to IBM Cloud Virtual Private Cloud (VPC). For more information, see [About VPC+ Cloud Migration](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-about-wanclouds).
For more information, see [Instance groups for auto scaling](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-migration-considerationsauto-scale).

Secondary attached storage
: Support is now available to migrate secondary attached storage for virtual server instances. For more information, see [Data storage considerations for attached, block, and file storage](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-migration-considerationsstorage).

Bug fix
: Fixes were applied related to the issue with RHEL 7.x 25 G boot image instances.





 September 2020 

Manage existing VPC
: You can now create or delete resources in an existing VPC from the VPC+ tool. For more information, see [Migrating a virtual server instance to an existing VPC](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-migrate-vsi-existing-vpc).

Create instance from image template or qcow2 image
: You can create a virtual server instance from an image template or qcow2 image that is stored in IBM Cloud Object Storage from the VPC+ tool.

IBM Cloud Transit Gateway
: With the VPC+ tool, you can now create a transit gateway between your classic and VPC environments. For more information, see [Establishing connection between classic and VPC](https://cloud.ibm.com/docs/wanclouds-vpc-plus?topic=wanclouds-vpc-plus-planning-for-migrationestablish-connection-classic-vpc).

SSO with existing IBM Cloud account
: You can now sign in to the VPC+ tool with your existing IBM Cloud account credentials.





 June 2020 

Introducing VPC+ Cloud Migration
: You can now use VPC+ Cloud Migration to migrate your IBM Cloud classic infrastructure to IBM Cloud Virtual Private Cloud (VPC).
We verify the setup with newest versions of Red Hat Enterprise Linux (starting with RHEL 8.4) and of Suse Linux Enterprise Server (starting with SLES 15 SP3).
* You don't have limitations as to which Compute profile, SAP certification, or storage and network performance is used. You can use the smallest profile with 2 virtual CPUs and with 4 GB memory.



4. Attach the security group to the virtual server instance that you created in the previous step. Detach the default security group.
5. Enable the floating IP address on the access host. For more information, see [Reserving a floating IP address](https://cloud.ibm.com/docs/vpc?topic=vpc-creating-a-vpc-using-the-ibm-cloud-consolereserving-a-floating-ip-address).
6. After instance status changes to Running, verify that you can successfully log in on the access host.



We recommend that you use two extra SSH client parameters to get a more reliable SSH connection: ServerAliveInterval=60 and ServerAliveCountMax=600. If you use a nondefault path to your SSH key, you must specify it by following SSH client parameter: -i <path to your SSH private key>.

SSH command example:

ssh -A -o ServerAliveInterval=60 -o ServerAliveCountMax=600 root@<access_host_floating_ip>





 Optional steps on IBM Cloud VPC for management services 

To create other VPC resources, such as ACL, load balancer, and other resources, see [Using the IBM Cloud console to create VPC resources](https://cloud.ibm.com/docs/vpc?topic=vpc-creating-a-vpc-using-the-ibm-cloud-console).







 Deploying IBM Cloud VPC for edge services (edge VPC) 

IBM Cloud VPC for edge services (edge VPC) is a mandatory component in the SAP on IBM Power Virtual Services best practices. This service hosts the internet-facing SAP workloads.



* Set up IBM Cloud VPC for management services.
* [Creating a VPC subnet in the console](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-subnetscreate_vpc_subnet_ui)
* [Creating a VPC subnet in the CLI](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-subnetscreate_vpc_subnet_cli)



* [Creating VPC subnets for classic access](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-subnetsclassic_access_subnets)



* [Creating VPC subnets for classic access in the console](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-subnetsca_subnet_ui)
* [Creating VPC subnets for classic access from the CLI](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-subnetsca_subnet_cli)





[Setting up VPC VPN connectivity](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-vpnaasvpc-vpnaas)



* [Communication with resources in on-premises data centers](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-vpnaasonprem)



* [IBM Cloud VPC VPN](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-vpnaasvpc-vpn-def)
* [Direct Link](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-vpnaasvpc-directlink-def)



* [Communication with resources in other VPCs](https://cloud.ibm.com/docs/openshift?topic=openshift-vpc-vpnaasvpc-vpc)
Flow Logs for VPC 99.999% [About IBM Cloud Flow Logs for VPC](https://cloud.ibm.com/docs/vpc?topic=vpc-flow-logs) 







 AI/Machine Learning services 

The following table describes the service level objectives (SLOs) for the high impact IBM Cloud AI or machine learning services in a high availability configuration.



Table 11. Service level objectives (SLOs) for the IBM Cloud AI/machine learning services

 AI/Machine Learning service Availability target High availability guidance 

 Language Translator 99.999% [High availability and disaster recovery](https://cloud.ibm.com/docs/language-translator?topic=language-translator-ha-dr) 
 Speech to Text 99.999% [High availability and disaster recovery](https://cloud.ibm.com/docs/speech-to-text?topic=speech-to-text-ha-dr) 
 Natural Language Understanding 99.999% [High availability and disaster recovery](https://cloud.ibm.com/docs/natural-language-understanding?topic=natural-language-understanding-ha-dr) 







 Analytics services 

The following table describes the service level objectives (SLOs) for the high impact IBM Cloud analytics services in a high availability configuration.



Table 12. Service level objectives (SLOs) for the IBM Cloud analytics services

 Analytics service Availability target High availability guidance 

 IBM Analytics Engine 99.995% [Overview of IBM Analytics Engine instances](https://cloud.ibm.com/docs/AnalyticsEngine?topic=AnalyticsEngine-IAE-overview) 
 IBM Cloud Data Engine 99.999% [Disaster recovery and backup](https://cloud.ibm.com/docs/sql-query?topic=sql-query-disaster) 







 Database services 

The following table describes the service level objectives (SLOs) for the high impact IBM Cloud database services in a high availability configuration.



Table 13. Service level objectives (SLOs) for the IBM Cloud databases services

 Databases service Availability target Performance detail Storage back end used for data Storage back end used for backups High availability guidance
--ignore-not-found, --inf
: If not found, do not fail. This value is optional. The default value is false.

--job, -j
: Use this option to delete all job runs of the specified job. The --job option is required, if you do not specify the --name value. This value is optional.

--name, -n
: The name of the job run to delete. The --name option is required, if you do not specify the --job value. This value is optional.

--quiet, -q
: Specify this option to reduce the output of the command. This value is optional. The default value is false.





 Example 

ibmcloud ce jobrun delete --name myjobrun -f





 Example output 

Deleting job run 'myjobrun'...
OK







 ibmcloud ce jobrun events 

Display the events of job run instances.

ibmcloud ce jobrun events (--instance JOBRUN_INSTANCE | --jobrun JOBRUN_NAME) [--output OUTPUT] [--quiet]



 Command Options 

--instance, -i
: The name of a specific job run instance. Use the jobrun get command to find the instance name. This value is required if --jobrun is not specified.

--jobrun, -j, --name, -n
: Display the events of all the instances of the specified job run. This value is required if --instance is not specified.

--output, -o
: Specifies the format of the command output. Valid values are json, yaml, jsonpath=JSONPATH_EXPRESSION, and jsonpath-as-json=JSONPATH_EXPRESSION. Use jsonpath to specify the path to an element of the JSON output. This value is optional.

--quiet, -q
: Specify this option to reduce the output of the command. This value is optional. The default value is false.





 Example
"iam_apikey_description": "Auto generated apikey during resource-key operation for Instance - crn:v1:bluemix:public:messagehub:us-south:a/6ef045fb2b43266cfe8e6745dd2ec098:1244a768-a7e5-3c48-a6d2-1ab7c8b63d57::",
"iam_apikey_name": "auto-generated-apikey-dc334c91-3503-480f-a812-49bff8bedc60",
"iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Manager",
"iam_serviceid_crn": "crn:v1:bluemix:public:iam-identity::a/6ef045fd2b43266cfe8e6388dd2ec098::serviceid:ServiceId-e2e58c4f-9bc2-4bbe-cbc9-0d679e7a0d85",
"instance": "EventStreams-0s",
"instance_id": "1244a768-a7e5-3c48-a6d2-1ab7c8b63d57",
"kafka_admin_url": "https://5syh8qrs9rpj0zds.svc01.us-south.eventstreams.cloud.ibm.com",
"kafka_brokers_sasl":
"broker-1-5syh8qrs9rpj0zds.kafka.svc01.us-south.eventstreams.cloud.ibm.com:9093",
"broker-4-5syh8qrs9rpj0zds.kafka.svc01.us-south.eventstreams.cloud.ibm.com:9093",
created_at <br>Always included <br>date-time The date and time that the subnet was created 
 crn <br>Always included <br>string The CRN for this subnet <br>Possible values: 9 ≤ length ≤ 512 <br>Example:crn:v1:bluemix:public:is:us-south-1:a/123456::subnet:7ec86020-1c6e-4889-b3f0-a15f2e50f87e 
 <br><br> * href <br> Always included* <br> string<br><br><br> The URL for this subnet <br>Possible values: 10 ≤ length ≤ 8000, Value must match regular expression ^http(s)?://([^/?])([^?])(?([^]))?((.))?$ <br>Example:https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e 
 <br><br> * id <br> Always included <br> string<br><br><br> The unique identifier for this subnet <br>Possible values: 1 ≤ length ≤ 64, Value must match regular expression ^[-0-9a-z_]+$ <br>Example:7ec86020-1c6e-4889-b3f0-a15f2e50f87e 
 ip_version <br>Always included <br>string The IP version(s) supported by this subnet. <br>Possible values:[ipv4] 
 ipv4_cidr_block <br>Always included <br>string The IPv4 range of the subnet, expressed in CIDR format. <br>Possible values: 9 ≤ length ≤ 18, Value must match regular expression `^(([0-9] 
 name <br>Always included <br>string The name for this subnet.
"created_at": "2023-02-22T15:27:20.000Z",
"href": "https://eu-de.iaas.cloud.ibm.com/v1/backup_policies/r138-0521986d-963c-4c18-992d-d6a7a99d115f/jobs/r138-d25c915c-3166-436d-b289-68d222297510",
"id": "r138-d25c915c-3166-436d-b289-68d222297510",
"job_type": "creation",
"resource_type": "backup_policy_job",
"source": {
"crn": "crn:v1:bluemix:public:is:eu-de-2:a/a10d63fa66daffc9b9b5286ce1533080::volume:r010-df8ffd90-f2e5-470b-83d7-76e64995a1aa",
"href": "https://eu-de.iaas.cloud.ibm.com/v1/volumes/r010-df8ffd90-f2e5-470b-83d7-76e64995a1aa",
"id": "r010-df8ffd90-f2e5-470b-83d7-76e64995a1aa",
"name": "my-block-vol-test1"
},
"source_volume": {
"crn": null,
"href": null,
"id": null,
"name": null
},
"status": "succeeded",
"status_reasons": ],
"target_snapshot": null,
"target_snapshots":
{
iam_apikey_description: Auto-generated for key crn:v1:bluemix:public:messagehub:us-south:a/e43abfcbd191404cb17ef650e9681dd3:c0736069-3f4a-438a-b614-6846877d692d:resource-key:4c8edfdb-abcd-abcd-abcd-abcdabcdabcd
iam_apikey_name: myeventstream-key
iam_role_crn: crn:v1:bluemix:public:iam::::serviceRole:Manager
iam_serviceid_crn: crn:v1:bluemix:public:iam-identity::a/e43abfcbd191404cb17ef650e9681dd3::serviceid:ServiceId-3e99caa5-b174-4f04-9845-5c5d783b8bc7
instance_id: c0736069-3f4a-438a-b614-6846877d692d
kafka_admin_url: https://abcdabcdabcdabcd.svc07.us-south.eventstreams.cloud.ibm.com
"id": "acf9af98-a459-4ef1-9c64-6cd987187cb5",
"label_in_keystore": "AWS-KMS-KEY",
"type": "secret_key",
"keystore": {
"group": "Production",
"type": "aws_kms"
}
}
],
"href": "https://uko.us-south.hs-crypto.cloud.ibm.com:9549/api/v4/managed_keys/c2d8d0ee-c333-414f-8e64-af47320e5a46"
}
]
}







 hpcs uko managed-key-create 

Create a new key based on the supplied template. The template must exist in your instance before you can run this command.

ibmcloud hpcs uko managed-key-create --uko-vault UKO-VAULT --template-name TEMPLATE-NAME --vault VAULT --label LABEL [--tags TAGS] [--description DESCRIPTION]



* Command options

--uko-vault (string)
: Required. The UUID of the vault where the update is to take place. You can use the ibmcloud hpcs uko vaults command to retrieve the UUID.

--template-name (string)
: Required. The name of the key template to use when you create a key. The length must be between 1 and 30 characters. The value must match the regular expression /^[A-Za-z]+$/.

--vault ([VaultReferenceInCreationRequest](https://cloud.ibm.com/docs/hs-crypto?topic=hs-crypto-cli-plugin-hpcs-cli-pluginuko-vault-reference-in-creation-request-example-schema))
: Required. The ID of the vault where the managed key is to be created.

--label (string)
"id": "acf9af98-a459-4ef1-9c64-6cd987187cb5",
"label_in_keystore": "AWS-KMS-KEY",
"type": "secret_key",
"keystore": {
"group": "Production",
"type": "aws_kms"
}
}
],
"href": "https://uko.us-south.hs-crypto.cloud.ibm.com:9549/api/v4/managed_keys/c2d8d0ee-c333-414f-8e64-af47320e5a46"
}
]
}







 hpcs uko managed-key-create 

Create a new key based on the supplied template. The template must exist in your instance before you can run this command.

ibmcloud hpcs uko managed-key-create --uko-vault UKO-VAULT --template-name TEMPLATE-NAME --vault VAULT --label LABEL [--tags TAGS] [--description DESCRIPTION]



* Command options

--uko-vault (string)
: Required. The UUID of the vault where the update is to take place. You can use the ibmcloud hpcs uko vaults command to retrieve the UUID.

--template-name (string)
: Required. The name of the key template to use when you create a key. The length must be between 1 and 30 characters. The value must match the regular expression /^[A-Za-z]+$/.

--vault ([VaultReferenceInCreationRequest](https://cloud.ibm.com/docs/cli?topic=cli-hpcs-cli-pluginuko-vault-reference-in-creation-request-example-schema))
: Required. The ID of the vault where the managed key is to be created.

--label (string)
: Required. The label of the key.
"resource_id": "dff97f5c-bc5e-4455-b470-411c3edbe49c",
"credentials": {
"apikey": "XXXX-YYYY-ZZZZ"",
"endpoints": "https://cos-service-armada-s.us-south.containers.mybluemix.net/endpoints",
"iam_apikey_description": "Auto generated apikey during resource-key operation for Instance - crn:v1:bluemix:public:cloud-object-storage:global:a/4329073d16d2f3663f74bfa955259139:8d7af921-b136-4078-9666-081bd8470d94::",
"iam_apikey_name": "auto-generated-apikey-23693f48-aaa2-4079-b0c7-334846eff8d0",
"iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Writer",
"iam_serviceid_crn": "crn:v1:bluemix:public:iam-identity::a/4329073d16d2f3663f74bfa955259139::serviceid:ServiceId-64c29e4f-422d-468c-a11b-1a8f671b5c89",
"resource_instance_id": "crn:v1:bluemix:public:cloud-object-storage:global:a/4329073d16d2f3663f74bfa955259139:8d7af921-b136-4078-9666-081bd8470d94::"
},
"iam_compatible": true,
"migrated": false,
"created_at": "2023-07-11T22:31:50Z",
"crn": "crn": "crn:[...]",
"encryption": "provider_managed",
"href": "https://us-south.iaas.cloud.ibm.com/v1/shares/acd96d70-b8d3-4b56-ad7f-9c1035df93b2",
"id": "acd96d70-b8d3-4b56-ad7f-9c1035df93b2",
"initial_owner": {
"gid": 0,
"uid": 0
},
"iops": 3000,
"lifecycle_state": "pending",
"name": "myshare-1",
"profile": {
"href": "https://us-south.iaas.cloud.ibm.com/v1/share/profiles/tier-10iops",
"name": "tier-10iops",
"resource_type": "share_profile"
},
"replication_role": "none",
"replication_status": "none",
"replication_status_reasons": [],
"resource_group": {
"crn": "crn:v1:public:resource-controller::a/e2f80b84-bc75-4f53-8737-8193ef1d1a7b::resource-group:e96d1fa9-76f2-4c87-a737-dbab3a947b24",
"href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/e96d1fa9-76f2-4c87-a737-dbab3a947b24",
* ibmcloud is instance-create my-instance-name 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8 us-south-1 bx2-2x8 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8 --catalog-offering crn:v1:bluemix:public:globalcatalog-collection:global:a/efe5afc483594adaa8325e2b4d1290df:2497ae83-40cb-46ba-ac7f-5303514a2669:offering:54372a73-7a0a-4799-ac9c-8736620c67f1 Create instance from catalog offering.
* ibmcloud is instance-create my-instance-name 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8 us-south-1 bx2-2x8 72b27b5c-f4b0-48bb-b954-5becc7c1dcb8 --catalog-offering-version crn:v1:bluemix:public:globalcatalog-collection:global:a/efe5afc483594adaa8325e2b4d1290df:2497ae83-40cb-46ba-ac7f-5303514a2669:offering:54372a73-7a0a-4799-ac9c-8736620c67f1 Create instance from catalog offering version.
* ibmcloud is instance-create --interactive Create instance interactively.
regex /[Pp]rojects?w/ on D.text as name
from Document D;

create view Title as
extract regex /[A-z]+./
on between 1 and 20 tokens in D.text as match
from Document D;

create view MeetingNote as
extract
pattern <'Meeting Notes:'[with case exact]> (<P.name>)
return group 0 as match
and group 1 as projectname
with inline_match on Title.match
from Project P;
Show more

Example 3: Sequence pattern that returns non-empty results even when an input view is empty

The following statement generates results even when the input view LastName is empty. The second part of the pattern specification, <L.name>? contains an optional element. The semantics of the pattern specification is designed to output all spans that are composed of either a FirstName.name span or a FirstName.name span that is immediately followed by a LastName.name span. Therefore, on documents for which the view LastName is empty, the result of the statement consists of all spans that comprise a single FirstName.name span that is identified from that document.

create dictionary FirstNamesDict as
(
'Aaron', 'Matthew', 'Peter'
);
create dictionary LastNamesDict as
(
'Anthony', 'Lehman', 'Radcliff'
);

create view LastName as
extract dictionary 'LastNamesDict'
on D.text as last
from Document D
having MatchesRegex(/((p{L}p{M})+s+)?p{Lu}p{M}.{1,20}/, last);

create view FirstName as
extract dictionary 'FirstNamesDict'
on D.text as first
from Document D
having MatchesRegex(/p{Lu}p{M}.{1,20}/, first);

create view PersonName as
extract pattern <F.first> <L.last>? as fullName