Try this
create proc Employee_insert @filepath nvarchar(100)
as
begin
set @filepath='E:\Xmlview\Register.xml';
insert into Userdata(UserName,Password,Email,Gender,Location,DateOfBirth)
SELECT XmlQuery.employee.query('Name').value('.', 'VARCHAR(50)'),
dbo.REMOVE_SPECIAL(XmlQuery.employee.query('Password').value('.', 'VARCHAR(30)')),
dbo.REMOVE_SPECIAL(XmlQuery.employee.query('Email').value('.', 'VARCHAR(50)')),
XmlQuery.employee.query('Gender').value('.', 'VARCHAR(50)'),
XmlQuery.employee.query('Location').value('.', 'VARCHAR(50)'),
XmlQuery.employee.query('DateOfBirth').value('.', 'nvarchar(50)')
from (
SELECT CAST(XmlQuery AS XML)
FROM OPENROWSET(
BULK 'E:\Xmlview\Register.xml',
SINGLE_BLOB) AS T(XmlQuery)
) AS T(XmlQuery)
CROSS APPLY XmlQuery.nodes('employees/employee') AS XmlQuery(employee)
end