public function toXML(DOMElement $parent) : DOMElement
    {
        Assert::notEmpty($this->AffiliateMember);

        $e = $parent->ownerDocument->createElementNS(Constants::NS_MD, 'md:AffiliationDescriptor');
        $parent->appendChild($e);

        $e->setAttribute('affiliationOwnerID', $this->affiliationOwnerID);

        if ($this->ID !== null) {
            $e->setAttribute('ID', $this->ID);
        }

        if ($this->validUntil !== null) {
            $e->setAttribute('validUntil', gmdate('Y-m-d\TH:i:s\Z', $this->validUntil));
        }

        if ($this->cacheDuration !== null) {
            $e->setAttribute('cacheDuration', $this->cacheDuration);
        }

        Extensions::addList($e, $this->Extensions);

        Utils::addStrings($e, Constants::NS_MD, 'md:AffiliateMember', false, $this->AffiliateMember);

        foreach ($this->KeyDescriptor as $kd) {
            $kd->toXML($e);
        }

        $this->signElement($e, $e->firstChild);

        return $e;
    }
public function toXML(DOMElement $parent) : DOMElement
    {
        Assert::notEmpty($this->AffiliateMember);

        $e = $parent->ownerDocument->createElementNS(Constants::NS_MD, 'md:AffiliationDescriptor');
        $parent->appendChild($e);

        $e->setAttribute('affiliationOwnerID', $this->affiliationOwnerID);

        if ($this->ID !== null) {
            $e->setAttribute('ID', $this->ID);
        }

        if ($this->validUntil !== null) {
            $e->setAttribute('validUntil', gmdate('Y-m-d\TH:i:s\Z', $this->validUntil));
        }

        if ($this->cacheDuration !== null) {
            $e->setAttribute('cacheDuration', $this->cacheDuration);
        }

        Extensions::addList($e, $this->Extensions);

        Utils::addStrings($e, Constants::NS_MD, 'md:AffiliateMember', false, $this->AffiliateMember);

        foreach ($this->KeyDescriptor as $kd) {
            $kd->toXML($e);
        }

        $this->signElement($e, $e->firstChild);

        return $e;
    }
public function toXML ( DOMElement $ parent ) : DOMElement { Assert :: notEmpty ( $ this -> AffiliateMember ) ; $ e = $ parent -> ownerDocument -> createElementNS ( Constants :: NS_MD , 'md:AffiliationDescriptor' ) ; $ parent -> appendChild ( $ e ) ; $ e -> setAttribute ( 'affiliationOwnerID' , $ this -> affiliationOwnerID ) ; if ( $ this -> ID !== null ) { $ e -> setAttribute ( 'ID' , $ this -> ID ) ; } if ( $ this -> validUntil !== null ) { $ e -> setAttribute ( 'validUntil' , gmdate ( 'Y-m-d\TH:i:s\Z' , $ this -> validUntil ) ) ; } if ( $ this -> cacheDuration !== null ) { $ e -> setAttribute ( 'cacheDuration' , $ this -> cacheDuration ) ; } Extensions :: addList ( $ e , $ this -> Extensions ) ; Utils :: addStrings ( $ e , Constants :: NS_MD , 'md:AffiliateMember' , false , $ this -> AffiliateMember ) ; foreach ( $ this -> KeyDescriptor as $ kd ) { $ kd -> toXML ( $ e ) ; } $ this -> signElement ( $ e , $ e -> firstChild ) ; return $ e ; }
Add this AffiliationDescriptor to an EntityDescriptor.

@param \DOMElement $parent The EntityDescriptor we should append this endpoint to.
@return \DOMElement
Add this AffiliationDescriptor to an EntityDescriptor .