.namespace()

Method returns the default namespace (xmlns) attribute as a string.

Description of the method

Description: .namespace() method returns the default namespace (xmlns) attribute as a string. As this attribute is given in the root element, context of the rule must be the root as well.
Available for: root element
Parameters: -
Return type: string

 Example

Context: Message
OCL: self.namespace() = 'http://www.XMLdation.com'
Description: The example rule checks if the default namespace is 'http://www.XMLdation.com'.

 

The XML snippet below would pass this check.

<?xml version="1.0" encoding="UTF-8"?>

<Message xmlns="http://www.XMLdation.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instancexsi:schemaLocation="http::xmldation.com extensions.xsd ">

  <Header>
    <Id>a</Id>
    <TimeStamp>2018-05-28T12:17:50</TimeStamp>
    <ControlSum>2</ControlSum>
    <NumberOfTransactions>1</NumberOfTransactions>
  </Header>
  <Transaction>
    <Id>TransactionId1</Id>
    <Amount>100</Amount>
    <Debtor>
      <Name>Debtor1</Name>
    </Debtor>
    <Creditor>
      <Name>Creditor1</Name>
    </Creditor>
  </Transaction>
</Message>

The other snippet below however would not pass this check.

<?xml version="1.0" encoding="UTF-8"?>

<Message xmlns="http://www.NOT-XMLdation.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <Header>
    <Id>a</Id>
    <TimeStamp>2018-05-28T12:17:50</TimeStamp>
    <ControlSum>2</ControlSum>
    <NumberOfTransactions>1</NumberOfTransactions>
  </Header>
  <Transaction>
    <Id>TransactionId1</Id>
    <Amount>100</Amount>
    <Debtor>
      <Name>Debtor1</Name>
    </Debtor>
    <Creditor>
      <Name>Creditor1</Name>
    </Creditor>
  </Transaction>
</Message>